ISO/IEC 29110
Mezinárodní norma ISO/IEC 29110
V této sekci se dozvíte základní informace o normě ISO/IEC 29110. Tato stránka obsahuje základní přehled informací o normě, na dalších stránkách jsou detailněji popsány možnosti využití normy, je možné si stáhnout český překlad volně dostupných částí normy a dalších materiálů a v neposlední řadě je možné se seznámit s proběhlými či probíhajícími pilotními projekty, kterými jsou praktiky normy zaváděny do cílových organizací. Pomocí těchto projektů jsou také ověřovány skutečné přínosy normy.
Zájemci o zavedení normy, jejich dílčích praktik nebo o konzultaci na téma procesů vývoje softwaru, mohou využít služeb centra pro podporu velmi malých entit.
Velmi malé entity a mezinárodní normy a standardy
Zavádění standardů a norem v oblasti softwarových procesů je náročné na zdroje, a tak jsou tyto činnosti realizovány spíše většími organizacemi. Přitom podíl malých firem je v oblasti vývoje softwaru velmi vysoký. Navíc malé podniky vyvíjí životně důležité systémy, systémy kritické pro poslání organizace, anebo systémy pro státní správu. To podtrhuje význam, který má pro tyto podniky certifikace. Průzkum realizovaný v roce 2006 [Laporte, 2006] ukázal zajímavé rozdíly v počtu certifikovaných firem ve vztahu k velikosti firmy. V kategorii velmi malých podniků bylo certifikováno méně než 18% firem. Naproti tomu u firem s více než 25 zaměstnanci bylo certifikováno už 53% firem. Certifikované firmy používají v 55% ISO normy a v 47% modely CMM, respektive CMMI [Octaba, 2008]. Protože se u velmi malých podniků předpokládala menší míra používání standardů, obsahoval průzkum také otázku, z jakého důvodu firma standardy a normy nepoužívá. Jako nejčastější důvody byly uváděny nedostatek zdrojů (28%) a skutečnost, že standardy nejsou vyžadovány (24%). 15% respondentů uvedlo, že standardy jsou příliš byrokratické a nejsou k dispozici návody na jejich aplikaci. Na druhé straně ale převážná většina velmi malých podniků (74%) uvedla, že je pro ně velmi důležité získat certifikaci.
ISO/IEC 29110 – základní informace
Mezinárodní norma ISO/IEC 29110 Life-Cycle Profiles for Very Small Entities je vytvářena pracovní skupinou WG24, která je součástí ISO/IEC JTC1/SC07, pro posuzování a zlepšování procesů ve velmi malých entitách. Norma vzniká jako reakce na výše popsaný stav, kdy velmi malé podniky (resp. velmi malé entity, tzn. podniky, organizace, oddělení nebo projekty čítající do 25 osob) z určitých důvodů ve vyšší míře nevyužívají mezinárodní normy a standardy, avšak vidí v jejich použití přínosy.
Ze svého původního zaměření na softwarové inženýrství se norma rozšířila i na inženýrství systémové. Norma využívá princip tzv. profilů, které představují výběr určitých prvků jiných mezinárodních norem za účelem zlepšení procesů při vývoji softwaru či budování systémů ve velmi malých entitách a doložení způsobilosti těchto entit v daných činnostech.
Profily normy ISO/IEC 29110
Momentálně je popsána skupina obecných profilů, která se zaměřuje na ty velmi malé entity, které nevyvíjí kritický software či systémy a nejsou zatíženy žádnými neobvyklými situačními faktory, jakým může být např. nejistota prostředí. Skupiny profilů představují kolekci jednotlivých profilů, které spolu souvisí skladbou procesů (obsahují totožné činnosti a úlohy), úrovní způsobilosti, nebo obojím. [Laporte, 2015f].
Profily patřící do skupiny obecných profilů:
Pro pokrytí potřeb širokého spektra velmi malých entit (VME) jsou definovány čtyři profily, které lze vnímat jako určité stupně způsobilosti či zralosti entity:
-
Vstupní (Entry) je určen pro začínající VME nebo VME pracující na malých projektech. Je odrazovým můstkem pro zavedení procesů z dalšího profilu. Je vhodný například pro startupy.
-
Základní (Basic) je zaměřen na VME vyvíjející jednu aplikaci prostřednictvím jednoho projektového týmu, a které nejsou zatíženy zvláštními riziky či situačními faktory [Laporte, 2015f].
-
Střední (Intermediate) má sloužit VME, které zpracovávají více projektů naráz [Laporte, Hébert a Mineau, 2014]. Zatím není specifikován.
-
Pokročilý (Advanced) bude využitelný entitami, které chtějí dále růst a prosadit se jako nezávislí, konkurenceschopní dodavatelé softwaru [Laporte, Hébert a Mineau, 2014]. Také není dosud přesně specifikován.
Prozatím jsou publikovány příručky umožňující velmi malým entitám zavedení:
-
vstupního profilu pro softwarové inženýrství,
-
základní profil pro softwarové inženýrství,
-
základní profil pro systémové inženýrství.
Střední a pokročilé profily, stejně jako základní profil pro systémové inženýrství, jehož publikaci lze očekávat v průběhu roku 2015, jsou stále ve fázi vývoje.
Cíle normy
Při vytváření normy byly stanoveny následující cíle:
-
pomoci velmi malým podnikům produkovat kvalitní softwarové systémy bez počátečních nákladů pro zavedení a udržování celé sady norem a systémů softwarového inženýrství či provádění komplexních hodnocení procesů
-
poskytnout snadno pochopitelné, dostupné a použitelné návody pro velmi malé podniky
-
vytvořit sadu profilů, které umožní zavést a zlepšovat procesy ve velmi malých podnicích
-
poskytnout velmi malým podnikům doménově specifické profily
-
poskytnout velmi malým podnikům příklady, které pomohou při zavádění a dodržování procesů podporujících vytváření kvalitního softwaru a odpovídajících jejich specifickým potřebám, problémům a rizikům
-
poskytnout základnu pro spolupráci více velmi malých podniků u projektů, které jsou pro jeden podnik příliš složité
-
vytvořit škálovatelné profily a návody, které umožní velmi malým podnikům dosažení shody s normami ISO/IEC 12207 a/nebo ISO/IEC 9001 a posouzení procesů s nutností jejich minimálního přepracování.
Struktura normy ISO/IEC 29110
Norma ISO/IEC 29110 je tvořena sadou dokumentů, kterou lze rozčlenit na pět částí. Ne každý dokument, který je součástí této sady, je přitom cílen na velmi malé entity – některé dokumenty slouží dalším subjektům, jako jsou hodnotitelé, producenti norem, tvůrci a prodejci nástrojů a metodik. Strukturu sady zachycuje následující tabulka a obrázek:
Struktura a cílové publikum normy ISO/IEC 29110 (Zdroj: [ISO/IEC TR 29110-1, 2011]):
ISO/IEC 29110 |
Název |
Cílové publikum |
Část 1 | Přehled | Velmi malé entity, hodnotitelé, producenti norem, producenti a prodejci nástrojů a metodik. |
Část 2 | Rámec a taxonomie | Producenti norem, producenti a prodejci nástrojů a metodik. Není určeno pro velmi malé entity. |
Část 3 | Příručka pro hodnocení | Hodnotitelé a velmi malé entity. |
Část 4 | Specifikace profilů | Producenti norem, producenti a prodejci nástrojů a metodik. Není určeno pro velmi malé entity. |
Část 5 | Příručka pro řízení a implementaci | Velmi malé entity. |
Obrázek 1: Přehled obsahu normy ISO/IEC 29110 (Zdroj: (ISO/IEC TR 29110-1, 2011))
Obsažené dokumenty jsou přitom dvojího druhu – mezinárodní normy a technické zprávy. Technické zprávy (Technical report – TR) jsou dokumenty informativní povahy, které mohou v rámci ISO/IEC 29110 sloužit jako instrukce pro zavedení profilů. Profil lze dle ISO/IEC TR 29110-1 (2011) stručně popsat jako kolekci základních norem, respektive vybraných prvků, které jsou v těchto normách popsány, a jejich využití ke splnění konkrétní funkce – například pro základní profil pro softwarové inženýrství je použito prvků z norem ISO/IEC 12207 a ISO/IEC 15289 (ISO/IEC TR 29110-5-1-2, 2011). Mezinárodní normy jsou určené pro hodnocení shody s formálními náležitostmi, které tyto normy definují (ISO/IEC TR 29110-1, 2011).
Obsah dokumentů v jednotlivých částech sady ISO/IEC 29110 je ve stručnosti následující (ISO/IEC TR 29110-1, 2011):
-
Část 1 – ISO/IEC TR 29110-1 – Přehled – popisuje termíny používané v dokumentech ISO/IEC 29110, stručně se věnuje konceptu procesů, životních cyklů a standardizace. Obsahuje popis velmi malých entit a popisuje také základní důvody pro vznik této normy.
-
Část 2 – ISO/IEC 29110-2 – Rámec a taxonomie – je normativním dokumentem, který popisuje koncepty standardizovaných profilů týkajících se softwarového inženýrství a zaměřených na velmi malé entity. Popisuje, z jakých prvků se profily skládají (struktura, vyhovění, ohodnocení) a popisuje taxonomii (katalog) profilů normy.
-
Část 3 – ISO/IEC TR 29110-3 – Příručka pro hodnocení – definuje postupy, které mají být dodrženy při hodnocení procesů, a popisuje požadavky na shodu, kterým je nutno vyhovět pro dosažení vybraného profilu.
-
Část 4 – ISO/IEC 29110-4-m – Specifikace profilů – jde o dokumenty, které popisují skupiny profilů a profily, které jsou do těchto skupin zařazeny. Např. ISO/IEC 29110-4-1 popisuje profily pocházející ze skupiny obecných profilů.
- Část 5 – ISO/IEC TR 29110-5-m-n – Příručka pro řízení a implementaci – obsahuje popis postupů umožňujících velmi malým entitám zavedení vybraného profilu popsaného normativním dokumentem z části 4. Příručka uvádí informace o tom, jaké procesy má velmi malá entita zavést a jakých cílů má jejich prostřednictvím dosahovat, aby vyhověla specifikaci zvoleného profilu.
Zdroje normy
Norma ISO/IEC 29110 byla založena na modelu Mexického standardu MoProSoft a vychází z následujících zdrojů:
-
SW-CMM (Software Capability Maturity Model)
-
CMMI (Capability Maturity Model Integration)
-
ISO/IEC 12207
-
ISO/IEC 15288
-
ISO/IEC 15504
-
ISO/IEC 90003.
Implementační balíčky normy ISO/IEC 29110
„Implementační balíček je sada artefaktů vytvořených pro usnadnění implementace souboru praktik vybraného rámce“
Balíčky jsou navrhovány pro jednotlivé aktivity procesů základního profilu tak, aby bylo možné zavedení jejich obsahu bez nutnosti implementace všech procesů daného profilu – zavedení implementačního balíčku Testování softwaru by tak mělo být proveditelné bez úprav dalších aktivit, do kterých tento balíček ne-zasahuje. Implementační balíček by měl obsahovat definici pokrytí normy ISO/IEC 29110 (přesné určení dokumentu normy a jeho částí, které jsou zpracovány v implementačním balíčku), přehled a popis jednotlivých procesů (aktivity, úkoly, vstupy, výstupy, role), šablony, příklady, kontrolní seznam (checklist), seznam nástrojů a odkazy na další standardy a modely (ISO/IEC 9001, ISO/IEC 12207, CMMI).
V současné době jsou na webových stránkách projektu pro základní profil dostupné následující implementační balíčky:
-
Analýza požadavků systému (Requirement Analysis)
-
Architektura a detailní návrh systému (Architecture and Detailed Design)
-
Konstrukce a testování jednotek (Construction and Unit testing)
-
Testování softwaru (Software testing) – lokalizace balíčku do českého jazyka viz příloha 1
-
Dodání produktu (Product Delivery)
-
Správa verzí (Version Control)
-
Verifikace a validace (Verification and Validation)
-
Samohodnocení (Self-assessment).
-
Průvodce: Základní profil VMP
-
Detailnější informace o základním profilu se dozvíte v práci Basic Profile (Holý Michal, Moravcová Jana, Vodička Petr)
-
Management a Engineering guide
Tento dokument, který je z celé sady dokumentů pro VMP(Velmi Malé Podniky) nejdůležitější, poskytuje návod pro implementaci a použití procesů základního profilu. Popisuje souvislosti jednotlivých procesů, jejich účel, cíle, vstupy, výstupy a jednotlivé činnosti procesů a jejich úkoly. Uvádí rovněž detailní popis všech rolí, produktů a požadavky na nástroje nutné pro vykonání jednotlivých aktivit.
Cílovou skupinou pro použití této technické zprávy jsou VMP, které jsou charakterizovány jako podniky, organizace, oddělení nebo projekty do 25 osob, věnující se vývoji softwaru7 [13, s. 1].
Pro použití této příručky pak musí VMP splňovat následující podmínky [13, s. 5]:
-
zdokumentovaná Specifikace prací (Statement of work),
-
před začátkem projektu byla ověřena jeho proveditelnost,
-
projekt má přiřazen vyškolený projektový tým, včetně projektového manažera,
-
jsou dostupné zdroje, služby a infrastruktura pro zahájení projektu.
Základní profil pro VMP se skládá ze dvou hlavních procesů:
-
Řízení projektu,
-
Implementace softwaru