Glossary
This page provides definitions for the various terms used in the Great Migrations Methodology:
Term | Meaning |
BND File | Also known as a bundle file; a BND file is a single text file containing multiple individual files' contents and the command directives for extracting and writing the individual files to separate files on disk. Typically a BND file contains the the generated output of a translation operation: csproj file, AssemblyInfo file, resx files, and code files. Processing a BND file with the Deploy.exe utility executes the deployment commands in the BND file and "deploys" the generated contents to disk. Â See also Deployment. |
Build Log | A log produced by running a .NET compiler against the .NET code produced by the translator. |
Build Order | The order in which a set of inter-related VBPs must be built in order to satisfy their dependencies (from the bottom up). The build order is also the translation order for Migration Projects that reference inter-related VBPs. |
Code Bundle | See BND File |
DDF File | An Declaration Description File provides a detailed description of the entry point APIs in a Win32 DLL. Declarations in the DDF files will be used when the IgnoreWin32=on option is set; otherwise the declarations in code take precedence. A number of DDFs are distributed with gmStudio and they are located in the language folder (e.g. kernel.dcl.xml) |
Deploy Location | A folder that will receive the target project folders. |
Deploy Log | A log produced by running the deployment step of a migration task. See also Bundle File. |
COM Component | A COM type library that contains enums, classes, properties, methods, and events. May be an OCX, DLL, TLB, OLB, or OLE EXE. (aka COM External; aka COM dependency) A COM component may be replaced in several ways: with an Interoped wrapper that is generated by .NET framework tools (MSBuild,tlbimport), with a Prototype shell that is generated by gmStudio and then implemented by hand, or by a managed component that you buy, build, or borrow (from open source). |
gmBasic | The VB6/ASP/COM to .NET translator. It is a command line executable invoked by gmStudio to perform various types of translation and reporting operations. |
gmIL | The Great Migrations Intermediate Language is a binary reverse-polish representation. Source languages are compiled into gmIL. That representation is then analyzed and modified to be expressible in a target language. Then the gmIL is authored in that target language. |
GMM | The Great Migrations Methodology. An iterative migration methodology that produces a high-yield translation process which can be used to migrate and re-engineer legacy codes to a form that is correct and conformant to new computing platform requirements. |
gmNI | The Great Migrations Native Interface makes writing native methods in C, C++, or C# possible to handle situations when a migration cannot be written entirely in the languages supported by the standard capabilities of the translation tool. Native code methods, loaded into runtime libraries, can handle events triggered during the translation process. These native methods have direct access to all of the information being managed during the translation via an extensive set of service classes. |
gmPL | The Great Migrations Programming Language is a simple command language used to issue instructions to gmBasic and to enter declarations into the symbol table. It is not a procedural programming language, it is an xml-style scripting language. |
gmSL | The Great Migrations Scripting Language is a procedural language for use with customizing the facilities of gmBasic. It uses C-style syntax and is executed interpretively. It can also be embedded, using ASP-style syntax, into gmPL; thus, greatly enhancing the power and flexibility of that language. |
gmslAPI | The Great Migrations Scripting Language API is a .NET API used for implementing custom VB6/ASP/COM translation tools that integrate Great Migrations technologies with the .NET framework. |
gmStudio | An IDE that integrates various software transformation tools and facilitates the Tool-Assisted Rewrite methodology |
IDF Cache | The collection of IDFs that describe the external COM components and the internal libraries and controls referenced by the VB6 code in a Migration Project. |
IDF | An Interface Description File provides a detailed description of the elements in a COM component or a code file referenced by a VBP. If an IDF is modified to affect the interpretation or expression of a COM API in source or target code, it is referred to as a custom IDF. |
Include Order | The order in which #include files are loaded by an including ASP page. The include order also identifies the files in your Web Migration Project as being Pages, Includes, or Pulp. |
Interop Assembly | A .NET assembly that provides a Runtime-Callable Wrapper (RCW) or proxy so that a .NET application can use the types defined in a COM type library. Alternatively, it may be a COM type library that provides a COM-Callable Wrapper (CCW) or proxy so that a VB6/ASP applications can use the types defined in a .NET assembly. |
Library Location | A folder where the Interop assemblies for a Migration Project are located. This is usually [workspace]\interop. |
Migration Project | A collection of migration settings and tasks stored as an XML file with a gmproj extension. |
Migration Unit | The object of a migration task. A VBP, web page, or multi-unit translation script. |
MigrationSupport | A namespace that contains a number of classes which simplify a direct translation from VB6 to .NET. ProtoType Translations will automatically generate a stubbed-out version of MigrationSupport classes and methods according to the specifications defined in MIgrationSupport.dll.xml file. A binary implementation of this assembly is included with gmStudio to support our sample translations, including a data access API that emulates a significant portion of the ADODB API. The use of the MigrationSupport library is optional: gmStudio can be configured to produce translations that do not use it or to use your own runtime support functions. Â If you would like access to the source code of the MIgrationSupport library contact us. |
Migration Task | A collection of metadata that describes the status and nature of work to convert a Migration Unit to .NET. |
Migration Team | A group of skilled software engineers working to run the tools, analyze the results, identify issues, resolve issues, run tests, verify results, and deploy the final .NET code to production on the target platform. |
Migration Workspace | A directory containing the folders and files needed to prepare, translate, and verify a migration project. |
PageSlice | The set of files processed when an ASP page is compiled by gmStudio. This includes the page itself and all files #included directly or indirectly. |
ProtoType Assembly | A .NET assembly containing stubbed-out external COM classes used by your application code. Also known as a Stub Assembly. |
ProtoType File | A source file added to your .NET project that contains a stubbed external COM class. See Prototype Assembly. |
Re-bundle | To generate a new code bundle file containing the source files from the .NET deployment folder. The new bundle can be compared with the original translation to identify the specific manual changes that should be incorporated into the translation configuration and applied automatically in subsequent translation cycles. |
Report Script | An XML document that specifies the parameters for a report. |
ScriptRules | A facility for organizing gmPL/gmSL commands that will be used in the translation process conditionally. |
Semantic Model | A comprehensive collection of information about the source code and migration configuration used in a translation. |
Session Log | A running activity log of operations performed during a gmStudio Session. See [workspace]\log\session.tab. |
Snapshot | To save a copy of the last translation code bundle file. The saved bundle can be compared with subsequent translations to identify the effects of configuration or source code changes. |
Source Project | A visual basic project and related source files in the source codebase specified by a Migration Unit. |
Source Codebase | A collection of Source projects and their dependencies referenced by a Migration Project. |
Stub | See Prototype. |
SubSystem | A named collection of upgrade rules (gmPL) and logic (gmSL) that can be activated with the <Select SubSystem> statement. Up to 5 SubSystems can be loaded in addition to a default NET language dialect (CSH or VBN)  At present the only custom subsystem is for Windows Presentation Foundation (wpf). Defining and using subsystems is an advanced customization technique; contact Great Migrations to learn more. |
Target Project | A .NET project and related source files in the target codebase. May be a C# or VB.NET project. |
Target Project Folder | A folder where the output files for a given migration unit are located. The name of this folder is typically derived from the name of the migration settings, the migration task tag, and the target language. |
Target Codebase | A collection of Target projects and their dependencies. |
Translation Log | A text file produced by running a translation. |
Translation Script | An XML document that contains the migration commands to direct the translation of a Migration Unit. Typically Translation Scripts contain gmPL commands but they can also be implemented in gmSL. |
User Command Script | A console command script (CMD) file associated with a migration task that specifies user-defined operations to be done after translation, deployment, and build. |
VBI File | A binary file containing the semantic model produced by gmBasic. |
Virtual Root | A folder path used to resolve #includes for ASP translations. |