Jornada de Seguimiento de Proyectos en Tecnologías del Software

advertisement

Jornadas de Seguimiento de Proyectos, 2007

Programa Nacional de Tecnologías Informáticas

GPS: Plataforma de Gestión de Procesos

Software: Modelado, Reutilización y

Medición

TIN2004-07083

Paloma Martínez

*

Antonio Amescua

**

Departamento de Informática,

Universidad Carlos III de Madrid

Departamento de Informática,

Universidad Carlos III de Madrid

Abstract

The main project purpose is the design and development of a set of software tools to support

Software Engineering Best Practices, defined by international standardization organizations such as ISO, SEI and PMI. These tools will allow the definition of software processes and will assist in the software project management based on Best Practices Models. In order to get the project effectively, it is necessary to develop formal specifications language to represent processes and also an advanced system to store, classify and retrieve assets and artifacts, as work products, project planning, requirement documents, metrics, risks, etc. This document describes the project status after near two years of work as well as the main results obtained till now.

Keywords: software processes, metrics, reuse, software process metamodels, repositories.

1 Project Goals and resources

Different authors argue that a high percentage of failures in software development are not due to bad capabilities of technicians but to deficiencies in used methods. Thereby, to enhance the productivity and quality of software intensive organizations is essential to introduce seamlessly efficient management and engineering practices. As these practices are institutionalized, the organizations will be able to achieve some important incomes.

We have found that the most effective way to introduce improvements in an organization consists of implementing them as efficient practices applied to the organization’s projects. One of the difficulties to implement this way of software process improvement is due to the need of a knowledge management framework that permits the definition of effective practices in terms of project and product patterns, their instantiation in organization’s projects and the gathering of data to determine the effective practices success and the identification of new ones.

The main objective of GPS project consists of the definition of a knowledge management environment to introduce process improvements into software intensive organizations by means of

* Email: pmf@inf.uc3m.es

**

Email: amescua@inf.uc3m.es

TIN2004-07083 efficient practices applied to organization’s projects. Specific objectives defined in the project proposal are:

1.

To work in the definition of a process modeling language that allows the representation at different abstraction levels of processes and methods adopted in a company in order to achieve good quality products.

2.

From a process re-engineering point of view, a set of tools that allow to index, query, retrieval and reuse of processes considering their metadata and content will be provided.

3.

From the Process Improvement point of view, a software tool to define and evaluate software processes will be developed.

4.

From the point of view of Software Process Measurement, several algorithms defined in conjunction with the SEI will be developed.

5.

From the point of view of repositories management, a software tool will be implemented in order to provide indexation, query and retrieval of multiformat documents using associated metadata and document content.

6.

To work in interface design in order to obtain graphical based interfaces.

1.1 Project Resources

To achieve the goals stated above the project was assigned 16 EDP (14,5 from Universidad Carlos

III de Madrid and 1,5 from Universidad Politécnica de Madrid). There is also a person with a FPI grant working in the project from September 2006.

Figure 1: GPS project planning

1.2 Project Planning

Figure 1 shows the current GPS project planning that includes some changes with respect to the proposed one as it is explained in Section 2.

2 Level of achievement

TIN2004-07083

In the project proposal the Platform Definition work package had as main objective to establish the functional and technical requirements of the GPS platform. Four tasks have been carried out: Initial

Analysis of processes requirements in charge of identify the current research and industry about tools for

Software Process Improvement, especially the CAKE (Computer Aided Knowledge Engineering) platform developed by several members of the project; Requirement Analysis of GPS Platform devoted to identify the ideal requirements; Definition of the Initial Architecture to propose components, functionality and interfaces of the platform and Requirements Catalog to establish functional and non functional requirements order by priority in different versions.

The result is a complete description of the ideal GPS platform that achieved the project objectives as well as it constituted a powerful and original tool for the users. In order to schedule the next activities of the project, that is, the design and development of the platform we faced to the following problems: the design of GPS platform would be strongly linked to the implementation environment, a great development effort that requires a specialized and exclusively dedicated team for the development task and the budget required to contract this team. After analyzing these problems and considering the characteristics of our project team we decide to rearrange the platform solution to a set of prototypes devoted to show the viability of solutions addressed in this project.

In this way, the new objectives are: to work on common definitions of the concepts to be used in the project (pattern, project pattern, product pattern, etc.); the development of a unified repository of processes; decomposition of project problems and challenges on the research groups; more capability of working in order to produce more research results. To facilitate the work in the project a web site ( http://sem.sel.inf.uc3m.es:8400/default.aspx

) was developed.

Four research lines grouped in two categories were defined: two reuse oriented lines (Line 1:

Process Adaptation with Reuse and Line 2: Process Definition for Reuse) and two process

Management oriented lines (Line 3: Development of Process Asset Libraries and Line 4: Process

Improvement Measurement)

Research on Process adaptation with reuse defines and specifies the Reusable Project Pattern (RPP) concept. The mechanisms for cataloguing, indexing and searching for reusable components of

RPP, are defined and implemented in a tool called PM-CAKE. Specific objectives are to define process patterns concept as a way to improve the software development process and project reuse, to determine a metamodel that specifies project patterns, to define in detail procedures to classify, index, search and reuse project patterns, to develop a tool able to apply project patterns issues to management software projects.

Research line 2, Process Definition for Reuse, focuses on the development of software projects, reusing experts’ knowledge related mainly to project management processes. This knowledge will be encapsulated in the concepts “Product pattern” that will be defined as part of this research line results. The main goal is to provide software development enterprises with mechanisms to improve the deployment and the efficiency of use of software processes and software engineering best practices. Using product patterns as part of projects development, enterprises will improve their productivity as well as their capability to reuse knowledge. This research line is related to goals 1, 2 and 3 of the original proposal.

The third research work, development of Process Asset Libraries., is focused mainly on objectives 3, 4 and 5 of the proposal, but their results are oriented to firms that need to institutionalize their project and requirement management processes with a modern approach in order to implement their process improvement. A tool for support the process definition, management and improvement is given. The concept of P.A.L. (Process Assets Library) is defined and implemented. and a fully set of components is defined to be implemented in an organization. The main goal of

TIN2004-07083 this research work is based on the definition and validation of a model for the requirement process area and project management (estimation, planning and monitoring) process area, by using a process asset repository.

The research line 4, named as Process Improvement Measurement, is mainly focused to the fourth objective of the proposal. This research line intends to define a framework to measure the quality, effectiveness and efficiency of the software processes and the projects launched to improve them.

As part of this goal, an specific technique supported by a software tool, for software process improvement measurement is to be defined. This technique will be based on the measurement of the day-to-day activities performed by a software development organization.

2.4 Process Adaptation with Reuse

The final product will be a software tool based on CAKE technology; helping the user in reuse and development process. At the moment this tool is called SdpCAKE (Software development process, computer aided knowledge engineering). SdpCAKE will be a tool that offers solutions for helping the modelling, reusing and software development processes aiding Software Development Small

Settings (SDSS). SdpCAKE offers software development patterns which the user can modify and search for finding the most suitable for a new project. The achieved objectives are:: a Reusable

Project Metamodel developed in SPEM and a first version of the SdpCAKE tool. Remaining results are to develop new versions of the SdpCAKE tool for defining, reusing, searching and tracking project patterns and to prepare a set of RPPs for using with SdpCAKE.

2.1 Process Definition for reuse

Up to now results obtained are: management processes analysis from the point of view of software engineering discipline; study of the relationship among disciplines like process improvement, knowledge management and integrated development environments (IDEs); study of the pattern concept in the field of software engineering and the definition of the Product Pattern concept as the element to encapsulate the experts knowledge in process development.

The reminder of year 2007 will be dedicated to the implementation of the mechanisms to store and recovery product patterns. In order to achieve this goal different kind of IDEs will be analysed with the aim to select the one that can work appropriately with defined product patterns. The mechanisms to manage the storage and recovery of patterns will be defined and implemented. The extensions to the selected IDE will be implemented and finally the results obtained during the use of product patterns in real projects will be disseminated.

2.3 Development of Process Asset Libraries

The main goal of this research work is the development of a metamodel to evaluate, implement and upgrade the requirement process and project management process (Project Estimation,

Planning and Monitoring) by using a process assets repository as support media. The accomplishment obtained to date is: a process definition of requirement, estimation, planning and monitoring processes by using as a main reference the Capability Maturity Model Integration

(CMMI) process model; a prototype of defined processes and a definition of assets library.

The remaining work will be devoted to develop the requirement management prototype, to define a shared area of process assets library, to define a specific area for project management process

(estimation, planning and monitoring) and, finally, to define a process dashboard using a measurement repository.

TIN2004-07083

2.2 Process Improvement Measurement

The results obtained are: a consolidated version of the process improvement measurement and strategic management; a procedure and a questionnaires to determine the state of the practices in

Spanish software companies related to process improvement measurement and strategic management; a technique, named “Sandwich Model” to measure the effectiveness, efficiency and quality of software processes and their improvement has been defined; and, finally, the first version of the software tool to support “Sandwich Model” has been developed. This software tool is based on SOA. Remaining results are to prepare two pre-defined packages to apply the “Sandwich

Model” and second version of the software tool supporting “Sandwich Model”.

3 GPS mid-term results

This section summarizes the main results of the GPS project.

3.1 Personnel in training

Five PhD students are preparing their theses in issues related to the project, section 3.2 describes these works. Also some undergraduate students are working in their master theses:

 F. Javier González Ortega: SPEM metamodel

 Mª José Jiménez Calvo-Manzano: Diseño de un sistema de gestión de proyectos software en equipo.

 Pedro de las Heras García : Análisis de Mejora de Equipos usando TSP.

 María Illera Bermejo: Análisis del estado de la investigación en mejora de proceso software.

 Luis Miguel Pozo: Análisis sobre herramientas software que permitan elegir proyectos o metodologías en función de las características de los proyectos a desarrollar.

 Carlos Benito Rodríguez: Creación de patrones de producto para la gestión de proyectos mediante metodologías ágiles

 Mª Ángeles González Velázquez Creación de patrones de producto para la gestión de proyectos siguiendo la metodología Craig Largman.

 Alberto Collantes Desarrollo de un repositorio en la plataforma SQL-Server 2005 que modele la información de los patrones de producto

 Luis Miguel Pozo: Desarrollo de herramienta software que permita elegir metodologías de procesos.

3.2 Publications

Table 2 summarizes the main publications derived from this project up to now.

Journals Book Chapters Conferences Thesis

2005

2006

2007

[5,13,14]

[9,12,23]

[24]

[20,21]

[17] 1

[2,3,4,6,8,10,11,18,19] 5

[1,7,15,16,22,25]

Table 2: GPS Mid-term results

The members of the group are also supervising six theses (one is finished and five under development):

TIN2004-07083

 Harith Al-Jumaily: Aplicación de Técnicas Activas par el Control de Restricciones en el desarrollo de Bases de Datos (september 2006). Supervisors: Paloma Martínez and Dolores

Cuadra

 Fuensanta Medina: Aproximación basada en patrones de producto para facilitar la implantación de la mejora de procesos utilizando como soporte sistemas colaborativos.

Supervisor: Maribel Sanchez Segura

 Diego Martín: Reutilización de patrones de SPD. Supervisor: Juan Llorens.

 Hugo Mitre: Medición para la gestión estratégica y operativa de la mejora de procesos en organizaciones intensivas en software. Supervisor: Antonio Amescua

 Ivan Antonio García Pacheco: Metamodelo para la definición, implantación y mejora de los procesos de gestión de proyectos. Supervisors: José A. Calvo-Manzano and Tomás San Feliu.

 Edgar Ariel Serrano Rico: Metamodelo para la definición, implantación y mejora de los procesos de gestión de requisitos. Supervisors: Gonzalo Cuevas y José A. Calvo-Manzano.

3.3 Technology Transfer

The technology transfer activities performed in the scope of GPS project has been performed by means of the collaboration with several companies.

PROGRESION SMP (http://www.progresion.net) is a spin-off company owned by Carlos III

University researchers that provides consulting services to software intensive organizations to improve their development and service provision processes. PROGRESION is providing a set of data to be used in the analysis of the practical viability of the product and project patterns concepts. This collaboration has produces several research papers, being [13] the most valuable contribution.

The Reuse Company (http://www.reusecompany.com) is a spin-off company owned by researchers coming from several universities, including Carlos III University. The collaboration activities are based in the Project Patterns Management Tool that is integrated in the Knowledge

Engineering Framework created by The Reuse Company. This software tool is providing the capabilities mentioned in Section 2.4.

3.4 Cooperation with other research groups

Some GPS researchers are participating actively in other research groups, disseminating the GPS research results. The conclusions and contributions from these other research groups have been used to reorganize and improve the first versions of project’s results.

 Latin-American Cathedra on Software Process Improvement (MPSEI) which is composed of researchers from several Spanish universities and companies. The collaboration activities between GPS and MPSEI researchers have been centred in the interchange of research results related to product, projects and process patterns concepts and the fundamentals of Process

Asset Libraries (PAL), [3].

 RePRIS – Spanish Software Testing Network - The collaboration activities between GPS and

MPSEI researchers are related to the publication of the GPS research results related to verification, validation and testing processes using the concept of product patterns, [12]

TIN2004-07083

Finally, several GPS researchers have been collaborated with researchers from Software

Engineering Institute (SEI) at Carnegie Mellon University, Pittsburgh (EEUU), with similar research lines to the project objectives, concretely, with those related to software processes definition.

4 References

[1] Al-Jumaily Harith, Cuadra Dolores, Martínez Paloma. MDD Approach for Maintaining

Integrity Constraints in Databases. CAISE 2007, 19th Conference on Advanced

Information Systems Engineering (submitted).

[2] Al-Jumaily Harith, De Pablo César, Cuadra Dolores, Martinez Paloma, Using UML's

Sequence Diagrams as Termination Analyzer for Triggers-Based Execution, BNCOD

2006, 23rd British National Conference on Databases, July 2006, Northern Ireland.

[3] Amescua Antonio, Cuevas Gonzalo, García Javier, Llorens Juan, Martinez Paloma, and

Martín Diego. A Pattern-Based Approach to Deploy Process Improvements in Small

Settings. Proceedings of the First International Research Workshop for Process

Improvement in Small Settings, 2005, January 2006.

[4] Amescua Antonio, García Javier, Sánchez-Segura Maria-Isabel, Medina Fuensanta,

Software process improvement for practitioners based on knowledge management tools.

5th WSEAS International Conference on Software Engineering, Parallel And Distributed

Systems, February 15, 2006 Alcala de Henares

[5] Amescua Antonio, García Javier, Sánchez-Segura Maria-Isabel, Medina Fuensanta.

Approaching Software Process Improvement to Organizations. WSEAS Transactions on computers, Issue 3, Volume 5, March 2006, pp 507-514.

[6] Amescua Antonio, García Javier, Sánchez-Segura Maria-Isabel, Medina-Domínguez

Fuensanta. A Pattern-based solution to bridge the gap between theory and practice in using process models. PROSIM 2006, Software Process Simulation and Modelling

Conference, 20-21 May 2006, Shanghai, China.

[7] Bermón Leonardo, Amescua Antonio, García Guzmán Javier and Martínez Paloma.

Process Asset Library in Software Process Support Technology: A Review of the literature. 2007 IRMA International Conference. Mayo 2007, Vancouver, Canadá.

[8] Camps Rafael y Cuadra Dolores. Transforming Ternary Associations to Database

Schemas, 9º Workshop Iberoamericano de Ingeniería de Requisitos y Ambientes de

Software (IDEAS) 2006, La Plata, Buenos Aires, Argentina, 24 al 28 de abril de 2006

[9] Cuadra Dolores, Gascueña Concepción M., Martínez Paloma. A multidimensional approach to the representation of the spatio-temporal multi-granularity. Data and

Knowledge Engineering Journal (conditional acceptance).

[10] De Pablo-Sánchez César, González-Ledesma Ana, Moreno Antonio, Martínez-Fernández

José Luis, Martínez Paloma. MIRACLE at the Spanish CLEF@QA 2006 Track, Working

Notes for the CLEF 2006 Workshop, 20-22 September, Alicante, Spain.

[11] De Pablo-Sánchez César, Martínez-Fernández José Luis and Martínez Paloma. Named

Entity Processing for Cross-lingual and Multilingual IR Applications, Workshop on New

Directions in Multilingual Information Access, 29th International Conference on

Research and Development in Information Retrieval, 2006, Seattle, USA.

[12] García Guzmán Javier, Amescua Seco Antonio, Velasco de Diego Manuel. TOP 10 de factores que obstaculizan la mejora de los procesos de verificación y validación en

TIN2004-07083 organizaciones intensivas en software. Revista española de innovación, calidad e ingeniería del software (REICIS). To appear in 2007.

[13] García Guzmán Javier, López-Cortijo García Román, Amescua Seco Antonio, Cuevas

Agustín Gonzalo. CASE STUDY: a practical approach for SPI in large Spanish companies. Process: Improvement and Practice, Volume 11, Issue 3. May/June 2006.

[14] García-Serrano Ana M., Martínez-Fernández José L., Martinez Paloma, Experiences in evaluating multilingual and text-image information retrieval, International Journal of

Intelligent Systems, Volume 21, Issue 7, pages 655-677, July 2006.

[15] Gascueña Concepción M., Cuadra Dolores, Martínez Paloma. A formal proposal for incorporating spatio-temporal multigranularity in a conceptual multidimensional model.

PODS 2007, Symposium on Principles of Databases Systems (submitted).

[16] Martín Diego, García Javier, Amescua Antonio, Llorens Juan. Reusable Project Patterns to enhance SPI. The Software Engineering Process Group Conference (SPEG) 2007

(submitted).

[17] Martínez Paloma, Amescua Antonio, García Javier, Cuadra Dolores, Llorens Juan,

Fuentes J.M., Martín Diego, Cuevas Gonzalo, Calvo-Manzano José Antonio, San Feliu

Tomás, Requirements for a knowledge management framework to be used in software intensive organizations. 2005 IEEE International Conference on Information Reuse and

Integration, Las Vegas, Nevada, USA, 15 al 17 de Agosto de 2005.

[18] Martínez-Fernández José Luis, Villena Julio, García-Serrano Ana, Martínez Paloma.

MIRACLE Team Report for ImageCLEF IR in CLEF 2006. Working Notes for the

CLEF 2006 Workshop, 20-22 September, Alicante, Spain

[19] Medina Fuensanta, Amescua Antonio, Sánchez-Segura Maria-Isabel, García Javier. An

Experience Providing University Students with Skills to Work with Collaborative Tools.

IEEE International Joint Conferences on Computer, Information, and Systems Sciences, and Engineering. 4-14 Diciembre 2006. Bridgeport, USA.

[20] Medina Fuensanta, Sánchez-Segura Maria Isabel, Amescua Antonio, García Javier.

Teaching Collaborative Web Portals Technology at University. Encyclopedia of Portal

Technologies and applications. Febrero 2007 Idea Group Publishers.

[21] Medina Fuensanta, Sánchez-Segura Maria-Isabel, Amescua Antonio, García Javier.

Patterns in the field of software engineering. Encyclopedia of Information Science and

Technology, Febrero 2008, Idea Group Publishers

[22] Medina-Domínguez Fuensanta, Sánchez-Segura Maria-Isabel, Amescua Antonio, García

Javier. Extending Microsoft Team Foundation Server Architecture to support

Collaborative Product Patterns. Internacional Conference on Software Process.

Minneapolis. 19-20 Mayo 2007.

[23] Sánchez-Segura Maria-Isabel, García Javier, Amescua Antonio, Medina Fuensanta A

Study on How Software Engineering Supports Projects Management. Software Quality

Journal (conditional acceptance).

[24] Sánchez-Segura María-Isabel, New trends in Software Process Modelling. Febrero de

2006. World Scientific. ISBN. 981-256-619-8.

[25] Santos Ignacio, Cuadra Dolores, Martínez Paloma. On the semi-automatic validation and decomposition of ternary relationships with optional elements. ICEIS 2007, (submitted).

Download