By Gauthier Fanmuy, Claude Laporte and Rory O'Connor


Abstract.

Very Small Entities (VSEs) developing systems or software are very important to the military since the components they develop are often integrated into products made by larger organizations. Failure to deliver a quality product on time and within budget may threaten both customers and suppliers. One way to mitigate these risks is to put in place proven engineering practices. ISO has approved recently the publication of standards and technical reports, known as ISO/IEC 29110, to address the needs of VSEs.

Introduction

More than ever, integrators of military systems depend on their numerous suppliers to deliver sub-systems meeting evolving requirements correctly, predictably, rapidly, and cost effectively. A supply chain of a large system often has a pyramidal structure. If an undetected defect is left in a low level component, once this component is integrated into a higher level component, the defect may still be undetected. For example, as illustrated in Figure 1, a large manufacturer integrated into one of its products a component, with an undetected software error, which was produced by one of its lowest-level suppliers. This defective component resulted in a loss of millions of dollars by the manufacturer.

The ability of organizations to compete, adapt, and survive depends increasingly on quality, productivity, cycle time and cost. Systems and software are getting bigger and more complex every year. As an example, a top of the line cars have up to 100 million lines of code, 80 processors and 5 bus systems [2].

Industry recognizes the value of VSEs, i.e. enterprises, organizations, projects or departments with up to 25 people [3], in contributing valuable products and services. There is a need to help these organizations understand the benefit of the concepts, processes and practices described in systems and software engineering standards, and to help them in their implementation. At every level of the supply chain, illustrated in figure 1, we find VSEs since a system integrator as well as its prime suppliers have also very small projects.

Research shows that small and very small enterprises can find it difficult to relate to ISO standards to their business needs and to justify the application of the standards to their business practices [4]. Most of these enterprises do not have the expertise or can not afford the resources—in number of employees, cost, and time—or see a net benefit in establishing lifecycle processes. There is sometimes a disconnect between the short-term vision of an enterprise, looking at what will keep it in business for another six months or so, and the long-term or mid-term benefits of gradually improving the ways the enterprise can manage its development and maintenance processes. A primary reason cited by many small enterprises for this lack of adoption of systems or software engineering standards, is the perception that they have been developed by and for large companies and not with very small organizations in mind [5]. To date, VSEs have no or very limited ways to be recognized, by large organizations, as enterprises that produce quality products within budget and calendar in their domain and may therefore be cut off from some economic activities. Accordingly there was a need to help VSEs understand and use the concepts, processes and practices proposed in the ISO/IEC JTC1/SC7’s1 international engineering standards.

The recently published set of ISO/IEC 29110 international standards (IS) and technical reports (TR) are aimed at addressing these issues as well as the specific needs of VSEs. The engineering standards and guides developed by an ISO working group, Working Group 24 (WG24)2, are targeted at VSEs which do not have experience or expertise in selecting, for a specific project, the appropriate processes from lifecycle standards such as ISO/IEC 12207 [6] or ISO/IEC 15288 [7], tailor them to the needs of a specific project.

In the next section, a high level summary of the approach used to develop the ISO/IEC 29110 standard and discuss some of its key concepts, including project management and software implementation processes. We will then present the initial support work on deployment assistance for VSE in using this standard and finish by discussing the planned future work.

The WG24 Approach to the Development of Standards for VSEs Developing Software

Since an international standard dedicated to the software lifecycle processes was already available, i.e. ISO/IEC 12207, WG24 used the concept of ISO standardized profiles (SP) to develop the new standards for VSEs developing software. From a practical point of view, a profile is a kind of matrix which identifies precisely the elements that are taken from existing standards from those that are not. The overall approach followed by WG24 to develop this new standard for VSE consisted of the following steps:

1. Develop a set of profiles for VSEs not involved in critical software development,

2. Select the ISO/IEC 12207 process subsets applicable to VSEs having up to 25 people,

3. Select the description of the products, to be produced by a project, using ISO/IEC 15289 standard [8],

4. Develop guidelines, checklists, templates, and examples to support the subsets selected.

Generic Profile Group

Profile Groups are a collection of profiles. The Generic Profile Group has been defined as applicable to a vast majority of VSEs that do not develop critical systems or critical software [9]. This Profile Group is a collection of four profiles (Entry, Basic, Intermediate, Advanced) providing a progressive approach to satisfying a vast majority of VSEs. VSEs targeted by the Entry Profile are VSEs working on small projects (e.g. at most six person-months effort) and for start-up VSEs. The Basic Profile describes software development practices of a single application by a single project team of a VSE. The Intermediate Profile is targeted at VSEs developing multiple projects within the organizational context taking advantage of it. The Advanced Profile is targeted to VSEs which want to sustain and grow as an independent competitive software development business. Table 1 illustrates this profile group as a collection of four profiles, providing a progressive approach to satisfying the requirements of a profile group.

The ISO/IEC 29110 standards and technical reports targeted by audience are described in Table 2.

The set of documents, listed in table 2, for the Basic profile ([9], [10], [11], [12], [13]) were published in 2011. At the request of WG24, all ISO/IEC 29110 TRs are available at no cost from ISO <http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html>. The Management and Engineering Guide, the most valuable document for VSEs, has being translated to French by Canada and to Spanish by Peru and adopted as a Peruvian national standard. The set of 5 documents has been translated to Portuguese by Brazil and adopted as a Brazilian national standard. Japan has translated and adopted ISO/IEC 29110 as a Japanese national standard. The Management and Engineering guide of the Entry profile has been published in September 2012 in English [14] and in French [15].

Overview of the Basic Profile for VSEs Developing Software

The purpose of the Basic Profile is to define Software Implementation (SI) and Project Management (PM) processes from a subset of ISO/IEC 12207 and ISO/IEC 15289 appropriate for VSEs. The main reason to include project management is that the core business of VSEs is software development and their financial success depends on successful project completion within schedule and on budget, as well as on making a profit. The high-level relationship between the SI and the PM processes is illustrated in Figure 2.

As illustrated in figure 2, the customer’s statement of work is used to initiate the PM process. The project plan will be used to guide the execution of the software requirements analysis, software architectural and detailed design, software construction, and software integration and test, and product delivery activities. Verification, validation, and test tasks are included in the SI process. The PM process closure activity will deliver the Software Configuration (i.e. a set of software products) and will obtain the customer’s acceptance to formalize the end of the project.

Overview of the Project Management Process

The purpose of the Project Management process is to establish and carry out the tasks of the software implementation project in a systematic way, which allows compliance with the project’s objectives in terms of expected quality, time, and costs [12]. The seven objectives of the PM process are listed in table 3.

Figure 3 illustrates the 4 activities of the project management process as well as their input and output products. Each activity is composed of tasks. The task description does not impose any technique or method to perform it.

For illustration purposes, two tasks of the Project Planning activity are listed in Table 4. On the left side of the table are listed the roles involved in a task. The project manager (PM) and the customer are involved in these 2 tasks.

The customer is involved, during the execution of the project, when he submits change requests, during project review meetings, for the validation and approval of the requirements specifications and for the acceptance of the deliverables.

Overview of the Software Implementation Process

The purpose of the (SI) process is to achieve systematic performance of the analysis, design, construction, integration, and test activities for new or modified software products according to the specified requirements [12]. The seven objectives of the SI process are listed in table 5.

Figure 4 illustrates the 4 activities of the SI process as well as their input and output products. Even though, a sequential view is presented in figures 3 and 4, ISO/IEC 29110 is not intended to preclude the use of different lifecycles such as waterfall, iterative, incremental, evolutionary or agile.

Deployment Packages to Facilitate the Implementation of ISO/IEC 29110

As a novel approach taken to assist VSEs with the deployment of ISO/IEC 29110 and to provide guidance on the actual implementation of the Management and Engineering Guides in VSEs, a series of Deployment Packages (DPs) have been developed to define guidelines and explain in more detail the processes defined in the ISO/IEC 29110 profiles [16]. The elements of a typical DP are: description of processes, activities, tasks, steps, roles, products, templates, checklists, examples, references and mapping to standards and models, and a list of tools. The mapping shows that a deployment package has explicit links to standards, such as ISO/IEC 12207, or models, such as the CMMI® for Development [17]. Hence by implementing a DP, a VSE can see its concrete step to achieve or demonstrate coverage [18].

DPs were designed such that a VSE can implement its content, without having to implement the complete framework, i.e. of the management and engineering guide, at the same time. A set of nine DPs have been developed to date and are freely available from [19]. Figure 5 illustrates the set of DPs developed to support the Basic Profile.

The Development of Systems Engineering Standards and Guides for VSEs Developing Systems

In 2009, the International Council on Systems Engineering (INCOSE) Very Small and Micro Entities Working Group (VSME) was established to evaluate the possibility of developing a standard, using the Generic profile group scheme of the ISO/IEC 29110 series, based on ISO/IEC 15288, for organizations developing systems. The ISO/IEC 29110 standard is targeted at VSEs which do not have experience or expertise in tailoring ISO/IEC 15288 [20].

In November 2011, WG24 met in Ireland to launch the official development of the systems engineering ISs and TRs for VSEs. Delegates from Brazil, Canada, France, Japan, Thailand, United States and INCOSE participated to the first meeting. A first draft was sent for a round of review within ISO in January 2012. More than 450 comments have been submitted by seven countries. A second draft [21] was sent for a second round of review in December 2012. Less than 150 comments have been submitted and will be processed at the next WG meeting. A third and final cycle of review should start in July. The systems engineering Basic profile should be published by ISO either late 2013 or early 2014. A set of systems engineering DPs is also under development by systems engineers members of INCOSE to support the Basic Profile.

Conclusion and Future Work

A large majority of organizations worldwide have up to 25 people. The collection of ISO/IEC JTC1 SC7 standards was not easily applied in VSEs, which generally find engineering and management standards difficult to understand and implement. WG24 developed a series of ISO/IEC 29110 ISs and TRs for VSEs involved in the development of systems or software.

As ISO/IEC 29110 is an emerging standard there is much work yet to be completed. The main remaining work item is to finalize the development of the remaining two software profiles of the Generic Profile Group: (a) Intermediate—management of more than one project and (b) Advanced—business management and portfolio management practices. Once these software profiles are ready, WG24 will develop matching systems engineering profiles for VSEs.

For most enterprises, but in particular for VSEs, international certifications can enhance credibility, competitiveness and access to national and international markets. Brazil has led the development of an ISO/IEC 29110 certification process. An ISO/IEC 29110 auditor should be competent in auditing techniques, have expertise in ISO/IEC 29110 and have experience in software development. For VSEs, such a certification should not be too expensive and short. The certification process has been successfully piloted in a few VSEs. For these pilots, it took about 4 staff-days of work by the auditors.

The publication by ISO, of the systems engineering Basic profile, is anticipated for either late 2013 or early 2014. Similar to the existing set of software ISO/IEC 29110 TRs, the Management and Engineering Guide for systems engineering should also be made available at no cost by ISO. A set of DPs, to support the future systems engineering standard, will be made freely available to VSEs on public Web sites. These DPs will use as a main reference the INCOSE Handbook [22].

Since many VSEs developing systems are also involved in the development of critical systems, WG24 will conduct an analysis to determine if a set of systems/software standards for VSEs developing critical systems should be developed.

Additional Information

The following Web site provides more information about ISO/IEC 29110:

<http://profs.logti.etsmtl.ca/claporte/English/VSE/index.html>

Disclaimer:

CMMI® is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University.

Tables and Figures:

Figure 1: Example of the supply chain of a large manufacturer (adapted from [1]) ( Click to view image )

Figure 2: Basic profile process relationship [12] ( Click to view image )

Figure 3: Project management process diagram for software [12] ( Click to view image )

Figure 4: Software implementation process diagram [12] ( Click to view image )

Figure 5: Deployment Packages to support the Software Basic Profile [18] ( Click to view image )

Table 1: Graduated profiles of the Generic profile group (adapted from [9]) ( Click to view image )

Table 2: ISO/IEC 29110 target audience (adapted from [3]) ( Click to view image )

Table 3: Objectives of the Project Management process of the Basic Profile [12] ( Click to view image )

Table 4: Example of 2 tasks of the Project Planning Activity [12] ( Click to view image )

Table 5: Objectives of the Software Implementation process of the Basic Profile [12] ( Click to view image )


References and Notes

Notes:

1. ISO/IEC JTC1/SC7 stands for International Organization for Standardization/ International Electrotechnical Commission Joint Technical Committee 1/Sub Committee 7. 2. A previous Crosstalk article describes the establishment of Working Group 24 [7] [23].

References:

1. Shintani, K., Empowered Engineers are Key Players in Process Improvement, Presentation at the First International Research Workshop for Process Improvement in Small Settings, Software Engineering Institute, CMU/SEI-2006-SR-01, Pittsburgh, PA, 2006. 2. Charette, R. N., Why Software Fails, IEEE Computer Society, Spectrum, September 2005, pp 42-49. 3. Laporte, C.Y., Alexandre, S., and O’Connor, R. A Software Engineering Lifecycle Standard for Very Small Enterprises, R.V. O’Connor et al (Eds) Proceedings of EuroSPI Springer-Verlag, CCIS Vol. 16, pp. 129-141, 2008. 4. Coleman, G., O’Connor, R., Software Process in Practice: A Grounded Theory of the Irish Software Industry. In: Richardson, I., Runeson, P., Messnarz, R. (eds.) EuroSPI 2006. LNCS, vol. 4257, pp. 28–39. Springer, Heidelberg (2006) 5. O’Connor, R. and Laporte, C.Y., Deploying Lifecycle profiles for Very Small Entities: An Early Stage Industry View, Proceedings of 11th International SPICE Conference on Process Improvement and Capability dEtermination, CCIS Vol. 155, Springer- Verlag, May 2011. 6. ISO/IEC 12207:2008, Information technology – Software lifecycle processes. International Organization for Standardization/International Electrotechnical Commission: Geneva, Switzerland. 7. ISO/IEC 15288:2008, Systems and software engineering - System lifecycle processes, International Organization for Standardization/International Electrotechnical Commission: Geneva, Switzerland, 2008. 8. ISO/IEC 15289:2011, Systems and software engineering – Content of lifecycle information products (documentation), International Organization for Standardiza tion/International Electrotechnical Commission: Geneva, Switzerland, 2011. 9. ISO/IEC 29110-2:2011 Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 2: Framework and Taxonomy, Geneva: International Organization for Standardization (ISO), 2011. Available from ISO at: http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail. htm?csnumber=51151 10. ISO/IEC TR 29110-1:2011, “Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 1: Overview”. Geneva: International Organization for Standardization (ISO), 2011. Available at no cost from ISO at: http://standards.iso. org/ittf/PubliclyAvailableStandards/c051150_ISO_IEC_TR_29110-1_2011.zip 11. ISO/IEC TR 29110-3:2011, “Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 3: Assessment Guide”. Geneva: International Organization for Standardization (ISO), 2011. Available at no cost at: http://standards.iso.org/ittf/PubliclyAvailableStandards/c051152_ISO_IEC_ TR_29110-3_2011.zip 12. ISO/IEC TR 29110-5-1-2:2011- Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 5-1-2: Management and engineering guide - Generic profile group: Basic profile, International Organization for Standardization/ International Electrotechnical Commission: Geneva, Switzerland. Available at no cost from ISO at: http://standards.iso.org/ittf/PubliclyAvailableStandards/ c051153_ISO_IEC_TR_29110-5-1_2011.zip 13. ISO/IEC 29110-4-1:2011, “Software Engineering -- Lifecycle Profiles for Very Small Entities (VSEs) - Part 4-1: Profile specifications: Generic profile group”. Geneva: International Organization for Standardization (ISO), 2011. Available from ISO at: http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail. htm?csnumber=51154 14. ISO/IEC TR 29110-5-1-1:2012- Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 5-1-1: Management and engineering guide - Generic profile group: Entry profile, International Organization for Standardization/ International Electrotechnical Commission: Geneva, Switzerland. Available at no cost from ISO at: http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html 15. ISO/IEC TR 29110-5-1-1:2012, Ingénierie du logiciel — Profils de cycle de vie pour les très petits organismes (TPO) —Partie 5-1-1: Guide de gestion et d’ingénierie— Groupe de profils génériques : Profil d’entrée. International Organization for Standardization/International Electrotechnical Commission: Geneva, Switzerland. Available at no cost from ISO at: http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html 16. Laporte, C.Y., Alexandre, S., Renault, A., The Application of International Software Engineering Standards in Very Small Enterprises, Software Quality Professional Journal, ASQ, Vol. 10, No 3, June 2008, p 4-11. 17. Software Engineering Institute. (2010). CMMI for Development, Version 1.3, Pittsburgh PA: Carnegie Mellon University. CMU/SEI-2010-TR-033. 18. Laporte, C.Y., Palza Vargas, E., The Development of International Standards to facilitate Process Improvements for Very Small Enterprises, Book: “Software Process Improvement and Management: Approaches and Tools for Practical Development” IGI Global Publisher. USA. 2012, p 34-61. 19. ISO/IEC JCT1/SC7 Working Group 24 Deployment Packages repository, [online] available from http://profs.logti.etsmtl.ca/claporte/English/VSE/index.html 20. Laporte, C. Y., Fanmuy, G., Ptack, K., The Development of Systems Engineering International Standards and Support Tools for Very Small Enterprises, International Council on Systems Engineering (INCOSE) International Symposium, July 9 – 12, 2012, Rome Italy. 21. ISO/IEC DTR 29110-5-6-2: 2012 - Systems Engineering – Lifecycle Profiles for Very Small Entities (VSEs) - Management and engineering guide: Generic profile group: Basic profile, International Organization for Standardization/International Electrotechnical Commission: Geneva, Switzerland. 22. Systems Engineering Handbook A Guide For System Life Cycle Processes And Activities, INCOSE‐TP‐2003‐002‐03.2, International Council on Systems Engineering (INCOSE), 7670 Opportunity Rd, Suite 220, San Diego, CA 92111‐2222, January 2010. 23. Laporte, C.Y., April, A., Renault, A., Applying ISO/IEC JTC 1/SC7 Software Engineering Standards in Very Small Enterprises, CrossTalk - The Journal of Defense Software Engineering, February 2007, Vol. 20, No 2, pp 29-30


Claude Laporte

Click to view image

Dr. Claude Y Laporte has worked in defense and transportation organizations for more than 20 years. He is a professor, since 2000, at the École de technologie supérieure, a 6,000-student engineer­ing school in Montréal, where he teaches software engineering. He is the Project Editor of ISO/IEC 29110 set of systems and software engineering standards and Technical Reports. He is the co-author of a textbook about software quality assurance which should be published by John Wiley & Sons in 2013. Website address: .
École de technologie supérieure
Department of Software and IT Engineering
1100, Notre-Dame Street West,
Montréal, Québec, Canada, H3C 1K3
E-mail: Claude.Y.Laporte@etsmtl.ca

Rory O'Connor

Click to view image

Dr. Rory V. O'Connor is a Senior Lecturer in Software Engineering at Dublin City University (Ireland) and a Senior Researcher with Lero, The Irish Software Engineering Research Centre. In addition he is Ireland’s Head of delegation to ISO/IEC JCT1/SC7. His research interests are centered on the processes whereby software intensive systems are designed, implemented and managed. Website address: .

Lero, Irish Software Engineering
Research Centre,
Dublin City University, Dublin, Ireland
E-mail: roconnor@computing.dcu.ie

Gauthier Fanmuy

Click to view image

Gauthier Fanmuy is a Department Director at ADN , a Systems Engineering consulting company. He has worked in the Automotive Industry at PSA Peugeot Citroen as a System Engineering Expert, and in the Aeronautic Industry at Dassault Aviation as system engineer and as a project manager. He is Deputy Technical Director of AFIS (French Association on Systems Engineering, and AFIS representative at AFNOR. He is Associate Technical Director for Industry in INCOSE.

ADN
Systems Engineering Department Director
17 rue Louise Michel
92300 Levallois Perret - France
E-mail: gauthier.Fanmuy@adn.fr


« Previous Next »