The GENESIS project proposal stems from an increasing interest showed by Academics and IT large organizations towards the co-operation and co-ordination problems in software design and development activities, especially when team members are geographically distributed. The idea is to develop an integrated environment, which supports both co-operation and co-ordination aspects related to Distributed Software Engineering (DSE) and Co-operative Software Engineering (CSE). Workflow-like engines, implementing the software process model used in the enterprise, support the co-ordination aspects. The coordination among the federation of workflow engines will be realised using intelligent software agents. The co-operation involves both formal and informal aspects, which will be provided through the integration of CSCW (Computer Supported Co-operative Work) tools. The environment will be realized as Open Source software license model. A first version of the environment prototype will be realised to the Open Source community at the end of the first year of the project.
The general objective is to design and develop a non-invasive and distributed Open Source environment which can be easily introduced into an enterprise to model and control software engineering processes and manage co-operation among team members.
Others major objectives are:
to automate the control on software design and development process phases and activities using distributed workflow-like process executors; to provide concrete support for software development and software maintenance activities;
to study and evaluate the integration of software agents into workflow environments to coordinate a federation of distributed workflow engines;
to study the use of domain specific agents to tailor a general software project to particular realities; to overcome the skills shortage problem existing in the field, optimising human resources available in different places (see Ob.1 areas).
The project intends to develop an Open Source environment that supports the co-operation and communication between software engineers belonging to distributed development teams involved in modelling, controlling, and measuring software development and maintenance processes. Moreover, it will include an artefact management module to store and manage software artefacts produced by different teams.
The project realization includes the following macro-steps that will be organised using an iterative and incremental approach in order to release a preliminary version of the GENESIS environment to the Open Source Community at the end of first year
- Software platform requirement identification for an environment that supports co-operation among distributed software development team members and leads to quality-based software development and maintenance. In this phase, a questionnaire will be developed for submission to European software organizations and to the developer community of major Open Source projects to investigate the real needs of communication and co-ordination among distributed teams carrying out software development;
- Design of the integrated environment for software development and maintenance process modelling, management, and control;
- Implementation of a workflow-based distributed platform (from scratch or starting from an Open Source workflow engine) to execute instances of software engineering processes The workflow engines will be coordinated by an agent layer and will be integrate with the artefact management;
- Formalisation of a workflow description language and eventually a graphical tool to describe software engineering processes and related tasks;
- Implementation of an artefact management module allowing the storage and management of software documents and source-code files produced by different programmers in a co-operative environment;
- Integration of the different modules into the environment;
- Test-bed realisation consisting of the development of a project according to a particular software process in a specific domain reality. Will be evaluated the possibility to define a test-bed in the Open Source framework trying to use the GENESIS environment to coordinate and control the realisation a new component of the environment itself. The test-bed will involve the implementation of a set of software agents, called "domain specific agents";
- Pilot user validation of the environment.
The majors milestones are:
month M5: GENESIS environment requirements and high level architecture; First version of Exploitation and Dissemination plan;
month M9: GENESIS main modules/components preliminary prototype;
month M11: preliminary GENESIS integrated environment prototype released;
month M18: final GENESIS environment prototype;
month M23: pilot user validation.
The more important expected results are:
- The GENESIS environments requirements and high level architecture;
- The first version of the exploitation and dissemination plan including the Open Source business strategy;
- The release of the preliminary environment prototype to the open source community;
- The final version of the environment prototype;
- The test-bed set-up;
- The results of the pilot user validation.
Funding SchemeCSC - Cost-sharing contracts
DH1 3HP Durham