System and software development has become an increasingly complex science. With so many emerging devices, processors, systems specification languages, software implementation languages, and tools for all of these, there needs to be a common denominator in the development process that brings focus back on the application. Model-Driven Development (MDD) based on the UML has emerged as the preferred approach by a growing number of systems engineers and software developers for addressing this growing complexity. The UML has proven to be the standard visual representation language capable of providing both systems and software teams with a coherent set of interchangeable artefacts that fully describe an application with rich enough specification to be able to design and implement it in Ada. This paper examines the pros and cons of a Model Based Approach, the problems that might be encountered and some possible solutions. Categories and Subject Descriptors D.3.3 [Programming Languages]: Ge...