The ProS-Req project aims at providing support for the development of reliable Service-Oriented Software Systems (SOSS). Development of SOSS differs from that of traditional software. Traditional software is typically built up by gluing together existing (reusable) components and bespoke software into a single piece, whereas SOSS is typically developed as a set of loosely coupled software pieces (services) that may be reconfigured at run-time. These pieces are usually part of dynamic, open environments. Within this context, it is difficult to totally and globally control software development, and it is necessary to develop new approaches for SOSS development in order to guarantee success. On the one hand, software quality must meet customers’ needs and requirements. On the other hand, SOSS development must be feasible and efficient from the point of view of a development team.
In the ProS-Req project, the Requirements Engineering (RE) process is considered to be the essential component for the success of the new paradigm, thus it is necessary to boost it and to adapt it to the specific characteristics of SOSS development. This claim is justified by the following facts:
- The complexity of the activities of the RE process increases when developing SOSS. These systems are characterised by the existence of a high number of stakeholders, which usually have different, potentially conflicting and sometimes ephemeral requirements whose management is thus difficult.
- High-quality requirement models make application of Model-Driven Development (MDD) techniques possible. These techniques allow software development to be addressed generically by defining processes that rigorously go from the requirements to the final artefacts that compose the final software system.
- Precise requirement specifications facilitate systematic development of the necessary infrastructure for a comprehensive testing environment. This environment must support the characteristics of change and evolution of SOSS, and must explicitly address testing of Non-Functional Requirements (NFR).
In this scenario, any new approach for software development must properly define its main components. Process stages, initial and final models, transformations between models and the necessary support techniques must be precisely deter-mined in order to meet the needs of current software engineering. As a result, the main objective of the ProS-Req project is:
To define, design and implement a software development process based on modelling the functional and non-functional requirements of the services that a SOSS will provide, and on applying a series of transformations until a service-oriented architectural model is obtained; the process must also address the provision of an adequate testing infrastructure that can be used as a starting point for the subsequent software development stages to code generation.
Óscar Pastor López
TIN2010 – 18011
Ministerio de Economía y Competividad