1 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 TIN Paloma Martínez * Departamento de Informática, Universidad Carlos III de Madrid Antonio Amescua ** 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 * **
2 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 Project Planning Figure 1: GPS 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
3 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
4 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.
5 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  [5,13,14]  [2,3,4,6,8,10,11,18,19] [9,12,23] [20,21] [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):
6 HarithAl -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  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 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), . 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, 
7 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  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).  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.  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  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  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  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, May 2006, Shanghai, China.  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 IRMA International Conference. Mayo 2007, Vancouver, Canadá.  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  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).  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 2006 Track, Working Notes for the CLEF 2006 Workshop, September, Alicante, Spain.  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.  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
8 organizaciones intensivas en software. Revista española de innovación, calidad e ingeniería del software (REICIS). To appear in  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  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 , July  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).  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).  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 IEEE International Conference on Information Reuse and Integration, Las Vegas, Nevada, USA, 15 al 17 de Agosto de  Martínez-Fernández José Luis, Villena Julio, García-Serrano Ana, Martínez Paloma. MIRACLE Team Report for ImageCLEF IR in CLEF Working Notes for the CLEF 2006 Workshop, September, Alicante, Spain  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 Diciembre Bridgeport, USA.  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.  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  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 Mayo  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).  Sánchez-Segura María-Isabel, New trends in Software Process Modelling. Febrero de World Scientific. ISBN  Santos Ignacio, Cuadra Dolores, Martínez Paloma. On the semi-automatic validation and decomposition of ternary relationships with optional elements. ICEIS 2007, (submitted).