Модел на зрялост на способностите (CMM) и неговите нива в софтуерното инженерство

Какво е CMM?

Моделът на зрялост на способностите се използва като еталон за измерване на зрелостта на софтуерния процес на организацията.

CMM е разработен в Института за софтуерно инженерство в края на 80-те години. Той е разработен в резултат на проучване, финансирано от ВВС на САЩ като начин за оценка на работата на подизпълнителите. Later въз основа на модела CMM-SW, създаден през 1991 г. за оценка на зрелостта на разработката на софтуер, множество други модели са интегрирани с CMM-I, те са

Модел за зрялост на способностите

Какво представляват нивата на модела на зрялост на способностите (CMM)?

  1. Първоначален
  2. Повторяем/управляван
  3. Определени
  4. Количествено управляван
  5. Оптимизиране

Нива на модела на зрялост на способностите (CMM).

Какво се случва на различните нива на CMM?

Нива Дейности Ползи
Първоначално ниво 1
  • На ниво 1 процесът обикновено е хаотичен и ad hoc
  • Една способност се характеризира въз основа на индивидите, а не на организацията
  • Напредъкът не е измерен
  • Разработените продукти често са по график и над бюджета
  • Широки вариации в графика, цената, функционалността и целите за качество
Няма. Проектът е пълен хаос
Управлявано ниво 2
  • Управление на изискванията
  • Оценете параметрите на проекта като цена, график и функционалност
  • Измерете действителния напредък
  • Разработване на планове и процес
  • Дефинирани са стандарти за софтуерен проект
  • Идентифицирайте и контролирайте продуктите, докладвайте за проблеми, промените и т.н.
  • Процесите може да се различават в различните проекти
  • Процесите стават по-лесни за разбиране
  • Мениджърите и членовете на екипа прекарват по-малко време в обясняване как се правят нещата и повече време в изпълнението им
  • Проектите са по-добре оценени, по-добре планирани и по-гъвкави
  • Качеството е интегрирано в проектите
  • Разходите може да са високи първоначално, но намаляват с течение на времето
  • Поискайте повече документи и документи
Дефинирано ниво-3
  • Изяснете изискванията на клиента
  • Решете изискванията за дизайн, разработете процес на внедряване
  • Гарантира, че продуктът отговаря на изискванията и предвидената употреба
  • Анализирайте решенията систематично
  • Коригирайте и контролирайте потенциални проблеми
  • Подобряването на процеса става стандарт
  • Решението преминава от „кодирано“ към „инженерно“
  • Качествените порти се появяват по време на усилията по проекта с целия екип, участващ в процеса
  • Рисковете са смекчени и не изненадвайте отбора
Ниво-4 Количествено управлявано
  • Управлява статистически процесите и подпроцесите на проекта
  • Разберете ефективността на процеса, управлявайте количествено проекта на организацията
  • Оптимизира производителността на процеса в цялата организация
  • Насърчава количественото управление на проекти в организацията.
Ниво-5 оптимизиране
  • Открийте и отстранете причината за дефектите навреме
  • Идентифицирайте и внедрявайте нови инструменти и подобрения на процеси, за да посрещнете нуждите и бизнес целите
  • Насърчава организационните иновации и внедряване
  • Дава тласък на причинно-следствения анализ и разрешаване

Следната диаграма дава картинно представяне на това, което се случва на различни нива на CMM

Различни нива на 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 е ефективно, трайно и повторяемо, то се картографира на следната основа

  1. Ангажимент за изпълнение
  2. Способност за изпълнение
  3. Дейности извършват
  4. Измерване и анализ
  5. Проверка на изпълнението

Ограничения на CMM моделите

  • CMM определя какво трябва да адресира даден процес, вместо как трябва да бъде приложен
  • Той не обяснява всяка възможност за подобряване на софтуерния процес
  • Той се концентрира върху софтуерни проблеми, но не разглежда стратегическо бизнес планиране, възприемане на технологии, създаване на продуктова линия и управление на човешките ресурси
  • Той не казва в какъв бизнес трябва да се занимава една организация
  • CMM няма да бъде полезен в проекта, който има криза в момента

Защо да използвате CMM?

Днес CMM действа като „печат на одобрение“ в софтуерната индустрия. Помага по различни начини за подобряване на качеството на софтуера.

  • Той води към повторяем стандартен процес и по този начин намалява времето за учене как да свършите нещата
  • Практикуването на CMM означава практикуване на стандартен протокол за разработка, което означава, че не само помага на екипа да спести време, но също така дава ясна представа какво да прави и какво да очаква
  • Качествените дейности се съчетават добре с проекта, вместо да се смятат за отделно събитие
  • Той действа като пътник между проекта и екипа
  • Усилията на CMM винаги са насочени към подобряване на процеса

Oбобщение

CMM беше въведен за първи път в края на 80-те години във военновъздушните сили на САЩ за оценка на работата на подизпълнителите. Later на, с подобрена версия, той беше внедрен за проследяване на качеството на системата за разработка на софтуер.

Цялото ниво на CMM е разделено на пет нива.

  • Level 1 (Първоначално): Когато изискванията към системата обикновено са несигурни, неразбрани и неконтролирани. Процесът обикновено е хаотичен и ad hoc.
  • Level 2 (Управляван): Прогнозирайте цената на проекта, графика и функционалността. Дефинирани са софтуерни стандарти
  • Level 3 (Дефинирано): Гарантира, че продуктът отговаря на изискванията и предвидената употреба
  • Level 4 (Количествено управляван): Управлява статистически процесите и подпроцесите на проекта
  • Level 5 (Зрялост): Идентифицирайте и внедрявайте нови инструменти и подобрения на процеси, за да посрещнете нуждите и бизнес целите