테일러링
1. 테일러링
- 소프트웨어 개발모델을 프로젝트에 맞게 최적화
필요성
- 내부적 요건: 목표환경, 요구사항, 프로젝트 규모, 보유 기술 등
- 외부적 요건: 법적 제약사항, 표준 품질 기준 등
2. 소프트웨어 개발 프로젝트
- 관리요소: 인적 자원(People), 일정(Process), 문제 인식(Problem)
| 일정 | 활동 순서, 활동 기간 산정, 일정 개발, 일정 통제 |
| 비용 | 원가 산정, 예산 편성, 원가 통제 |
| 투입 자원 | 팀 편성 및 관리, 자원 산정, 조직 정의, 자원 통제 |
| 위험 | 위험 식별, 위험 평가, 위험 대처, 위험 통제 |
| 품질 | 품질 계획, 품질 보증 수행, 품질 통제 수행 |
프로젝트 일정 관리
원칙
- 여러 개의 작업으로 분할
- 프로젝트 참여인원은 프로젝트 시작 전에 결정 (이유: Brooks의 법칙 - 진행중에 새로운 인원 투입시 뷁)
방법론
- PERT: 예측치 = (낙관치+(4*기대치)+비관치)/6 // 개발 기간 불확실할 때
- CPM: 개발 기간 확실할 때
- 간트 차트: 일정을 막대그래프로
프로젝트 비용 산정 모델
비용 산정의 진리
- 비용이 너무 낮으면 개발자 파업
결정 요소
- 프로젝트: 제품 복잡도, 시스템 크기, 요구 신뢰도
- 자원: 인적 자원, HW 자원, SW 자원
- 생산성: 개발자 역량 (지식, 경험 등). 개발 기간
상향식 비용산정 기법 (작업단위별 산정)
- LOC (Line Of Code)
- 노력 = 개발기간*투입인원 = LOC/인당 월평균 생산코드 라인
- 개발비용 = 노력*월평균 인건비
- 개발기간 = LOC/인당 월평균 생산코드 라인/투입 인원
- 개발기간 = LOC/(인당 월평균 생산코드 라인*투입 인원)
- 생산성 = LOC/노력
- 단계별 노력: 노력에 가중치
- 수학적 산정
- COCOMO
- Putman
- 기능점수 기법: 기능에 가중치
하향식 비용산정 기법 (개발경험으로 근거없이 산정)
- 전문가 측정기법: 전문가들이 산정
- 델파이 측정기법: 조정자가 전문가들 의견 듣고 산정
투입인력 자원 구성
1. 책임 프로그래머 팀 유형
- 중앙집중형, 1인책임 프로그래머, 나머진 보조
- 소규모, 단순한거에 적합
- 팀원들 만족도 낮아서 빨리 튐
2. 민주주의식 팀 유형
- 분산형, 담당 역할 독립적
- 대규모, 복잡한거에 적합
- 팀원들 만족도 높아서 천천히 튐
소프트웨어 품질 관리
1. 개발표준
ISO/IEC 12207
- 표준 SW 수명주기 프로세스
ISO/IEC 12119
- 패키지 SW 제품 품질 요구사항 및 테스트
ISO/IEC 29119
- 소프트웨어 테스트
ISO/IEC 9126(-> 25010)
- 소프트웨어 품질 특성 및 평가 표준
- 9126->25010으로 개정
- 평가항목
| 외부 품질 특성 | 내부 품질 특성 |
| 기능성 | 적합성, 상호운용성, 보안성, 정확성, 준수성 |
| 신뢰성 | 고장허용성, 회복성, 성숙도, 준수성 |
| 사용성 | 학습성, 운영성, 이해도, 친밀성, 준수성 |
| 효율성 | 반응시간, 지원특성, 준수성 |
| 유지보수성 | 분석성, 변경성, 안정성, 테스트 용이성, 준수성 |
| 이식성 | 적용성, 설치성, 공존송, 교체성, 준수성 |
2. CMM (Capability Maturity Model)
- SW 개발 업체 업무능력평가 기준 세우기 위한 성숙도 모델
- SW 자체에는 연관성 없음
- 단계별 프로세스 성숙도 평가 기준
| 초기 | 개발 관리 프로세스 부재 |
| 반복 | 성공한 프로젝트 프로세스 반복 |
| 정의 | 프로세스 정의와 이해 가능 |
| 관리 | 프로세스 성과 측정, 분석, 개선, 관리 가능 |
| 최적화 | 지속적인 품질 개선 진행 |
- 프로세스 관리 품질평가 기준
| 레벨1 | 혼돈적 관리 | 순서의 일관성 부재 |
| 레벨2 | 경험적 관리 | 경험을 통한 관리 |
| 레벨3 | 정성적 관리 | 경험의 공유 및 공식적인 관리 |
| 레벨4 | 정량적 관리 | 조직적, 통계적 분석을 통한 관리 |
| 레벨5 | 최적화 관리 | 위험 예측 및 최적화 도구 활용 |
3. CMMI (Capability Maturity Model Integration)
- CMM 발전버전
- 단계별 프로세스 성숙도
| 초기 | 표준화된 프로세스 없이 프로젝트 수행결과 예측 곤란 |
| 관리 | 기본적인 프로세스 구축에 의해 프로젝트 관리 |
| 정의 | 세부 표준 프로세스 기반 프로젝트 통제 |
| 정량적 관리 | 프로세스 활동 정략적 관리, 통제되고 성과 예측 가능 |
| 최적화 | 지속적인 개선활동 정착화 |
4. SPICE
- 단계별 프로세스 성숙도
| 레벨0 | 불완전 | 프로세스 없음 |
| 레벨1 | 수행 | 프로세스 목적있는데 계획, 추적안됨 |
| 레벨2 | 관리 | 프로세스 수행이 계획되고 관리됨 |
| 레벨3 | 확립 | 표준 프로세스 사용해 계획되고 관리 |
| 레벨4 | 예측가능 | 표준 프로세스 능력에 대해 정량적인 이해와 성능 예측 |
| 레벨5 | 최적 | 정의된 프로세스와 표준 프로세스 지속 개선 |
5. CASE 도구
- 자동화
- 구조적 기법, 프로토타이핑, 자동 프로그래밍, 정보 저장소, 분산 처리
- 도구는 비싼데 개발비용과 기간은 절감
- 종류: SADT, SREM, TAGS, PSL/PSA
프로젝트 형상 관리
형상관리
- 산출물 변경과정(version) 체계적 관리
- 프로세스
| 형상 식별 | 기준선 정하기 |
| 형상 통제 | 변경 요구 검토승인 |
| 형상 상태 보고 | 결과 기록 |
| 형상 감사 | 무결성 공식 승인 |
'자격증 > 정보처리기사(실기)' 카테고리의 다른 글
| [정보처리기사 실기] 소프트웨어 개발 방법론 (0) | 2026.10.20 |
|---|
댓글