Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0
Wiki Markup
{scrollbar}

Table of contents

Table of Contents
Include Page
OPENMI:1 IntroductionOPENMI:
1 Introduction
Include Page
OPENMI:2 Planning the migrationOPENMI:
2 Planning the migration
Include Page
OPENMI:3 WrappingOPENMI:
3 Wrapping

4. Migration - step by step

The best strategy when migrating a model is to split the process into a number of steps; at the end of each step you can compile your code and run a small test.

The steps needed for migration are described in this chapter.

Include Page
OPENMI:4.1 Step 1 - Changing your engine coreOPENMI:
4.1 Step 1 - Changing your engine core
Include Page
OPENMI:4.2 Step 2 - Creating the .Net assembliesOPENMI:
4.2 Step 2 - Creating the .Net assemblies
Include Page
OPENMI:4.3 Step 3 - Accessing the functions in the engine coreOPENMI:
4.3 Step 3 - Accessing the functions in the engine core
Include Page
OPENMI:4.4 Step 4 - Implementing the MyEngineDotNetAccessOPENMI:
4.4 Step 4 - Implementing the MyEngineDotNetAccess
Include Page
OPENMI:4.5 Step 5 - Implementing the MyEngineWrapper classOPENMI:
4.5 Step 5 - Implementing the MyEngineWrapper class
Include Page
OPENMI:4.6 Step 6 - Implementing the MyModelLinkablComponentOPENMI:
4.6 Step 6 - Implementing the MyModelLinkablComponent
Include Page
OPENMI:4.7 Step 7 - Implementation of the remaining IEngine methodsOPENMI:
4.7 Step 7 - Implementation of the remaining IEngine methods

...

Fig. 13 Simple River wrapper classes

Include Page
OPENMI: 5.2 Implementation of the Initialize methodOPENMI:
5.2 Implementation of the Initialize method
Include Page
OPENMI: 5.3 Implementing the SetValues methodOPENMI:
5.3 Implementing the SetValues method
Include Page
OPENMI: 5.4 Implementing the GetValues methodOPENMI:
5.4 Implementing the GetValues method
Include Page
OPENMI: 5.5 Implementation of the remaining methodsOPENMI:
5.5 Implementation of the remaining methods

...

It is important to test the component to check that it is working correctly. Traditionally, the procedure has been to complete implementation and then run the engine to see if it produces the correct results. However, in recent years new methodologies have been developed for testing. The dominant testing method for object oriented programs is unit testing. Unit testing is done in parallel with the implementation. This means that you will be able to find errors earlier and thus save time on debugging your code later.

This chapter discusses the testing of migrated components.

Include Page
OPENMI: 6.1 Unit testingOPENMI:
6.1 Unit testing
Include Page
OPENMI: 7. Implementing IManageStateOPENMI:
7. Implementing IManageState
Include Page
OPENMI: 8. The OMI fileOPENMI:
8. The OMI file
Include Page
OPENMI: 9. The OpenMICompliancyInfo fileOPENMI:
9. The OpenMICompliancyInfo file