Umple C++ Code Generator

FieldValue
dc.contributor.authorSultan, Almaghthawi
dc.date.accessioned2013-09-17T21:16:24Z
dc.date.available2013-09-17T21:16:24Z
dc.date.created2013
dc.date.issued2013
dc.identifier.urihttp://hdl.handle.net/10393/26133
dc.identifier.urihttp://dx.doi.org/10.20381/ruor-3231
dc.description.abstractWe discuss the design and analysis of a code generator for C++, implemented in the Umple model-oriented programming technology. Umple adds UML constructs and patterns to various base programming languages such as Java and PhP. Umple code generators create code for those constructs, which can include UML associations and state machines, as well as patterns such as immutable and singleton. Base language methods are passed through unchanged along with the generated code. Creating a C++ code generator for Umple posed many challenges, all of which are discussed in this thesis: We had to focus on the appropriate C++ idioms and stylistic conventions to follow. We followed a test-driven development process to ensure that the resulting code was correct. To evaluate the work, we compared our C++ generator with those in other tools such as ArgoUML and IBM Rational Software Architect. We conclude that our C++ generator is superior in many ways to these widely used tools because it is more complete and generates better quality code.
dc.language.isoen
dc.publisherUniversité d'Ottawa / University of Ottawa
dc.subjectumepl
dc.subjectmodel-oriented software engineering
dc.subjectuml
dc.subjectmodel
dc.subjectmodeling
dc.subjectmetamodel
dc.subjectaop
dc.subjectaspect oriented
dc.subjectmdd
dc.subjecttdd
dc.subjecttest-driven
dc.subjecttesting
dc.subjectc++
dc.subjectcpp
dc.subjectobject-oriented
dc.titleUmple C++ Code Generator
dc.typeThesis
dc.faculty.departmentScience informatique et génie électrique / Electrical Engineering and Computer Science
dc.contributor.supervisorLethbridge, Timothy
dc.embargo.termsimmediate
dc.degree.nameMSc
dc.degree.levelmasters
dc.degree.disciplineGénie / Engineering
thesis.degree.nameMSc
thesis.degree.levelMasters
thesis.degree.disciplineGénie / Engineering
uottawa.departmentScience informatique et génie électrique / Electrical Engineering and Computer Science
CollectionThèses, 2011 - // Theses, 2011 -

Files