Saturday, April 26, 2008

RiDE: The RiSE Process for Domain Engineering

Today, we will publish in this blog the first Ph.D. thesis defended in our group. It was my thesis.

Here is the abstract of the work: Software reuse the process of creating software systems from existing software rather than building them from scratch - is a key aspect for improving quality and productivity in the software development. Quality can be improved by reusing all forms of proven experience, including products and processes, as well as quality and productivity models. Productivity can increase by using existing experience, rather than creating everything from scratch. However, this process is more effective when systematically planned and managed in the context of a specific domain, where application families share some functionality.

In this scenario, Domain Engineering (DE) - the activity of collecting, organizing, and storing past experience in building systems or parts of systems from a particular domain in the form of reusable assets has been seen as a facilitator to obtain the desired benefits. Nevertheless, the existing domain engineering processes present crucial problems, such as: they do not cover the three steps of domain engineering, for instance, domain analysis, domain design, and domain implementation; besides, they do not define activities, sub-activities, roles, inputs, outputs of each step in a systematic way.

This work defines a systematic process to perform domain engineering based on the state-of-the-art of the area, which includes the steps of domain analysis, domain design, and domain implementation. This definition was based on extensive surveys on the software reuse and reuse processes areas, covering academic and industrial studies, papers and reports. This thesis first presents the results of these surveys, and then presents the proposed process, discussing it in terms of its activities, sub-activities, inputs, outputs, principles, guidelines and roles. Finally, it discusses the findings of an experimental study in order to analyze the process applicability in a domain engineering project.

The full text you can get here.

No comments: