The emerging Model-Driven Engineering (MDE) paradigm advocates the usage of models
as the most important artifacts in the software development process, while artifacts such
as documentation and source code can quickly be produced from those models by using
automated transformations.
On the other hand, we are witnessing the rising popularity of a particular kind of web
application, Content Management Systems (CMS), whose importance for organizational
websites and intranets is already acknowledged. Although CMS systems are typically
unable to address all the business requirements of an organization by themselves, they can
however be used as platforms for more complex web applications that can address those
requirements. In fact, some CMS systems are evolving to become the next generation of
web application platforms.
This dissertation proposes the creation of an MDE approach for the development of
web applications based on CMS systems. This approach is based on the creation of two
CMS-oriented languages (which are located at different levels of abstraction, and are used
to both quickly model a web application and provide a common ground for the creation
of additional CMS-oriented languages), and a mechanism for the processing of models
specified using those languages.