La norme ISO/CEI 29110 concerne l'ingénierie de systèmes et l'Ingénierie du logiciel - les processus de cycle de vie pour les très petits organismes. Dans le cadre de l'ISO/CEI 29110 un système est typiquement composé de matériel et de logiciel.
Description
Les normes et les rapports techniques ISO/CEI 29110 visent les très petits organismes (TPO) qui développent ou maintiennent des systèmes qui comportent du matériel ou des logiciels. Un très petit organisme (TPO) est une entreprise, une organisation (p.ex., publique, sans but lucratif), un département ou un projet de vingt-cinq personnes ou moins[1]. Ces normes et ces rapports techniques ont été développées par le Groupe de travail 24 (WG 24) du Sous-comité (SC7) du Comité technique mixte 1 (JTC1) de l’Organisation internationale de normalisation (ISO) et de la Commission électrotechnique internationale (CEI).
Un projet de norme a été approuvé en 2005. Ce projet vise à développer des normes et des guides pour les TPO qui œuvrent en ingénierie des systèmes et en ingénierie du logiciel.
Un besoin
L’industrie reconnaît la valeur de la contribution des TPO qui fournissent des produits et des services de qualité. Les TPO développent ou maintiennent des systèmes et des logiciels qui sont utilisés, entre autres, dans de plus grands systèmes, ce qui rend nécessaire la reconnaissance des TPO en tant que fournisseurs de haute qualité.
Selon le rapport "SME and Entrepreneurship Outlook Report" (2005) de l’Organisation de coopération et de développement économiques (OCDE)[2], les TPO constituent la forme dominante des organisations d’affaires dans tous les pays du monde, représentant, selon le pays, de 95 à 99 % des entreprises. Le défi auquel font face les gouvernements de l'OCDE est de fournir un environnement d'affaires propice à la compétitivité de cette grande population d'entreprises hétérogènes et de favoriser une culture entrepreneuriale dynamique.
Selon des études et enquêtes réalisées[3],[4], il est clair que la majorité des normes actuelles en génie logiciel ne répondent pas aux besoins des TPO. Le respect de ces normes est difficile, voire impossible, ne donnant aux TPO aucun moyen, ou des moyens très limités, d'être reconnus comme des entités qui produisent des logiciels de qualité dans leur domaine. Par conséquent, les TPO sont souvent exclus de certaines activités économiques.
Il a été constaté que les TPO ont du mal à faire le lien entre les normes internationales existantes et leurs besoins d'affaires, et par conséquent d’en justifier l’application à leurs pratiques. La plupart des TPO ne peuvent se payer les ressources que cela implique, que ce soit en ce qui concerne le nombre d'employés, l'expertise, le budget ou le temps, pas plus qu'ils ne voient un bénéfice net à mettre en place des processus reliés au cycle de vie des logiciels. Pour remédier à certaines de ces difficultés, un ensemble de normes et de guides ont été élaborés selon des caractéristiques propres aux TPO. Ces documents sont basés sur des sous-ensembles d'éléments pertinents des normes, appelés « profils TPO ». Le but d'un profil TPO est de définir un sous-ensemble des normes internationales applicables au contexte du TPO, par exemple, des éléments des processus de la norme ISO/CEI/IEEE 12207 pour l'ingénierie du logiciel et des éléments de la norme ISO/CEI/IEEE 15288 pour l'ingénierie de systèmes et les produits de la norme ISO/CEI/IEEE 15289.
La série ISO/CEI 29110, ciblée par audience, a été développée pour améliorer la qualité des produits et/ou des services, ainsi que la performance des processus. Le tableau 1 énumère les auditoires ciblés par chaque type de document. À noter que la norme ISO/CEI 29110 n'est pas destinée à empêcher l'utilisation de différents cycles de vie tels que: la cascade, l'approche itérative, l'approche progressive ou, évolutive ou l'approche agile.
Tableau 1 - Les audiences visées par la norme ISO/CEI 29110[1]
ISO/CEI 29110
Titre
Audiences visées
Partie 1
Vue d'ensemble
Les TPO, leurs clients, les évaluateurs, les développeurs de normes, les vendeurs d'outils et de méthodologie.
Partie 2
Cadre et taxonomie
Les développeurs de normes, les vendeurs d'outils et de méthodologie. Les TPO ne sont pas visés par ce document.
Partie 3
Guide d’évaluation
Les TPO et leurs clients, les évaluateurs et les organismes de certification
Partie 4
Spécifications de profil
Les développeurs de normes, les vendeurs d'outils et de méthodologie.
Partie 5
Guide de gestion et d’ingénierie
Les TPO et leurs clients.
Partie 6
Spécifications de profils spécifiques
Les TPO, leurs clients, les développeurs de normes, les vendeurs d'outils et de méthodologie.
Partie 7
Guide de profils spécifiques
Les TPO et leurs clients
Si un nouveau profil est nécessaire, ISO/CEI 29110-4[5] et ISO/CEI 29110-5[6] peuvent être développés sans impact les documents existants et ils deviennent respectivement la norme ISO/CEI 29110-4-m et ISO/CEI 29110-5-mn.
Profils
La caractéristique essentielle des entités visées par la norme ISO/CEI 29110 est la taille, mais il y a d'autres aspects et caractéristiques des TPO qui peuvent influer sur la préparation ou la sélection du profil, tels que: les modèles d'affaires (p.e.x., commercial, sous-traitance, développement interne); les facteurs conjoncturels (p.ex.: la criticité, un environnement incertain); et les niveaux de risque. La création d'un profil pour chaque combinaison possible des valeurs des différentes dimensions présentées précédemment se traduirait par un nombre de profils ingérable. En conséquence, les profils TPO sont regroupés de manière à être applicables à plus d'une catégorie. Les groupes cibles sont une collection de profils qui sont liés soit par la composition des processus (activités, tâches), par niveau de capacité, ou par les deux.
Le groupe de profils génériques
Le groupe de profils génériques a été défini comme s’appliquant à la vaste majorité des TPO qui ne développent pas des systèmes ou des logiciels critiques et qui partagent des facteurs situationnels typiques. Le groupe de profils génériques est un ensemble de quatre profils (d’Entrée, Basique, Intermédiaire et Avancé), offrant une approche progressive qui satisfait les besoins de la majorité des TPO. Le groupe de profils génériques s’inspire de la norme mexicaine MoProSoft.
La figure ci-dessous montre les 2 processus et les activités du profil Basique en ingénierie du logiciel.
La figure ci-dessous montre les 2 processus et les activités du profil Basique en ingénierie système. Dans le contexte de l'ISO/IEC 29110, un système est composé typiquement de matériel et de logiciel.
Le tableau ci-dessous donne le nombre de tâches de chacun des processus des 4 profils du groupe générique. Un processus conditionnel est un processus qui peut être obligatoire dans certaines conditions spécifiques, peut être facultatif dans des conditions spécifiées et peut être hors du champ d'application ou ne pas être applicable dans des conditions spécifiées.
Le tableau ci-dessous donne le nombre de documents et de rôles de chacun des profils du groupe générique.
Normes et rapports techniques de l'ISO/CEI 29110
L'ISO/CEI 29110 comporte les parties suivantes :
La partie 1, ISO/CEI TR 29110-1[7], est un rapport technique, disponible gratuitement, qui définit les termes d'affaires communs à l’ensemble des profils documentés. Il introduit les processus, le cycle de vie, les concepts de normalisation et l’ensemble des documents constituant la norme ISO/CEI 29110. Ce document présente également les caractéristiques et les besoins des TPO et précise les raisons pour lesquelles des profils spécifiques, des documents, des normes et des guides ont été développés pour les TPO.
La partie 2, ISO/CEI 29110-2-1[8], est une norme internationale qui présente le concept de profils standardisés pour les TPOs et définit les termes communs à l’ensemble des profils. Il rationalise la définition et de l'application de profils standardisés. Il précise les éléments communs à tous les profils standardisés (la structure, la conformité, l'évaluation) et présente la taxonomie (catalogue) des profils de la norme ISO/CEI 29110.
La partie 3, ISO/CEI TR 29110-3-1[9], est un rapport technique qui définit les lignes directrices pour l’évaluation des processus et les exigences de conformité nécessaires pour répondre à l'objectif des profils pour les TPO. Le document ISO/CEI 29110-3-1 contient également des informations qui peuvent être utiles pour les développeurs de méthodes d'évaluation et d’outils d'évaluation. Le document ISO/CEI 29110-3 s'adresse à des personnes qui ont un rapport direct avec le processus d'évaluation, comme l'évaluateur et le commanditaire de l'évaluation, qui ont besoin d'orientation pour s’assurer que les exigences pour la conduite d'une évaluation ont été atteintes.
La partie 4, ISO/CEI 29110-4-m, est une norme internationale qui fournit les spécifications pour tous les profils du groupe de profils génériques. Le groupe de profils génériques est applicable aux TPO qui ne développent pas des systèmes ou des logiciels critiques. Les profils sont basés sur des sous-ensembles des normes appropriées. Les profils pour les TPO s'appliquent et sont ciblés pour les auteurs et les fournisseurs de guides et les auteurs/fournisseurs d'outils et de matériel de soutien.
La partie 5, ISO/CEI TR 29110-5-m-n, est un rapport technique, disponible gratuitement, qui fournit un guide de mise en œuvre des pratiques de gestion, d'ingénierie et de prestation de services décrites dans les normes ISO/CEI 29110-4-m.
Les composants de la série ISO 29110 sont illustrés ci-dessous. Les boites en bleu ardoise sont des documents en développement.
Plusieurs rapports techniques (TR) de l'ISO 29110 sont disponibles gratuitement sur le site de l'ISO[10].
Trousses de déploiement
Une trousse de déploiement (TD) est un ensemble d'artefacts visant à faciliter l’implantation d’un ensemble de pratique et d’un cadre sélectionné dans un TPO. Les trousses de déploiement décrites ci-dessous ont été développées pour appuyer l’implantation des processus du groupe de profils génériques. Le groupe de profils génériques s’applique aux TPO qui ne développent pas des logiciels critiques. Il est composé de quatre profils : d’entrée, basique, intermédiaire et avancé. Le groupe de profils générique n’implique aucun domaine d’application spécifique.
Le contenu d’une trousse de déploiement typique est présenté à la figure 2. La cartographie des normes et des modèles est donnée à titre d'information pour montrer qu’une trousse de déploiement a des liens explicites avec la partie 5 ainsi qu’avec les normes ISO sélectionnées, tels que la norme ISO/CEI/IEEE 12207, ou des modèles tels que le modèle CMMI® développé par le Software Engineering Institute. En mettant en place une trousse de déploiement, un TPO peut franchir la première étape concrète pour atteindre ou démontrer la couverture de la partie 5 de la norme ISO/CEI 29110. Les trousses de déploiement sont conçues de telle sorte qu'un TPO peut mettre en œuvre son contenu, sans avoir, en même temps, à faire de même pour le cadre complet.
1. Description technique
But de ce document
Pourquoi ce sujet est-il important?
2. Définitions
3. Les liens avec ISO/CEI 29110
4. Vue d'ensemble des processus, activités, tâches, rôles et produits
5. Description des processus, activités, tâches, rôles et produits
Description des rôles
Descriptions des produits
Description des artéfacts
6. Gabarit
7. Exemple
8. Liste de contrôle
9. Outil
10. Référence aux autres normes et modèles (ex. ISO 9001, ISO/CEI 12207, CMMI®)
11. Référence
12. Formulaire d'évaluation
Figure 2. Table des matières d’une trousse de déploiement (ISO/CEI 29110-5-1-2)
Le profil basique pour le logiciel décrit le développement d’une application simple par une équipe de projet unique où il n’existe aucun risque ou facteurs situationnels particuliers. La série des trousses de déploiement pour le profil basique du logiciel est illustrée à la figure 3.
Des trousses de déploiement pour le profil basique en ingénierie de systèmes sont en développent en collaboration avec des membres de l'INCOSE.
Les trousses de déploiement, ainsi qu'un plug-in, sont disponibles gratuitement sur internet.
Versions
Les documents suivants de la norme ISO/CEI 29110 sont présentement disponibles :
Version actuelle: ISO/CEI TR 29110-1:2016, ISO/CEI TR 29110-3:2011 sont disponibles gratuitement à partir de ISO/ITTF (téléchargement gratuit)
Pour l'ingénierie du logiciel:
Version actuelle: ISO/CEI TR 29110-5-1-1:2012 - Guide de gestion et d'ingénierie du logiciel du profil d'Entrée a été publié en français et en anglais en et sont disponibles gratuitement à partir de ISO/ITTF (téléchargement gratuit).
Version actuelle: ISO/CEI TR 29110-5-1-2:2011 - Guide de gestion et d'ingénierie du logiciel du profil Basique, disponibles gratuitement à partir de ISO/ITTF (téléchargement gratuit).
Version actuelle: ISO/CEI 29110-4-1:2011 - spécifications de profils.
Version actuelle: ISO/CEI TR 29110-5-1-3:2017 - Guide de gestion et d'ingénierie du logiciel du profil Intermédiaire - publié en 2017.
Version actuelle: ISO/CEI TR 29110-5-1-4:2018 - Guide de gestion et d'ingénierie du logiciel du profil Avancé- publié en 2018.
Deux trousses de déploiement supportent les deux processus du profil d'Entrée pour le logiciel.
Pour l'ingénierie système:
Version actuelle: ISO/CEI TR 29110-5-6-1:2015 - Guide de gestion et d'ingénierie du Profil d'Entrée - publié en (téléchargement gratuit).
Version actuelle: ISO/CEI TR 29110-5-6-2:2014- Guide de gestion et d'ingénierie système du Profil Basique - publié en (téléchargement gratuit).
Version actuelle: ISO/CEI TR 29110-5-6-3:2019- Guide de gestion et d'ingénierie système du Profil Intermédiaire - publié en .
Pour la prestation de services:
Version actuelle: ISO/IEC TR 29110-5-3:2018 - Service Delivery Guidelines.
Version actuelle: ISO/IEC 29110-4-3:2018 - Service delivery – Profile specifications.
Prochaines étapes
Pour le profil Avancé (ingénierie système): ISO/CEI TR 29110-5-6-4 - Guide de gestion et d'ingénierie - publication prévue en 2021.
Pour l'ingénierie système: ISO/IEC 29110-4-6 - Spécifications de profils - publication prévue en 2022.
Pour le développement logiciel en mode agile: ISO/IEC TR 29110-5-4 Agile Software Development Guidelines - publication prévue en 2021.
Pour le développement: ISO/IEC 29110-4-4 Agile Software Development - Profile specifications – Generic profile - publication prévue en 2022.
Pour le DevOps: ISO/IEC TR 29110-5-5 DevOps Guidelines - publication publication prévue en 2021.
Pour le DevOps: ISO/IEC 29110-4-5 DevOps - Profile specifications - publication publication prévue en 2022.
Pour la gestion organisationnelle: ISO/IEC 29110-4-2 – Organizational Profile Specifications - publication prévue en 2019.
Mise en œuvre de l'ISO/CEI 29110 dans les organisations d'ingénierie des systèmes
Le profil Basique en ingénierie système a été utilisé dans quelques organisations d'ingénierie système. A titre d'exemple, dans le sud de la France, 6 organisations ont implémenté le profil Basique dans le développement de leurs produits.
Au Canada, une jeune entreprise impliquée dans la conception et le développement de systèmes de communication pour les transports publics. L'entreprise a été auditée avec succès par un audit tiers composé de 2 auditeurs en 2016.
L'enseignement de l'ISO/CEI 29110
Plus de 20 pays enseignent l'ISO/CEI 29110.
À titre d'exemple, dans l'État de Zacatecas au Mexique, 11 universités ont mis en œuvre le profil logiciel Basique de l'ISO/CEI 29110 dans leur centre de développement logiciel (CDL). Un CDL fournit un environnement dans lequel les étudiants appliquent leurs connaissances dans un projet de développement logiciel. Les CDL ont été audités par rapport au profil logiciel Basique de l'ISO/CEI 29110 par des auditeurs du NYCE (Normalización y Certificación Electrónica), l'organisme de certification mexicain. À titre d'exemple, 4 CDL ont obtenu la certification ISO/CEI 29110 en 2017.
En Thaïlande, plus de 10 universités enseignent l'ISO/CEI 29110.
Références
↑ a et bISO/CEI 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. Genève: International Organization for Standardization (ISO), 2011
↑Land, S. K., Results of the IEEE Survey of Software Engineering Standards Users. Software Engineering Standards Symposium and Forum, 1997. Emerging International Standards. ISESS 97, Walnut Creek, CA, June 1-6, pp. 242 – 270, 1997.
↑ISO/CEI 29110-4-1:2011, Software Engineering -- Lifecycle Profiles for Very Small Entities (VSEs) - Part 4-1: Profile specifications: Generic profile group. Genève: International Organization for Standardization (ISO), 2011
↑ISO/CEI 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. Genève: International Organization for Standardization (ISO), 2011
↑ISO/CEI TR 29110-1, Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 1: Overview. Genève: International Organization for Standardization (ISO), 2016.
↑ISO/CEI 29110-2-1:2015Software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 2: Framework and taxonomy, Genève: International Organization for Standardization (ISO), 2015.
↑ISO/CEI TR 29110-3-1, Systems and software Engineering - Lifecycle Profiles for Very Small Entities (VSEs) - Part 3-1: Assessment guide. Genève: International Organization for Standardization (ISO), 2015.
Laporte, C.Y., Miranda, J., “Delivering Software and Systems Engineering Standards for Small Teams - Feedback from Very Small Entities, their customers, auditors and academia on ISO/IEC 29110.”, IEEE Computer, Vol. 53, Issue 8, August 2020, pp. 79-83
Muñoz, M., Mejía, J., & Laporte, C. Y. (2021). Analysis of the Evolution of Eight VSEs Using the ISO/IEC 29110 to Reinforce Their Agile Approaches. In Mora, M., Gómez, J. M., O'Connor, R. V., & Buchalcevová, A. (Ed.), Balancing Agile and Disciplined Engineering and Management Approaches for IT Services and Software Products (pp. 28-51). IGI Global. http://doi:10.4018/978-1-7998-4165-4.ch002
Muñoz, M., Mejia, J., Peña, A., Lara, G., Laporte, C.Y., Transitioning International Software Engineering Standards to Academia: Analyzing the Results of the Adoption of ISO/IEC 29110 in Four Mexican Universities, Computer Standards & Interfaces, 66 (2019), DOI: https://doi.org/10.1016/j.csi.2019.03.008
Muñoz M., Negrón A.P.P., Mejia J., Lopez G.L. (2018) ISO/IEC 29110 and curricula programs related to Computer Science and Informatics in Mexico: Analysis of practices coverage. In: Mejia J., Muñoz M., Rocha Á., Quiñonez Y., Calvo-Manzano J. (eds) Trends and Applications in Software Engineering. CIMPS 2017. Advances in Intelligent Systems and Computing, vol 688. Springer, Cham
Laporte, C.Y., Munoz, M., Mejia Miranda, J., O’Connor, R.V., [2] Applying Software Engineering Standards in Very Small Entities-From Startups to Grownups, IEEE Software, Vol. 35, Issue 1, pp 99-103
Laporte, C.Y., O'Connor, R., Software Process Improvement Standards and Guides for Very Small Organizations - An Overview of Eight Implementation, CrossTalk - The Journal of Defense Software Engineering, May/June 2017. Vol. 30, No 3, pp 23-27.
Marvin et al., A SE VSE Company Use Case, 27th Annual INCOSE International Symposium, Adelaide, Australia, July 15-20, 2017.
Laporte, C. Y., Munoz, M., Gerançon, B., The Education of Students About Software Engineering Standards and Their Implementations in Very Small Entities. IEEE Canada-International Humanitarian Technology Conference, July 20-21, 2017, Toronto, Ontario, Canada, pp. 94-98
Laporte, C.Y., Tremblay, N., Menaceur, J., Poliquin, D., Houde, R., Systems Engineering and Management Processes for Small Organizations with ISO/IEC 29110 - An Implementation in a Small Public Transportation Company, 11th Annual IEEE International Systems Conference, April 24-27, 2017, Montreal, Quebec, Canada, pp. 112-119
X. Larrucea et al., “Software Process Improvement in Very Small Organizations,” IEEE Software, vol. 33, no. 2, 2016, pp. 85–89.
Laporte, C.Y., O’Connor, R.V. (2016), Systems and Software Engineering Standards for Very Small Entities: Accomplishments and Overview, IEEE Computer, volume 49, number 8, pp 84-87.
Sanchez-Gordon, M.L., O’Connor, R. V., Colomo-Palacios, R. and Sanchez-Gordon, S.: A Learning Tool for the ISO/IEC 29110 Standard: Understanding the Project Management of Basic Profile. In Proceedings 16th International Conference on Software Process Improvement and Capability dEtermination (SPICE 2016). Springer-Verlag. (2016)
Sanchez-Gordon, M.L., O’Connor, R. V., Colomo-Palacios, R. and Herranz, E.: Bridging the Gap between SPI and SMEs in Educational Settings: A Learning Tool Supporting ISO/IEC 29110. 23nd European Conference on Systems, Software and Services Process Improvement (EuroSPI 2016), Springer-Verlag. (2016)
ISO/CEI/IEEE 12207, Systems and software engineering - Software life cycle processes. (en anglais)
ISO/CEI/IEEE 15288, Systems and software engineering - System life cycle processes. (en anglais)
ISO/CEI/IEEE 15289 , Systems and software engineering - Content of systems and software life cycle process information products (Documentation en anglais)