Enhanced Code Gene Rator for Model Driven Software Development

No Thumbnail Available



Journal Title

Journal ISSN

Volume Title


Addis Ababa University


Software development is a process by which a new software program is created or an existing software program is enhanced. Software development passes through clear phases of engineering called Software Development Life Cycle (SDLC). Currently, software development relies much on modeling. Models provide abstractions of a physical system that allow engineers to reason about the system by ignoring extraneous details while focusing on relevant ones. All forms of engineering rely on models to understand complex, real-world systems. In the past two decades, different software designing tools and code generators have been introduced for model driven software development. Some of these tools have code generation capability for multiple platforms by providing their own model editor. While other code generators use model of other UML editors as an input to generate code. Henoke [6] also design and implement a code generator for model-driven software development. This code generator has a UML modeling interface for three UML diagrams. The code generator is designed to generate structural code from class diagram to a single platform which is Visual Basic .NET. It also includes the reintegration of the modification of the generated code into the model of the system being developed. Melese [7] enhanced the work of [6] by adding package diagrams to the model construction module and modified the code generator algorithm to support a package diagram. This project work extends the works of [6, 7] by adding code generation to multiple platforms from a Single Platform Independent Model (PIM) and code generation for MVC design pattern. The model has five major components: Model Constructor, XMI Parser, Class Parser, Model Transformer, and Code Generator. A prototype of the model is built and evaluated with users. The usability test has shown that the performance of the prototype is very good. Keywords: Model Driven Architecture, Unified Modeling Language, Code generation, MVC



Model Driven Architecture, Unified Modeling Language, Code Generation, MVC