Модел на зрялост на способностите (CMM) и неговите нива в софтуерното инженерство
Какво е CMM?
Моделът на зрялост на способностите се използва като еталон за измерване на зрелостта на софтуерния процес на организацията.
CMM е разработен в Института за софтуерно инженерство в края на 80-те години. Той е разработен в резултат на проучване, финансирано от ВВС на САЩ като начин за оценка на работата на подизпълнителите. Later въз основа на модела CMM-SW, създаден през 1991 г. за оценка на зрелостта на разработката на софтуер, множество други модели са интегрирани с CMM-I, те са
Какво представляват нивата на модела на зрялост на способностите (CMM)?
- Първоначален
- Повторяем/управляван
- Определени
- Количествено управляван
- Оптимизиране
Какво се случва на различните нива на CMM?
Нива | Дейности | Ползи |
---|---|---|
Първоначално ниво 1 |
|
Няма. Проектът е пълен хаос |
Управлявано ниво 2 |
|
|
Дефинирано ниво-3 |
|
|
Ниво-4 Количествено управлявано |
|
|
Ниво-5 оптимизиране |
|
|
Следната диаграма дава картинно представяне на това, което се случва на различни нива на CMM
Колко време отнема внедряването на CMM?
CMM е най-желаният процес за поддържане на качеството на продукта за всяка компания за разработка на софтуер, но внедряването му отнема малко повече от очакваното.
- Внедряването на CMM не става за една нощ
- Това просто не е просто „бумащина“.
- Типичното време за изпълнение е
- 3-6 месеца -> за подготовка
- 6-12 месеца -> за изпълнение
- 3 месеца -> за подготовка за оценка
- 12 месеца ->за всяко ново ниво
Вътрешна структура на CMM
Всяко ниво в CMM е дефинирано в ключова процесна област или KPA, с изключение на ниво-1. Всеки KPA дефинира група от свързани дейности, които, когато се изпълняват колективно, постигат набор от цели, считани за жизненоважни за подобряване на възможностите на софтуера
За различни нива на CMM има набор от KPA, например за CMM модел-2, KPA са
- REQM- Управление на изискванията
- PP- Планиране на проекта
- PMC - Мониторинг и контрол на проекта
- SAM - Управление на договора с доставчици
- PPQA-процес и осигуряване на качеството
- Управление на CM-конфигурация
По същия начин за други модели CMM имате специфични KPA. За да се знае дали прилагането на KPA е ефективно, трайно и повторяемо, то се картографира на следната основа
- Ангажимент за изпълнение
- Способност за изпълнение
- Дейности извършват
- Измерване и анализ
- Проверка на изпълнението
Ограничения на CMM моделите
- CMM определя какво трябва да адресира даден процес, вместо как трябва да бъде приложен
- Той не обяснява всяка възможност за подобряване на софтуерния процес
- Той се концентрира върху софтуерни проблеми, но не разглежда стратегическо бизнес планиране, възприемане на технологии, създаване на продуктова линия и управление на човешките ресурси
- Той не казва в какъв бизнес трябва да се занимава една организация
- CMM няма да бъде полезен в проекта, който има криза в момента
Защо да използвате CMM?
Днес CMM действа като „печат на одобрение“ в софтуерната индустрия. Помага по различни начини за подобряване на качеството на софтуера.
- Той води към повторяем стандартен процес и по този начин намалява времето за учене как да свършите нещата
- Практикуването на CMM означава практикуване на стандартен протокол за разработка, което означава, че не само помага на екипа да спести време, но също така дава ясна представа какво да прави и какво да очаква
- Качествените дейности се съчетават добре с проекта, вместо да се смятат за отделно събитие
- Той действа като пътник между проекта и екипа
- Усилията на CMM винаги са насочени към подобряване на процеса
Oбобщение
CMM беше въведен за първи път в края на 80-те години във военновъздушните сили на САЩ за оценка на работата на подизпълнителите. Later на, с подобрена версия, той беше внедрен за проследяване на качеството на системата за разработка на софтуер.
Цялото ниво на CMM е разделено на пет нива.
- Level 1 (Първоначално): Когато изискванията към системата обикновено са несигурни, неразбрани и неконтролирани. Процесът обикновено е хаотичен и ad hoc.
- Level 2 (Управляван): Прогнозирайте цената на проекта, графика и функционалността. Дефинирани са софтуерни стандарти
- Level 3 (Дефинирано): Гарантира, че продуктът отговаря на изискванията и предвидената употреба
- Level 4 (Количествено управляван): Управлява статистически процесите и подпроцесите на проекта
- Level 5 (Зрялост): Идентифицирайте и внедрявайте нови инструменти и подобрения на процеси, за да посрещнете нуждите и бизнес целите