반응형
SMALL
소프트웨어를 잘 만드는 것도 중요하지만,
얼마나 안정적이고 품질 있게 유지되느냐가 진짜 경쟁력입니다.
이번 글에서는 소프트웨어 품질 관리 모델(CMMI, SPICE)과 요즘 개발에서 빠질 수 없는 프레임워크의 특징에 대해 정리해드립니다.
1. CMMI (Capability Maturity Model Integration)
✅ 특징
- 조직의 소프트웨어 프로세스 성숙도를 평가하는 국제 모델
- 각 조직이 얼마나 체계적으로 개발 프로세스를 관리하는지 나타냄
- 미국 SEI(Software Engineering Institute)에서 개발
🧩 성숙도 5단계
단계 | 특징 |
1단계 (초기) | 비정형, 즉흥적 개발 |
2단계 (관리) | 프로젝트 수준에서 프로세스 정의 |
3단계 (정의) | 조직 수준에서 표준 프로세스 정의 |
4단계 (정량적 관리) | 프로세스 성능을 수치화·관리 |
5단계 (최적화) | 지속적인 개선을 추진 |
👍 실무 활용
- 정부 과제, SI 업체 입찰 기준에서 자주 요구됨
- 조직의 프로세스 개선 계획 수립 시 기준으로 사용
- 프로젝트 관리 성숙도를 외부에 인증할 수 있음
2. SPICE (ISO/IEC 15504)
✅ 특징
- 국제 표준에 따라 소프트웨어 프로세스를 평가하는 프레임워크
- SPICE는 "Software Process Improvement and Capability dEtermination"의 약자
- 공식 명칭은 ISO/IEC 15504
🧩 평가 영역 구성
분류 | 예시 |
프로세스 성숙도 | 성과 측정, 품질 관리 |
역량 수준 | 0단계(불완전) ~ 5단계(최적화) |
프로세스 그룹 | 개발, 관리, 지원, 조직 등 |
👍 실무 활용
- 공공 및 글로벌 프로젝트 납품 시 품질 인증 수단
- CMMI와 유사하지만 국제 규격화된 평가 기준 제공
- 프로세스 개선을 위한 체계적 지표 확보 가능
3. 소프트웨어 개발 프레임워크
✅ 특징
- 소프트웨어 개발에 필요한 구조와 기능을 제공하는 반제품 형태
- 공통 기능을 미리 구성하여 생산성, 재사용성, 유지보수성 향상
- 특히 웹/앱 개발, 엔터프라이즈 시스템 등에서 필수적
🧩 주요 특성
특성 | 설명 |
모듈화 | 캡슐화, 영향도 최소화 |
재사용성 | 공통 기능을 여러 곳에서 반복 활용 |
확장성 | 다형성과 인터페이스 기반 설계 |
제어의 역흐름 (IoC) | 개발자가 아닌 프레임워크가 흐름 제어 |
🧩 실무 예시
- Spring Framework: 자바 기반 웹/백엔드 개발
- React/Vue: 프론트엔드 UI 프레임워크
- Django/Laravel: 빠른 웹 앱 구축용 백엔드 프레임워크
👍 실무 활용
- 개발 표준화 및 협업 효율 상승
- 코드 중복 줄이고 생산성 + 유지보수성 향상
- 아키텍처 수준의 통합 설계 기반 마련 가능
🔁 비교 요약
항목 | CMMI | SPICE | 프레임워크 |
목적 | 조직 성숙도 평가 | 국제 표준 기반 품질 개선 | 개발 생산성 향상 |
적용 범위 | 조직/프로젝트 전체 | 국제 프로젝트 품질 보증 | 실제 개발 현장 |
특징 | 5단계 성숙도 모델 | 정량적 프로세스 평가 | 재사용 가능, 확장성 ↑ |
실무 사용 | 입찰/컨설팅 | ISO 기반 납품 인증 | 웹, 앱, API 등 개발 |
반응형
LIST