An Experience of SEPG Organization
Alessia Billi Sodalia S.p.A., Trento- Italy alessia@sodalia.it
The group has been established with the objective of co-ordinating the improvement activities of the company software processes.
The approach to fulfill that objective is based on three key steps: identification of improvement actions, implementation of these actions by work groups, extension to the whole organization.
The achieved results show the benefits of this approach: the company obtained the certification ISO 9001 and has been assessed at level 3 of CMM in an outstanding time frame of about four years.
The Capability Maturity Model at level 3 requests the existence of a similar group, in order to develop, understand, maintain and improve processes related to the software projects and to the organization.
The model indicates different suitable solutions for the organization of the SEPG, involving full-time or part-time resources assignment.
It was established in 1992, as a joint venture between TELECOM Italia and Bell Atlantic Corporation, and started operations in 1993.
From its foundation, among the main company’s mission statement, the objective of improving the quality level of products occupied a relevant position. In order to reach this objective, Sodalia decided to steer its effort both to improve the maturity level, according to the SEI Capability Maturity Model, and to obtain the ISO 9001 certification.
The company was assessed at Level 2 of the Capability Maturity Model in December ’95, in May ’96 received the ISO 9001 certification, and finally, in September ’97, has been assessed at Level 3 of the SEI-CMM.
As an important objective of the Company has been, since its foundation, the achievement of a satisfactory level of processes and products quality, a significant effort was spent in the definition of common process already while the company was moving its first steps in software development.
The first step of the company in this direction was the definition of the software development process model, called SIMEP (Software Integrated Management and Engineering Process), founded on the following basic principles: iterative incremental/evolutionary approach, software reuse, object-oriented approach, full integration of project management and software engineering activities.
After its first modeling, the process has been consolidated and the related documentation has been enriched; the improvement steps followed each another in ambit of selected improvement areas based on the Key Process Areas of the CMM.
For each improvement area, a set of guidelines and a templates have been defined, in order to make homogeneous the way of performing the various activities among different projects during the software life-cycle.
The topic of requirement management has been faced in several subsequent improvement steps in order to obtain a homogeneous classification and description of the product requirements.
Starting from the original textual way of requirements description, the improvement steps have been addressed to structure the requirements, by identifying each single requirement with the needed granularity, to classify the requirements in more categories and sub-categories and to define a status vector for each requirement in order to manage its status and its attributes.
The result is the currently used layout and the defined process for requirements definition, that guarantee that the requirements are managed and controlled and that the traceability is kept.
Also as regarding the project management, two improvement degrees have been obtained in two different, subsequent steps: at first the effort has been spent into the definition of common process and instruments for planning and controlling the projects; a subsequent improvement followed, aimed to support the project managers in sharing the planning and monitoring company experience and in managing the project risks. In this phase, a specific improvement step has been devoted to the identification of all possible risk factors for the company projects, to be kept into account by the project managers during the risk planning.
Configuration management activities have been defined and supported for making the software products and intermediate artifacts managed and controlled.
The verification and validation of the products has been guaranteed by making reviews of process artifacts and software test performed by adopting standard process and method, and by defining the classification and weight of the defects.
Guidelines for process tailoring have been produced for supporting the process scalability: the process is currently adaptable to various project and product types, sizes and risk classes.
Data measurement and metrics constituted an important topic to be investigated; a set of guidelines has been defined and then made more usable by the creation of a software process database for an homogeneous collection of data and measures; the company projects data have made available to be used for estimation activities.
These important improvement activities strongly connected to the Key Process Areas of the CMM have been completed by a set of other improvement steps, related for example to the selection of particular tools or methods to support and perform the development activities.
After the assessment to the Level 3 of the CMM, most effort has been spent in the improvement of the standard set of company tools, and in introducing smooth changes to the company processes towards the Level 4 of CMM.
The principal organizational structure that supported all the described activities has been, from beginning of the improvement activities, the Methodologies Area, composed of technicians fully devoted to the study of all the topics connected to the software engineering.
This group analyses the problems related to all the improvement items, investigates the best results available in literature and tries to adapt them to the company context, keeping into account the problems to be faced day by day by the people involved in the projects activities, due to the organization, the products domain and the type of the clients.
The existence of this Area played a fundamental role in the achievement of the main company–level results, as assessment of levels 2 and 3 of CMM and the ISO certification.
Nevertheless, the overall organizational approach to the software process improvement has been tuned and changed during the first 5 years of the company life.
The Methodologies Area staff in fact, having the objective of investigating in deep the various topics, gained a good level of knowledge about the theoretic aspects of the faced arguments; however the problems connected to the practical application of the methodologies and processes in a particular context and products domain are sometimes not immediately visible, and the contribution of the experience coming from the members of software development projects is invaluable.
Furthermore Sodalia experience showed that members of the projects, if not involved in various decisions at company level, could suffer the technical decisions like impositions; as a consequence the methodologies risk to be "placed on the shelf".
But, at the same time, project staff feel the involvement in methodologies and processes definition as a lower level priority activity; in addition, the Methodologies Area has the commitment to guide the company improvement according to CMM as a reference model.
For these reasons an organizational approach calibrating the contribution of theoretical elements and practical experience has been considered necessary for guarantee the success of the company improvement steps.
Fig. ABI.1 : SEPG and Work Groups Composition
The Group is composed as permanent members by the Methodologies Area representatives and by the project managers of all the company projects. In addition, according to the particular needs, other company staffs are involved in SEPG activities for short periods (see fig. ABI.1).
The selected approach is based on the selection of improvement areas, with clear objectives, and on the implementation of related actions by the establishment of work groups (see fig. ABI.2).
This implementation is followed by the extension of the achieved results in the overall organization.
This approach includes points of centralization of both information and decisions, and points of delegation of the activities to specialized groups, optimizing in such a way the effort expended by all the participants according to their roles and capabilities.
Fig. ABI.2 : SEPG and Work Group activities
The improvement areas are identified by the SEPG, on the basis of proposals suggested by either Methodologies Area staff or projects members; generally the proposals arise from assessments, from analysis of industry trends and emerging technologies or from project needs.
The work groups having the objective of implementing these areas are composed trying to involve people capable of give the maximum contribution: Methodologies Area staff with a strong theoretic knowledge and practitioners with technical responsibilities for certain domains within a development project and with a significant experience.
Methodologies Area staff are in charge for organizing and coordinating the work of these groups, and collecting, synthesizing and reporting the results.
As already noted, the involvement of the Methodologies Area is full-time, whereas projects provide in turn temporary resources, so that the effort spent affects only in minimal part projects schedules.
The responsibilities of the work group consist of the following:
At the moment of the improvement area implementation conclusion, the sharing of the information in the whole company and, most important, the agreement, are so assured, and the transition phase is immediate.
The sharing of the information on the SEPG activities is also facilitated by the support of the available tools as the Software Process Database and the use of the internal web as a communication mean.
Based on a proposal of the Methodologies Area, a specific session of SEPG meeting discussed the opportunity to improve the Sodalia development infrastructure, adopting a UML-compliant process supported by a single CASE tool.
The first emerged necessity was the evaluation of the Return of Investments: a first work group has been formed with the objective limited to this duty.
Four Methodologies Area members, two project architects (from different projects) and one project manager formed this work group.
The work group presented the results to the SEPG two months later.
After the evaluation of the results the SEPG committed two other work groups: one with the objective of analyzing and proposing the changes of the software process and documentation standard (suggesting a practical way to achieve common semantic and UML notation for specification and design phase), a second work group with objective of performing the screening of the candidate case tools, defining the way for performing its experimentation and reporting the results.
The first work group started working at the end of June 1998; three Methodologies Area members and the architects of all Sodalia projects composed it.
The group met about every ten days, and a Methodology Area member was responsible of reporting the collected and discussed information and formalizing it in a document, whose key elements were presented to the SEPG about every two months.
The activities of second group started at the end of July 1998.
Two Methodologies Area members, one architect, one project manager and three developers, working in different projects, formed the group.
The Methodologies Area members, being members also of the first work group, guarantee the compliance of the results of the two groups.
The agreement achieved and the presented results showed the success of the selected organization approach.
As a result, this approach assures the best exchange of knowledge, maintaining the correct balance between the theory and its pragmatic application.
References
[1] Paulk M.C., Weber C.V., Garcia S.M., Chrissis M., Bush M., Key Practices of the Capability Maturity Model, Version 1.1, Tech. Rep. CMU/SEI-93-TR-25, Software Engineering Institute, Carnegie Mellon University.