Technological small to medium sized enterprises (SMEs) that are involved in developing software often lack maturity in the development process. This can result in an increased risk of software quality issues and technological debt. Recently, standards have started to address the need for lightweight process improvements through the development of the ISO 29110 series. In this article, we look at how this series can successfully be applied in the areas of (self)-assessment, diagnosis and specific tooling support.
SMEs and the small IT sections of larger companies often produce valuable software products. Due to limited resources, coping with quality issues in these very small entities (VSEs) is not an easy task. In these contexts, using process reference models such as CMMI or ISO 12207 are clearly excessive. Therefore, the need for a lightweight standard is useful and will particularly assist VSEs that need recognition as suppliers of high quality systems. Such a standard would also provide a practical process improvement tool.
Through the CE-IQS project, CETIC has been promoting the use and development of such lightweight methods for years. The group has shared its experiences with the working group 24 (WG24) of sub-committee 7 (SC7) of the Joint Technical Committee 1 (JTC1) of the International Organization for Standardization and the International Electro-technical Commission (ISO/IEC). This work has brought together contributions from numerous parties including Canada (ETS), Ireland (LERO), Japan, Thailand and Brazil, and has resulted in a new ISO/IEC 29110 series of standards. These new standards address the “Systems and Software Life Cycle Profiles and Guidelines for Very Small Entities” [1] and have been made freely available by the ISO [2]. Of particular relevance is Part 5 which contains dedicated guidelines for VSEs that are complemented by deployment packages to assist with their adoption.
Figure 1: ISO29110 generic profile group and related process support.
The ISO/IEC 29110 series are structured to follow a progressive approach which is based on a set of profiles that range from an entry profile to the most advanced profile (see Figure 1). The entry profile consists of the simplest set of development practices, covering software implementation and project management activities, and is particularly suited to start-ups. This is followed by the basic, intermediate and advance profiles that progressively cover a growing set of activities that can handle more complex situations involving a larger range of risks. The intermediate profile, although progressing well, is yet to be published and the advanced profile is still being discussed by the WG24.
In addition to contributing to this work, CETIC is also actively applying the standard as a practical tool for increasing the maturity of VSEs developing software. This work is not being done in a certification context as there is little incentive for this measure in Belgium as opposed to Thailand and Brazil where VSEs are highly involved in off-shoring (and hence, want to obtain such a certification to advertise the quality of their work). Instead, our actions take the following forms:
- Self-assessment questionnaire: through a dedicated web-site, companies can answer a set of questions to see how their current development approach compares against the entry profile activites. The questionnaire is currently available in French, English and Czech and feedback and/or translations into other languages are welcomed.
- Light assessment: a two-hour assessment which is based on a two-page check-list based on the entry profile. This assessment can be conducted as part of a code quality assessment in a VSE context (has become mandatory to integrate some start-up incubators in Wallonia).
- Full assessment: comprises of one to two days of interviews with key personnel including the project manager, architect and possibly some developers. The assessment should be conducted in two phases so that weak points can be both identified and further investigated, allowing a full set of recommendations to be produced. Additional coaching can also be provided.
- Process support service: an online service called “Easoflow” is currently being developed which will aim to help companies standardize their project management and software development processes by providing a simple and guided streamlining of the ISO/IEC 29110 entry and basic profile activities.
The results of all these activities are reported back to the ISO. Our on-going R&D work will focus on extending the standard, with specific profiles for areas such as system engineering, the development of Easoflow and the associated lightweight risk assessment tools.
Links:
CE-IQS project : https://www.cetic.be/CE-IQS,1191
Deployment Packages: http://profs.etsmtl.ca/claporte/English/VSE/index.html
Easoflow tool: https://demo.easoflow.com
Self-assessment: http://survey.cetic.be/iso29110/survey.php
References:
[1] C. Laporte et al.: “A Software Engineering Lifecycle Standard for Very Small Enterprises”, in R.V. O’Connor et al. (Eds.): EuroSPI 2008
[2] ISO/IEC 29110:2011, Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs), http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html
Please contact:
Christophe Ponsard
CETIC, Belgium
Tel: +32 71 490 743
E-mail: