Вступ до інженерії програмного забезпечення - Микола Олександрович Сидоров
На рис. 2.3 показано схему моделі, яка визначає п'ять рівнів зрілості організації: початковий, повторюваний, визначуваний, керований, оптимізований. Кожен рівень (окрім першого) має безліч процесів (ключові області), що асоціюються з ним. Ці процеси визначають цілі, які повинні бути досягнуті організацією, щоб її зрілість відповідала певному рівню. Кожна мета досягається конкретними діями процесу. Організація може не виконувати всіх дій процесу, але вона повинна продемонструвати, що всі цілі ключових областей досягнуті на даному і всіх попередніх рівнях. Пропуск рівнів, що знаходяться нижче в шкалі СММ, не допускається, оскільки області нижніх рівнів забезпечують цілі в галузях вищих рівнів,
Рис. 2.3. Модель CM SEI
Початковий рівень - зрілість організації ґрунтується на фольклорі та індивідуальних здібностях персоналу. Досвід передається тільки шляхом тренінгу, стандарти не враховуються; розмір, витрати й інші характеристики проекту не оцінюються. Успіх проекту залежить від менеджера і окремих програмістів («героїв»). Менеджер зазвичай не бачить, що відбувається всередині проекту, Характеристики цього рівня такі: хаос, недисциплінованість, непередбачуваність, анархія. 11а цьому рівні немає областей ключових процесів. Робота буде зроблена, коли вона буде зроблена.
Повторюваний рівень - організація використовує проектний менеджмент і управління, документуючи процеси в різних аспектах програмного проекту. Метрики застосовуються, щоб прослідкувати прогрес у виконанні проекту та ідентифікувати проблеми. Передбачається, що організація може повторювати проекти. На цьому рівні розглядаються такі області ключових процесів:
- управління вимогами - спрямовано так: на управління змінами у вимогах шляхом реалізації відповідних планів і дій;
- планування проекту - зорієнтовано на оцінювання і планування проекту;
- стеження і контроль проекту - результати виконання проекту повніші бути описані і внесені до планів проекту. Якщо мають місце відхилення, то вони мають бути виправлені;
- управління субпідрядниками - забезпечує керування і регулювання відносин з субпідрядниками;
- гарантування якості - забезпечує аудит і контроль якості, особлива увага приділяється застосуванню стандартів;
- управління конфігурацією програмного забезпечення - продукти фаз життєвого циклу контролюються за допомогою плану управління конфігурацією. Ідентифікуються процедури необхідних змін,
Визначуваний рівень - організація використовує стандартний документований процес для розробки і супроводу програмного забезпечення. Він може налаштовуватися на конкретні проекти, створюються групи для координації процесів. На цьому рівні розглядаються такі області ключових процесів:
- організація процесу - створюються групи для координації процесів розробки і дій, спрямованих на підвищення їх ефективності;
- визначення процесу - організація розробляє стандартний процес і організовує збір та аналіз інформації, пов'язаної з використанням стандартного процесу для окремих проектів;
- навчальні програми - організація повинна мати цілі, плани і програми з навчання персоналу для реалізації проектів на третьому рівні;
- управління інтеграцією - організація забезпечує вибір і налаштування процесів для конкретного проекту зі стандартного процесу;
- інженерія продуктів - організація визначає інструменти і методи для виконання процесів фаз життєвого циклу, пов'язаних з аналізом і проектуванням, кодуванням, тестуванням, документуванням;
- міжгрупова координація - дії груп, які координують процеси розробки, повинні ідентифікуватися, відстежуватися, а проблеми, що витікають, - вирішуватися;
- експертні оцінки - використовуються експертні оцінки для ідентифікації дефектів, що мають місце в продуктах.
Керований рівень - організація використовує збирані метрики для прогнозу і управління якістю продукту.
- На цьому рівні розглядаються такі області ключових процесів:
- управління процесом на основі кількісних показників - створення плану з використанням метрик, який організація застосовує для розуміння і управління процесом;
- управління якістю продукту - визначаються показники якості продукту, з їх допомогою здійснюються кваліфікація і управління якістю.
Оптимізований рівень - організація зосереджує увагу на двох метапроцесах: попередження дефектів і безперервне вдосконалення якості і продуктивності процесів створення програмного забезпечення. Витрати на ці процеси закладені до бюджету і планів дій організації. На цьому рівні розглядаються такі області ключових процесів:
- запобігання дефектам - організація створює і реалізує плани, що забезпечують ідентифікацію, аналіз і усунення причин виникнення дефектів у продуктах;
- управління змінами технології - вивчаються технології, використовувані в інших організаціях і нові технології, що забезпечать підвищення можливостей організації у напрямі створення якісних продуктів і зменшення тривалості циклу;
- управління змінами процесу створення програмного забезпечення - безперервне вдосконалення процесу.
Певною мірою організації можуть претендувати на п'ятий рівень СММ. Наприклад, цього рівня досягла IBM FSC, коли вона виконувала проект програмного забезпечення для Space Shuttle. Це програмне забезпечення мало бути високої якості, без дефектів. Для кожного дефекту, знайденого в продукті, викопувалися такі кроки: визначення причин появи дефекту і їх усунення; розуміння корекція аспекту процесу, що призвів до дефекту; коригування дій, що забезпечують управління якістю, які допустили дефект; перевірка продуктів з подібним дефектом, що дефекти могли бути про пущені через контроль.
Таким чином, суть СММ полягає в тому, що всі дії з розробки і супроводу програмного забезпечення плануються, контролюються і систематично поліпшуються.
2.2.2. Модель Р-СММДля оцінювання рівня зрілості персоналу використовуються різні моделі. Найпоширенішою моделлю розвитку персоналу є People-Capability Maturity Model (Р-СММ), що розроблена SEI. Також, як і СММ, ця модель складається з п'яти рівнів зрілості. Кожен рівень містить області ключових процесів, які вказують, що слід виконати на певному рівні, щоб досягти зрілості персоналу відповідного рівня моделі. Зміст рівнів моделі такий:
- початковий - в організації немає процедур управління персоналом і перевірки правильності використання персоналу, якість робіт і графік виконання непередбачуваний;
- повторюваний - в організації складаються процедури управління, що можуть повторюватися під час виконання нового проекту, організація проводить навчання персоналу, керує продуктивністю; на робочих місцях є комунікації і є відповідне середовище розробки. Проте успіх проекту залежить від діяльності окремих менеджерів і «героїв»-виконавців;
- визначуваний - в організації є стандартний процес і тому вводяться відповідні організаційні форми, що гарантують виконання стандартного процесу; значна увага приділяється підвищенню кваліфікації, аналізу навичок, знань і прийомів роботи персоналу; вводяться норми, котрі регулюють культуру сумісних дій