Software development has reached a new step in the evolution of software developing tools and languages. From the beginning of software development there has been major changes in how software is developed. From the basic of assembler programming, where every line of code would result in just a few CPU cycles, to programming with models, where just a few models could represent a whole application. The demand for new and more complex applications have been ever increasing, and the need to evolve new and better programming languages and tools has been needed to cover this demand. Many think that this “new step” has come with the so called Model-driven Development.
Model-driven Development and Domain Specific Languages both use models as their main approach for software development. How this can be done will be described in this thesis.
Software Factories is an old idea saying that software could be produced like any other product. How this should be done, and if it can be done will be discussed in this thesis