정보시스템 구축 관리 - 소프트웨어 개발 방법론 활용
정보처리기사
![]()
소프트웨어 재사용
합성 중심: 모듈 끼워 맞추는거생성 중심: 추상화된 컴포넌트를 구체화
소프트웨어 재공학
- 분석
- 재구성: 기능, 외적인 동작은 유지하면서 내부 구조 변경
- 역공학: 기존 코드를 분석
- 이식: 기존 소프트웨어를 다른 환경에 이식할 수 있게 변경
CASE(Computer-Aided Software Engineering): 구조적 기법, 프로토타이핑, 분산 처리 등의 기법으로 소프트웨어 개발 생산성을 향상시키기 위한 자동화 도구
상향식 비용 산정 기법
- LOC
- 예측치: 낙관치, 비관치, 기대치 이용해서 계산
- 노력: LOC / 1인당 월 평균 생산 코드 라인 수
- 개발 비용: 노력 * 단위 비용(인건비 등)
- 개발 기간: 노력 / 투입 인원
- 생산성: LOC / 노력
- 수학적 산정 기법
COCOMO: LOC에 기초한 경험적 모델조직형: 5만 라인 이하의 소프트웨어반분리형: 30만 라인 이하의 소프트웨어임베디드형:대규모소프트웨어
Putnam:Rayleigh-Norden 곡선에 기초하여 노력 산정기능 점수(FP): 소프트웨어 기능 별 가중치를 부여하고 합산하여 노력 산출
프로젝트 일정 계획
PERT(Program Evaluation and Review Technique): 결정 경로, 경계 시간, 작업 간 상호 관련성 파악 가능CPM(Critical Path Method): 프로젝트 일정 계획 및 관리 기법간트 차트: 작업 일정과 진행 상황을 막대 그래프로 표현
소프트웨어 개발 표준
ISO/IEC 12207: 소프트웨어 생명주기 프로세스- 기본, 지원, 조직 생명 주기 프로세스
CMMI(Capability Maturity Model Integration): 개발 조직 업무 능력 및 성숙도 평가 모델- 초기, 관리, 정의, 정량적 관리, 최적화
SPICE(Software Process Improvement and Capability Determination): 소프트웨어 프로세스 평가 및 개선 모델- 불완전, 수행, 관리, 확립, 예측, 최적화