Download Umple C++ Code Generator
Transcript
Table of Contents Abstract 2 Acknowledgements ............................................................................................. 3 Table of Contents ................................................................................................. 4 Chapter 1 Introduction .......................................................................................... 9 1.1 Research Questions ................................................................................. 10 1.1.1 What are the challenges in generating C++ code in the Umple modeloriented technology? ............................................................................. 10 1.1.2 How does our generated C++ code compare to generated C++ code from other tools? ................................................................................... 12 1.2 Thesis Outline ......................................................................................... 12 Chapter 2 Background and Related Work .......................................................... 14 2.1 Umple ................................................................................................... 14 2.1.1 Umple Architecture ............................................................................ 16 2.1.2 Umple Features: .................................................................................. 18 2.1.3 Umple Tools ....................................................................................... 22 2.1.4 Generic Files compared to non-generic files within Umple: .............. 23 The ........................................................................................................... 25 2.1.5 Umple Testing Framework ................................................................. 25 2.2 C++....................................................................................................... 27 2.3 Model-Driven Software Development ................................................. 30 2.4 Test-Driven Development (TDD) ........................................................ 33 2.5 IBM RSA 8.5 (Rational Software Architect) ....................................... 35 2.6 ArgoUML ............................................................................................. 37 2.7 Papyrus ................................................................................................. 39 Chapter 3 C++ Code generator for Umple...................................................... 40 3.1 Attributes: ............................................................................................. 40 3.1.1 Design Patterns ................................................................................... 42 3.2 Methods: ............................................................................................... 47 3.3 Associations ......................................................................................... 48 3.4 Generalizations ..................................................................................... 53 3.5 State Machines: .................................................................................... 59 3.6 Style of Generated C++ Code: ............................................................. 65 Test-Driven Development of Umple C++ Generator .............................. 73 4