728x90
반응형
소프트웨어 측정 지표는 프로세스 지표, 제품 지표, 프로젝트 지표로 구분됩니다.
- 프로세스 지표는 소프트웨어 개발 과정의 효율성과 품질을 평가하며, 결함 발견률, 작업 완료 시간, 재작업률 등이 포함됩니다. 이를 통해 프로세스 최적화와 문제 해결이 가능합니다.
- 제품 지표는 소프트웨어 제품 자체의 품질과 성능을 평가합니다. 코드 복잡도, 결함 밀도, 응답 시간 같은 지표를 활용하여 제품의 품질을 개선하고 사용자 요구사항을 충족시킬 수 있습니다.
- 프로젝트 지표는 일정, 비용, 자원 사용 등을 평가하여 프로젝트 진행 상황과 리스크를 관리합니다. 일정 준수율, 작업 완료 비율, 비용 초과율 등이 주요 지표로 사용됩니다.
2021.01.24 - [Software Engineering] - 일반적인 소프트웨어 측도 (Measurement)의 유형
소프트웨어 측정을 위한 지표 유형
종류 | 측정 난이도 |
지표 이름 | 설명 |
프로세스 지표 | 낮음 | 결함 발견률 (Defect Detection Rate) |
• 정의: 특정 단계에서 발견된 결함 비율. • 공식: (발견된 결함 수 / 전체 결함 수) × 100 • 활용: 테스트 단계에서 결함 발견 효율성을 평가. |
프로세스 지표 | 낮음 | 작업 완료 시간 (Task Completion Time) |
• 정의: 특정 작업을 완료하는 데 걸린 평균 시간. • 활용: 작업 속도 및 일정 관리에 유용. |
프로세스 지표 | 낮음 | 재작업률 (Rework Rate) |
• 정의: 초기 작업 완료 후 수정된 작업 비율. • 공식: (재작업량 / 총 작업량) × 100 • 활용: 초기 작업 정확성을 평가하고 프로세스 개선에 활용. |
프로세스 지표 | 낮음 | 테스트 효율성 (Test Efficiency) |
• 정의: 테스트 단계에서 발견된 실제 결함의 비율. • 공식: (테스트에서 발견된 실제 결함 수 / 테스트에서 발견된 전체 결함 수) × 100 • 활용: 테스트 프로세스의 정확성을 평가. |
제품 지표 | 낮음 | 코드 라인 수 (Lines of Code, LOC) |
• 정의: 소스 코드에서 총 작성된 코드 줄 수. • 활용: 프로젝트 규모를 평가하거나 생산성을 측정하는 데 사용. • 장점: 간단하게 측정 가능. • 한계: 코드 품질과 관련 없을 수 있음. |
제품 지표 | 낮음 | 결함 밀도 (Defect Density) |
• 정의: 코드 라인 1,000줄(LOC)당 발견된 결함의 수. • 공식: 발견된 결함 수 / (코드 라인 수 / 1,000) • 활용: 코드 품질을 평가하고 결함 감소 목표를 설정. |
제품 지표 | 낮음 | 코드 커버리지 (Code Coverage) |
• 정의: 테스트된 코드의 비율. • 공식: (테스트된 코드 줄 수 / 전체 코드 줄 수) × 100 • 활용: 테스트 범위 평가 및 결함 발견 확률 향상. |
제품 지표 | 낮음 | 기능 수 (Number of Features) |
• 정의: 소프트웨어가 제공하는 기능의 개수. • 활용: 기능 추가에 따른 사용자 만족도나 요구사항 충족도 평가. |
프로젝트 지표 | 낮음 | 일정 준수율 (Schedule Adherence) |
• 정의: 계획된 일정에 대한 실제 완료율. • 공식: (완료된 작업 수 / 계획된 작업 수) × 100 • 활용: 프로젝트가 일정에 맞게 진행되고 있는지 평가. |
프로젝트 지표 | 낮음 | 비용 준수율 (Cost Adherence) |
• 정의: 계획된 예산 대비 실제 사용된 비용 비율. • 공식: (사용된 비용 / 계획된 비용) × 100 • 활용: 예산 초과 여부와 재무적 건전성을 평가. |
프로젝트 지표 | 낮음 | 작업 완료 비율 (Task Completion Rate) |
• 정의: 전체 작업 중 완료된 작업의 비율. • 공식: (완료된 작업 수 / 전체 작업 수) × 100 • 활용: 프로젝트 진행 상태를 간단히 평가. |
프로젝트 지표 | 낮음 | 리소스 활용률 (Resource Utilization Rate) |
• 정의: 프로젝트에서 자원이 얼마나 효율적으로 사용되고 있는지 평가. • 공식: (활용된 자원 시간 / 계획된 자원 시간) × 100 • 활용: 자원 낭비나 과도한 사용 여부 평가. |
프로세스 지표 | 중간 | 프로세스 주기 시간 (Process Cycle Time) |
• 정의: 개발 단계마다 평균적으로 소요되는 시간. • 활용: 병목 현상 식별 및 프로세스 최적화. |
프로세스 지표 | 중간 | 변경 요청 처리 시간 (Change Request Turnaround Time) |
• 정의: 변경 요청이 접수된 후 처리 완료까지 걸린 시간. • 활용: 요구사항 변경 관리 효율성 평가. |
프로세스 지표 | 중간 | 버그 누수율 (Bug Leakage Rate) |
• 정의: 릴리즈 후 발견된 결함 비율. • 공식: (릴리즈 후 발견된 결함 수 / 전체 결함 수) × 100 • 활용: 프로세스 내 테스트 단계의 품질 평가. |
프로세스 지표 | 중간 | 생산성 지표 (Productivity Metrics) |
• 정의: 일정 기간 동안 완료된 작업량 대비 투입된 시간. • 공식: 완료된 작업량 / 소요 시간 • 활용: 팀의 생산성 평가 및 비교. |
제품 지표 | 중간 | 결함 심각도 (Defect Severity) |
• 정의: 발견된 결함이 시스템이나 사용자에게 미치는 영향의 정도. • 활용: 주요 결함에 우선순위를 부여하고 자원을 효율적으로 활용. |
제품 지표 | 중간 | 응답 시간 (Response Time) |
• 정의: 사용자 요청에 대한 시스템의 평균 응답 시간. • 활용: 사용자 경험과 시스템 성능을 평가. |
제품 지표 | 중간 | 처리량 (Throughput) |
• 정의: 단위 시간당 처리되는 작업의 수. • 활용: 시스템의 성능과 확장성을 평가. |
제품 지표 | 중간 | 모듈 결합도 (Coupling) |
• 정의: 모듈 간의 의존성 수준. • 활용: 의존성을 줄여 유지보수성과 확장성을 개선. |
제품 지표 | 중간 | 모듈 응집도 (Cohesion) |
• 정의: 모듈 내부 구성 요소들이 얼마나 밀접하게 연관되어 있는지. • 활용: 높은 응집도를 통해 코드의 가독성과 재사용성을 높임. |
프로젝트 지표 | 중간 | 소요 시간 대비 작업량 (Effort Variance) |
• 정의: 실제 소요 시간과 계획된 시간 간의 차이. • 공식: (실제 소요 시간 - 계획된 시간) / 계획된 시간 × 100 • 활용: 계획 대비 작업 효율성 평가. |
프로젝트 지표 | 중간 | 프로젝트 리스크 지수 (Project Risk Index) |
• 정의: 프로젝트의 주요 리스크와 그 심각도를 정량화한 지수. • 활용: 프로젝트 리스크 관리의 우선순위를 설정. |
프로젝트 지표 | 중간 | 자원 할당 효율성 (Resource Allocation Efficiency) |
• 정의: 자원의 적절한 할당 여부를 평가. • 활용: 과도한 리소스 투입이나 부족 문제를 해결. |
프로젝트 지표 | 중간 | 작업 지연율 (Task Delay Rate) |
• 정의: 계획된 완료 시간 대비 지연된 작업의 비율. • 공식: (지연된 작업 수 / 전체 작업 수) × 100 • 활용: 일정 관리에서 병목 현상을 식별. |
프로세스 지표 | 높음 | 자원 활용도 (Resource Utilization) |
• 정의: 개발 과정에서 인력, 도구, 시간 등의 자원이 얼마나 효율적으로 사용되었는지 평가. • 활용: 비용 효율성을 분석하고 최적화. |
프로세스 지표 | 높음 | 프로세스 안정성 (Process Stability) |
• 정의: 프로세스가 얼마나 일정하고 예측 가능하게 작동하는지 평가. • 활용: 프로세스 변동성을 줄이고 품질 향상을 도모. |
프로세스 지표 | 높음 | 결함 수정 시간 (Defect Fix Time) |
• 정의: 결함 발견 후 수정까지 걸린 평균 시간. • 활용: 결함 수정 프로세스의 효율성을 평가. |
프로세스 지표 | 높음 | 효율성 지표 (Efficiency Metrics) |
• 정의: 프로세스에서 투입된 자원 대비 산출물의 비율. • 공식: 유효 작업 시간 / 전체 작업 시간 × 100 • 활용: 작업의 비효율적인 부분을 찾아 개선. |
제품 지표 | 높음 | 코드 복잡도 (Cyclomatic Complexity) |
• 정의: 코드 내 논리 경로의 수를 측정하여 코드의 복잡도를 평가. • 공식: 코드의 제어 흐름 그래프에서 노드 수 - 간선 수 + 2. • 활용: 복잡한 코드를 간소화하고 결함 발생 가능성을 줄임. |
제품 지표 | 높음 | 결함 재발률 (Defect Recurrence Rate) |
• 정의: 수정된 결함이 다시 발생하는 비율. • 활용: 결함 수정의 품질을 평가하고 프로세스 개선. |
제품 지표 | 높음 | 시스템 가용성 (System Availability) |
• 정의: 시스템이 정상 작동한 총 시간 대비 계획된 작동 시간의 비율. • 공식: (가동 시간 / 총 시간) × 100 • 활용: 시스템 안정성 평가 및 개선. |
제품 지표 | 높음 | 사용자 만족도 (User Satisfaction) |
• 정의: 사용자 피드백이나 설문조사를 통해 시스템이 사용자 요구를 충족시키는 정도를 평가. • 활용: 소프트웨어 품질 및 사용자 경험 개선. |
제품 지표 | 높음 | 기능 충족도 (Requirements Fulfillment) |
• 정의: 소프트웨어가 초기 요구사항을 얼마나 충족했는지 평가. • 활용: 개발 초기 요구사항 정의와 구현 간의 일치도 평가. |
프로젝트 지표 | 높음 | 예측 완료 지수 (Estimate to Complete, ETC) |
• 정의: 현재 상태를 기준으로 프로젝트 완료에 필요한 추가 작업량 또는 비용. • 공식: (남은 작업량 × 현재 속도에 기반한 예상 시간). • 활용: 프로젝트 일정 및 예산 계획을 조정. |
프로젝트 지표 | 높음 | Earned Value Management (EVM) 지표 |
• 정의: 프로젝트의 일정과 비용 성과를 동시에 평가하는 포괄적 지표. • 활용: 프로젝트가 예산과 일정에 얼마나 부합하는지 종합적으로 분석. • 예시 지표: • PV (Planned Value): 계획된 작업의 예상 비용. • EV (Earned Value): 완료된 작업의 실제 가치. • AC (Actual Cost): 완료된 작업에 사용된 실제 비용. |
프로젝트 지표 | 높음 | 버퍼 소모율 (Buffer Burn Rate) |
• 정의: 프로젝트 일정에서 사용된 버퍼 시간의 비율. • 활용: 일정 관리에서 위험과 유연성을 평가. |
프로젝트 지표 | 높음 | 품질 비용 (Cost of Quality) |
• 정의: 품질을 유지하거나 결함을 해결하기 위해 소요된 총 비용. • 활용: 품질 관리의 비용 효율성을 평가. |
프로젝트 지표 | 높음 | 프로젝트 성공 확률 (Probability of Success) |
• 정의: 현재 상태를 기반으로 프로젝트가 성공적으로 완료될 확률을 정량화. • 활용: 데이터 기반의 리스크 관리와 의사결정을 지원. |
728x90
반응형
'Software Engineering' 카테고리의 다른 글
객체지향 프로그래밍에서 클래스(Class)와 객체(Object): 핵심 개념 이해하기 (1) | 2024.12.14 |
---|---|
소프트웨어공학: 테스트 케이스(Test Case)의 핵심 구성 요소 (2) | 2024.12.14 |
소프트웨어 측정(Software Measurement) - 개요 및 종류 (1) | 2024.12.11 |
소프트웨어 추적성 (Software Traceability) - 소프트웨어 품질 확보의 출발점 (1) | 2024.12.04 |
소프트웨어 엔지니어가 갖춰야 할 핵심 역량 - 소프트웨어 엔지니어는 단순 개발자가 아닙니다. (0) | 2024.12.03 |