Zarządzanie wersjami i zmianami
Zmiany oprogramowania są nieuniknione (zmienia się sprzęt, wymagania użytkowników, oprogramowanie systemowe, itd., itp.). Firma wytwarzająca oprogramowanie powinna posiadać system zarządzania zmianami (wersjami, wydaniami, releases) oraz bazę danych o poszczególnych wersjach. W praktycznej realizacji prawie zawsze stosuje się odpowiednie wspomagające narzędzia CASE.
Zarządzanie zmianami i wersjami (ogólnie konfiguracją) – łącznie z posiadaniem odpowiednich standardów – jest często uznawane za element zarządzania jakością (jest tak np. według standardów ISO9000 lub CMM).
Sam proces wytwarzania oprogramowania może być przedmiotem zarządzania i optymalizacji. Istnieją różnorodne standardy (najbardziej znane ISO z serii 9000) dotyczące jakości procesów wytwarzania. W dziedzinie oprogramowania najbardziej znanym modelem oceny procesów wytwarzania oprogramowania jest CMM (Capability Maturity Model – model dojrzałości
Model CMM został wprowadzony przez amerykańską organizację SEI (Software Engineering Institute) w celu zwrócenia uwagi na znaczenia jakości procesu wytwarzania oprogramowania dla jakości samego wytwarzanego produktu. W ramach modelu CMM procesy zaliczane są, na podstawie rozmaitych kryteriów, do jednego z pięciu poziomów:
- wstępny (initial)
- powtarzalny (repeatable)
- zdefiniowany (defined)
- ilościowo zarządzany (quantitatively managed)
- optymalizujący (optimizing)