Ви хочете обійти конкурентів? Скористайтеся rational unified process
Ви хочете обійти конкурентів? Скористайтеся Rational Unified Process
Як досягти 2-го рівня CMM
КОРОТКИЙ ОГЛЯД CMM
KPA 2-го рівня:
управління вимогами
Планування проекту ПО
Відстеження і нагляд за проектом
управління субпідрядниками
Забезпечення якості ПО
Ви хочете обійти своїх конкурентів?
Значить, Ви повинні гарантувати високу якість свого програмного продукту, що відповідає потребам кінцевих користувачів, в межах передбачуваного тимчасового графіка і бюджету. Багато компаній вкладають гроші в поліпшення свого процесу розробки і отримують хорошу віддачу. У статті "Сучасні моделі якості програмного забезпечення" автори, з посиланням на західні джерела, наводять такі цифри: середній рівень повернення вкладень у поліпшення процесу становить від 5: 1 до 8: 1.
Припустимо, що Ви добилися високої якості виробництва програмного забезпечення (ПО). Але хто, крім Вас, це знає? Як Ви донесете цю звістку до потенційних замовників (особливо зарубіжних)? Один із способів - отримання сертифіката якості вашого процесу, як відповідального прийнятим міжнародним стандартам.
Існує безліч підходів до забезпечення якості ПЗ і відповідних їм стандартів. Але оскільки ця стаття, як я сподіваюся, носить чисто практичний характер, ми зупинимося лише на одному з них - на Моделі зрілості процесу розробки ПО (Capability Maturity Model - CMM) Інституту системного програмування при університеті Карнегі-Меллон, США (SEI - Software Engineering Institute) .Далі ми зупинимося тільки на те, як організація може використовувати Rational Unified Process (RUP) та засоби його інструментальної підтримки для досягнення 2-го (Повторюваний) рівня зрілості CMM. Про досягнення 3-го (Певний) рівня ми поговоримо в наступній статті.
Відео: Rational Unified Process - Georgia Tech - Software Development Process
Кілька слів про порядок викладу матеріалу.
Ця перша стаття "дилогії" містить короткий огляд CMM: тільки те, що необхідно для розуміння і використання наступного матеріалу. Тим, хто хоче більш детально познайомитися з концепціями CMM, можна порекомендувати вже згадану статтю "Сучасні моделі якості програмного забезпечення". Там же пропонується деякий глосарій. Допитливі читачі можуть прочитати першоджерело: Mark C. Paulk et al, "Key Practices of the Capability Maturity Model - Version 1.1", Software Engineering Institute - Carnegie Mellon University.
Відео: RUP IBM методологія управління
Розділи, присвячені використанню RUP для досягнення 2-го (ця стаття) і 3-го (наступна стаття) рівнів CMM, представлені по одному плану:
Короткі характеристики рівня зрілості по CMM
Відео: Unified Process
Перерахування ключових областей процесу
Використання RUP для досягнення рівня
Відео: Лекція 1: Базові принципи і поняття RUP. Частина 1
Цілі ключовий області, і які кошти пропонує RUP для їх вирішення
При описі концепцій RUP використовуються ті ж російськомовні терміни, які автор використовує в циклі статей "Введення в Rational Unified Process" (https://interface.ru/rational/intro8.htm). До речі, читачі, які не мають у себе RUP або відчувають труднощі при читанні англійських текстів, можуть скористатися цим циклом для докладнішого знайомства з концепціями RUP.
Короткий огляд CMM
Модель зрілості процесу розробки ПО (CMM) Інституту системного програмування (SEI) - це каркас, який описує елементи ефективного процесу створення програмного забезпечення. CMM описує еволюційний шлях удосконалення процесу від незрілого до зрілого, упорядкованого процесу.
CMM охоплює дії планування, проектування та управління розробкою і підтримкою програмного забезпечення. Ці ключові дії покращують можливість організації в досягненні цілей витрат, графіка, функціональності і якості продукції.
CMM має п`ять рівнів зрілості організації від 1-го до 5-го (див. Рис. 1).
Малюнок 1. П`ять рівнів зрілості процесу в організації, що визначаються CMM SEI
Кожен рівень зрілості складається з ключових областей процесу (Key Process Areas - KPA), і кожен KPA ідентифікує пакет пов`язаних дій. При виконанні всіх цих дій досягається набір цілей, які вважаються важливими для встановлення можливості процесу на даному рівні зрілості.
Характеристики 2-го рівня, "Повторюваний"
На рівні "Повторюваний" встановлено стратегія управління програмним проектом і процедури здійснення цієї стратегії. Планування і управління новими проектами ґрунтується на досвіді роботи з подібними проектами. Мета 2-го рівня полягає в тому, щоб встановити ефективні процеси управління програмними проектами, які дозволяють організаціям повторювати успішні дії, розроблені в попередніх проектах, хоча конкретні процеси, реалізовані в проектах, можуть відрізнятися. Ефективний процес може бути охарактеризований як діючий, задокументований, виконаний, вивчений, обдуманий і придатний для удосконалення.
Проекти в організації 2-го рівня встановлюють базові засоби управління процесом розробки. Реальні можливості проекту грунтуються на результатах, отриманих в попередніх проектах і на вимогах даного проекту. Керівники розробки проекту планують витрати на розробку, графіки та функціональні можливості-ідентифікують виникають проблеми. Вимоги до програмного забезпечення і результуючий продукт розробляються так, щоб задовольняти їх основам і контролювати їх цілісність. Стандарти розробки визначені, і організація гарантує дотримання ним. Сплановані роботи з субпідрядниками, якщо вони є, встановлені відносини з основним замовником і постачальниками.
У підсумку, необхідна можливість процесу розробки в організації 2-го рівня може бути отримана завдяки тому, що планування і управління програмним проектом ведуть до стійкого і більш раннього успіху, дають можливість повторення. Процес проектування знаходиться під ефективним контролем системи управління проектом, слід реальним планам, заснованим на ефективності попередніх проектів.
KPA 2-го рівня: