Hardware: the Migration Lab
Upgrading large complex systems is a CPU and memory intensive process. You will want to provision a workstation accordingly. A "big" developer workstation is recommended.
Content
You will typically work with a copy of the legacy code that is stored and organized properly on the Migration Lab workstation. You will also need storage for your gmStudio workspace where all generated content will be stored and organized. You may also want to have access to the content needed for testing the legacy and generated systems side-by-side.
...
gmStudio Tools
A number of executable programs are installed by the gmStudio installer. The most important ones are the following:
- gmStudio.exe: a desktop/console application that facilitates performing the tool-assisted rewrite tasks and working with migration artifacts.
- gmBasic.exe: a configurable VB6/ASP/COM compiler that generates .NET code and other useful informationresults; the translation engine of gmStudio.
This EXE can only be started by gmStudio. Deploy.exe: a "shell interpreter" utility that deploys translation results in target folders and files.
Migration DLLs: DLLs that modify, extend, and enhance the behavior of gmBasic to produce heavily reengineered code or specialized code analysis reports.
External Tools
External Tools
gmStudio will integrate with a number of other programs to help you complete your upgrade effort. These external tools should be properly installed on the Migration Lab machine.
Tip |
---|
You can use the Configuration\UserDefaults dialog to set most of your settings. In some cases you may need to modify the application configuration file, gmStudio.cfg, so that gmStudio can find and run the external tools in your environment. |
- VB6.exe: a magical language processor that converts VB6/COM code into business applications. Note: VB6 is optional; it is used for validating the VB6 code on the upgrade workstation.
- MSBuild.exe: a build management system for .csproj or .vbproj projects (included with the .NET SDK)
- Visual Studio: the .NET development IDE. gmStudio can integrate with several different versions any version of Visual Studio after VS2010.
Programmer's Text Editor: your favorite text editor. We typically use Notepad++.
- A Folder/File Comparison Tool: your favorite file/folder comparison tool. We use Scooter Software's Beyond Compare.
- Windows Shellexplorer: we use gmStudio uses the shell to open various files (*.tab, *.log, *.vbp, *.csproj, *.vbproj, *.idl)
- Windows Console: gmStudio runs translations, deployments, and builds in a command line process.
- User Command Scripts: for injecting command line processes may integrate custom steps into the migration process (e.g., cmd, robocopy, FxCop, Nant, NUnit). If you associate a console script template with a migration unit in your Migration Projectupgrade task, gmStudio will open run it, set processing parameters, and run it at key points during processing. This can be used for custom processing tasks (post translation, post deployment, or post build). For example, one use of this feature might be to install the translation in a test environment and run a series of automated tests after each build. The UserCommand The User Command script template is discussed in the Reference section.
Tip You can use the Configuration\UserDefaults dialog to set most of your settings. In some cases you may need to modify the application configuration file, gmStudio.cfg, so that gmStudio can find and run the external tools in your environmentthis article.title External Tools - Reporting tools: the tab delimited reports generated by gmStudio are typically viewed through viewed by opening them with the associated application (typically a spreadsheet application like MS Excel. In many cases the ).
- SQL Database: gmStudio's reports can be quite large, including over a million records and they are loaded for very large systems. In those situations loading the records into a relational database such as SQL server is a great help.
Contact Great Migrations if you want assistance loading your reports into a relational database in interpreting their data.