Date Added: May 2010
The constant evolution of software systems has led the software engineering to continually develop new methods and concepts to overcome their development and maintenance. Two main streams have emerged in recent years and become important in current industrial processes: Model Driven Engineering (MDE) and agile methods. MDE promotes the use of models as higher-level artifacts, the separation of concerns and generative approaches. On the other hand, Agility focuses on best practices for programming of software systems and their integration within a development process. Nevertheless, these two trends have evolved independently and must now be unified to make the best of both.