Development of an International Software Process Lifecycle Standard for Very Small Entities
Un “Research Paper Introduction” est un billet présentant une introduction d’un article de recherche réalisé par des chercheurs de l’École de technologie supérieure (ÉTS) de Montréal, Québec, Canada.
For very small software development companies, the quality of their software products is a key to competitive advantage. However, the usage of Software Engineering standards is extremely low amongst such very small software organizations. A primary reason cited by many such companies for this lack of quality standards adoption is the perception that they have been developed for large multi-national software companies and not with small and very small organizations in mind and are therefore not suitable for their specific needs (Coleman & O’Connor 2008). This paper describes an innovative systematic approach to the development of the software process lifecycle standard for very small entities ISO/IEC 29110, following the Rogers model of the Innovation-Development process (Rogers 2003). It presents a unique insight from the perspective of some of the standards authors on the development of the ISO/IEC 29110 standard, including the rationale behind its development and the innovative design of implementation guides to assist very small companies in adopting the standards, as well outlining a pilot project scheme for usage in early trials of this standard.
Very Small Entities
According to the Organization for Economic Co-operation and Development (OECD) SME and Entrepreneurship Outlook report (2005), “SMEs constitute the dominant form of business organization in all countries world-wide, accounting for over 95% and up to 99% of the business population depending on country”.
Research shows that small and very small companies can find it difficult to relate ISO standards to their business needs and to justify the application of the standards to their business practices (Laporte et al, 2008) (O’Connor & Coleman, 2009). Most of these companies don’t have the expertise or can’t afford the resources – in number of employees, cost, and time – or see a net benefit in establishing software life-cycle processes. There is sometimes a disconnect between the short-term vision of the company, 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 company can manage its software development and maintenance. To date the industrial reality is that Very Small Entities (VSEs) have limited ways to be recognized, by large organizations, as enterprises that produce quality software systems within budget and calendar in their domain and may therefore be cut off from some economic activities.
Some of the unique differences between small and large enterprises behavior are given in Table 1:
Accordingly there is a need to help such organizations understand and use the concepts, processes and practices proposed in the ISO/IEC JTC1/SC7’s international software engineering standards. The recently published ISO/IEC 29110 standard “Lifecycle profiles for Very Small Entities” (ISO, 2011a) is aimed at addressing the issues identified above and addresses the specific needs of VSEs. In ISO/IEC 29110, a VSE has been defined as an enterprise, an organization, a department or a project having up to 25 people.
Innovation-Development Process Approach
For many small and very small software organizations, implementing controls and structures to properly manage their software development activity is a major challenge. Administering software development in this way is usually achieved through the introduction of a software process.
To illustrate the development of the ISO 29110 standards and technical reports we have adopted the 6-stage model of the innovation-development process model, developed by Rogers (Rogers 2003), as illustrated in Figure 1. Rogers defines the innovation-development process as follows: all the decisions, activities, and their impacts that occur from recognition of a need or problem, through research, development, and commercialization of an innovation through diffusion and adoption of the innovation by users, to its consequences.
Here we will briefly outline the 6 stages of Rogers model and outline the key actions required by ISO/IEC 29110 standard developers to utilize this model for the design and development of a new standard (Laporte 2009):
Stage 1 The Recognition of Needs and Problems: The Recognition of Needs and Problems is primarily concerned with the awareness of a problem. We outline the lack of awareness and acceptance of existing standards by small and very small software companies and justify the need for a new approach to the development of process standards aimed specifically at very small companies.
Stage 2 Basic and Applied Research: We describe both the design and results of an international survey of very small software companies, leading to an enhanced understanding of the actual needs of very small software companies from a process standard.
Stage 3 Development“: We describe the combination of the traditional approach to the development of a new standard with a novel approach to support the implementation, i.e. the development of a set of Deployment Packages.
Stage 4 Commercialization: We depart from the traditional Rogers model by examining the route to the formal publication and of a new international standard and the dissemination exercise aimed at those businesses wishing to put in place a portfolio of software development management practices.
Stage 5 Diffusion and Adoption: We describe a series of mini-research pilot projects with very small software companies as a means to accelerate the adoption and utilization of ISO/IEC 29110.
Stage 6 Consequences of an Innovation: We present the potential positive and negative consequences of the publication of standards, the novel approach taken and the results to date of the research pilot projects.
It is expected that some VSEs will use the technology developed on their own, other VSEs will get some help from government organizations, such as training or coaching, and some large organizations will impose the ISO/IEC 29110 standards on the VSEs that supply components for their products. A few countries have opted for the ‘survival of the fittest’ strategy for their VSEs, i.e. an approach where a government does not intervene in the marketplace and lets the market decide which VSEs will survive. At the same time, a number of government agencies, universities, research centers and associations are working to determine how to help VSEs. They share some of the following assumptions about the needs of VSEs (Laporte and Palza-Vargas, 2012b):
- VSEs require low-cost solutions;
- VSEs require readily usable processes supported by guides, templates, examples and tools;
- VSEs require additional effort in communications and in standardizing vocabulary;
- VSEs require a staged approach to help them grow their capabilities;
- VSEs require ways to identify potential quick wins;
- VSEs require guidance in the selection and implementation of software practices.
To understand how VSEs can use this new ISO/IEC standard to properly manage their software development, we invite you to read the Research Paper available at the following link:
O’Connor, Rory V and Claude Y. Laporte (2013): An Innovative Approach to the Development of an International Software Process Lifecycle Standard for Very Small Entities. International Journal of Information Technologies and Systems Approach, 2013, Pre-publication version (PDF)
Information about ISO/IEC 29110 standards and technical reports can be found here.
Dr. Rory V. O’Connor is a Senior Lecturer in Software Engineering at Dublin City University and a Senior Researcher with Lero, the Irish Software Engineering Research Centre. His research interests are centered on the processes whereby software intensive systems are designed, implemented and managed.
Dr. Claude Y. Laporte is a Professor of software engineering at the École de technologie supérieure. His research interests include software process improvement in small and very entities and software quality assurance.
Coleman, G., O’Connor, R. (2008). Investigating Software Process in Practice: A Grounded Theory Perspective. Journal of Systems and Software 81 (5), 772–784.
International Organization for Standardization (ISO): ISO/IEC TR 29110-5-1-2 Software Engineering – Lifecycle Profiles for Very Small Entities (VSEs) Part 5-1-2: Management and engineering guide: Generic profile group: Basic profile, Geneva (2011a). Available at no cost from ISO at:http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html
Laporte, C. Y. (2009). Contributions to software engineering and the development and deployment of international software engineering standards for very small entities (Doctoral dissertation, Université de Bretagne Occidentale, Brest).
Laporte, C.Y., Alexandre, S., O’Connor, R. (2008). A Software Engineering Lifecycle Standard for Very Small Enterprises. In: O’Connor, R., et al. (eds.) Proceedings of EuroSPI. CCIS, vol. 16, Springer-Verlag, pp. 129–141.
Laporte, C.Y., Palza Vargas, E. (2012b). The Development of International Standards to facilitate Process Improvements for Very Small Enterprises. In: Software Process Improvement and Management: Approaches and Tools for Practical Development, IGI Global, pp 34-61
Mtigwe, B. (2005). The entrepreneurial firm internationalization process in the Southern African context: A comparative approach, International Journal of Entrepreneurial Behavior & Research, Vol. 11 No. 5, pp. 358-377
O’Connor R. and Coleman G., (2009). Ignoring ‘Best Practice’: Why Irish Software SMEs are rejecting CMMI and ISO 9000, Australasian Journal of Information Systems, Vol. 16, No. 1, pp. 7-29.
Rogers Everett M. (2003). Diffusion of Innovations, 5th Edition. Simon and Schuster, 2003, 576 p.