Chapter 2. Migration strategy 33
2.4.6 Code preparation
The amount of time you must allocate to coding practices is a significant factor to
consider when evaluating migration complexity. To migrate application code
more easily and more efficiently, we recommend that you refactor the code
before migration. If you apply the refactoring discipline properly, you can handle
code migration more easily because the code will be simple and clean.
Regardless of the development methodology you choose, refactoring improves
the overall code quality. Migration is good time to reexamine and refactor your
code.
To reduce the effort of migration work, remove the code that is not used. If you
have completed the refactoring process before migration, it becomes easier to
exclude the code that is not a part of the migration effort. The practice of
removing what you do not use can also be extended to the runtime environment.
Unused resources such as data sources should be removed as a matter of
practice.
Coding practices can have a direct impact on the complexity of migration. Well
designed and architected coding is generally easier to understand and modify.
Layered architectures are a huge win when change is required.
The new version of Branch Transformation Toolkit also supports more recent
versions of the relevant specifications. In anticipation of an upcoming migration,
you can update the existing code to conform to the most recent version. Branch
Transformation Toolkit 5.1 supports multiple versions of the related standards
such as J2EE and BPEL, but in anticipation of a migration, you may consider
updating your application to comply with the most recent versions of the
specifications that run on Branch Transformation Toolkit V5.1.
2.4.7 The migration plan
The migration plan is what should guide you during the entire migration process.
The various tasks at every stage should be captured and documented in the plan
and we recommend that all migration activities follow the plan.
However, the migration plans should also be flexible. As part of the migration
assessment, you should document the risks and unknowns that can impact your
plan. Assume that uncertain issues will occur during the migration process. For
example, a common mistake is factoring in some time for testing but not enough
time for fixing problems. Be sure to allocate enough time in the plan to fix the
problems encountered.
Scheduling is an important part of the planning process. It helps chain migration
tasks together. Remember that many tasks can be completed in parallel.
34 IBM Branch Transformation Toolkit 5.1 Migration and Usage Guidelines
Figure 2-2 shows the skeleton of a high-level migration schedule. Use this as a
guide to make your own schedule appropriate to the situation for your site.
Figure 2-2 Sample migration schedule
Documentation is an important part of the planning process. It helps make things
simple by separating the description of tasks from the scheduling of their
application. There are a number of popular ways in which to capture this
information. One approach is to break the migration problem into
reasonable-sized tasks and then compose a task flow, for example, consider
education as a single task. Estimate the effort required and identify the
prerequisite tasks and post conditions that should be met for each task.
A sample collection of project tasks is shown in Table 2-5. The tasks identified in
this sample are for our specific migration effort. Table 2-5 is only a sample task
list. Use it as a skeleton or a template for a your specific Branch Transformation
Toolkit project plan. Your task list will be different, depending on your project and
environment. Set the prerequisites for every task.
Table 2-5 Migration task list
Install
development
environment
Install
test
environment
Remediate
Educate
Prepare
code
Assess Migrate Test Deploy
Check point
Check point
Check point
Task ID
number
Task Prerequisite
task number
Comments
1 Assessment
2 Education 1
3 Install development
environment
2
4 Install deployment
environment
2
5 Code preparation 3

Get IBM Branch Transformation Toolkit 5.1 Migration and Usage Guidelines now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.