Identify entities and their relationships Start with UML class diagram. You should get the picture and recognize leaf classes that should be easily ported. Create classes with state (variables) Implement functionalities of porting code at once is impossible. However, state of classes should be precisely captured before the code starts