일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 노출모듈패턴
- 처리량
- 3-way handshake
- 스레싱
- 프록시패턴
- PERT/CPM
- 개발 모델
- 지연시간
- MongoDB
- 4-way handshake
- 프로젝트 계확
- M/M
- 다크모드
- 럼바우
- nosql
- MVVM
- 다단계 큐
- 요구사항 분석
- 절차형
- 선언형
- CPU 스케줄링
- 인터넷계층
- 프로그래머스 데브코스
- 페이징 교체 알고리즘
- modebit
- 함수형
- 메모리
- 관계형 데이터베이스
- redis
- 링크계층
- Today
- Total
노트
프로젝트 계획 본문
1. 프로젝트 관리
1) 개념: 특정한 목적을 가진 프로젝트를 한정된 기간, 예산, 자원 내에서
사용자가 만족할 만한 제품을 개발하도록 행하는 기술적, 관리적 활동
2) 프로젝트 관리의 목적
- 납기준수, 예산준수, 품질 준수를 통한 고객 만족 달성
- 고품질의 제품 개발 및 개발 절차 준수
3) 프로젝트 핵심 관리 대상(3P): 사람(People), 문제(Problem), 프로세스(Process)
4) PMBOK(Project Management Body of Knowledge)
PMI(Project Management Institute)에서 제작한 프로젝트 관리 프로세스 및 지식 체계
PMBOK 5단계 프로세스 그룹
1단계: 프로젝트 착수 - 광범위한 프로젝트 범위를 정하는 단계
2단계: 프로젝트 계획 - 프로젝트의 세부 범위 정의, 관리 계획을 만드는 단계, 비용, 품질, 기간, 자원이 포함
3단계: 프로젝트 실행 - 프로젝트가 개발되고 완료되는 단계
4단계: 프로젝트 통제 - 계획 대비 목표의 진척상황을 모니터링하고 성과를 측정하는 단계
5단계: 프로젝트 종료 - 프로젝트가 요구사항을 만족하는지 검증(개발자가 수행), 고객으로부터 획인(결과물) 받는 단계
2. 개발 비용 산정
1) 하향식 산정 기법(Top-Down)
- 전문가 기법: 조직 내 경험이 있는 전문가에게 비용 산정을 의뢰
- 델파이 기법: 여러 전문가의 의견을 종합하여 판단
2) 상향식 산정 기법(Bottom-Up)
- LOC(원시코드 라인 수) 기법
- 각 기능의 원시 코드 라인 수의 비관치(가장 많은 라인 수), 낙관치(가장 적은 라인 수), 중간치(기대치, 평균 라인 수)를 측정 후 예측치를 구하고 이를 이용해 비용을 산정
- 추정 LOC = (낙관치 + (4 * 중간치, 기대치) + 비관치 ) / 6
- 단계별 인원수(M/M) 기법
- 소프트웨어 개발 생명주기 각 단계별로 적용시켜 모든 단계의 비용을 산정하는 기법
- LOC보다 정확성을 기하기 위한 기법
- Man Month = LOC / 프로그래머 월간 생산성
- 프로젝트 기간 = Man Month / 프로젝트 인력
3) 수학적 산정 기법
- COCOMO 기법
- 조직형: 5만 라인 이하, 일본 업무용 소프트웨어
- 반분리형: 30만 라인 이하, 운영체제, DBMS 등
- 내장형: 30만 라인 이상, 미사일 유도 시스템, 신호기 제어
- PUTNAM 기법
Putanm이 제안한 생명 주기 예측 모형
- 소프트웨어 생명 주기의 전 과정 동안 노력의 분포를 가정해 주는 모형
- 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초
- SLIM: Rayleigh-Norden 곡선과 Putnam 예측 모형을 기초로 개발한 자동화 추정 도구
- 개발 기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소
- FP(Function Point, 기능 점수) 기법
- 소프트웨어가 가지는 기능의 개수를 기준으로 규모를 측정하는 기법
- ESTIMACS: FP 모형을 기초로 개발된 자동화 추정 도구
- 비용 산정에 이용되는 요소: 자료 입력(입력 양식), 정보 출력(출력 보고서), 명령어(사용자 질의수), 데이터 파일, 필요한 외부 루틴과의 인터페이스
3. 개발 일정 산정
1) 소프트웨어 개발 일정 계획
- 어떤 작업이 필요한지 정의, 작업의 우선순위를 정하여 프로젝트 일정에 대한 계획을 세우는 것
- 작업 순서: 작업 분해(WBS), CPM 네트워크 작성, 최소 소요 기간을 구함, 소요 M/M, 기간 산정하여 CPM 수정, 간트 차트로 표현
2) WBS(Work Breakdown Structure)
- 프로젝트 목표를 달성하기 위해 필요한 활동과 업무를 세분화하는 작업
- 작성 방법: 전체를 큰 단위로 분할, 각각의 부분에 대해 좀 더 작은 단위로 분해, 계층적으로 표현, 담당인원을 배치해 구성도 작성
- WBS 역할: 업무를 식별, 일정계획과 산정, 전체일정 진행상황 파악, 이해당사자들 간의 의사소통
3) Network Chart(PERT/CPM)
- PERT: 미 해군의 Polaris 미사일 개발 프로젝트의 일정계획 및 진행과정을 효율적으로 관리를 위해 개발, 전체 프로젝트의 시간 단축을 목표, 개발 기간을 낙관치, 기대치, 비관치로 나누어 예측치(LOC와 계산 동일)를 구함.
- CPM: 미국의 듀폰사와 레밍톤사의 화학공장 유지 및 관리를 위해 개발, 최소의 비용 추가 투입을 고려 전체 프로젝트의 시간 단축을 목표
- PERT/CPM: 작업의 선행/후행 관계를 고려 전체작업 완료시간을 결정(PERT), 추가비용 투입을 고려하여 전체작업 완료시간을 단축하는(CPM) 네트워크 분석 기법, 임계경로 - 프로젝트를 끝내기 위해 필요한 최소 소요 시간
CPM 소작업 리스트
작업 | 선행작업 | 소요기간(일) |
A | - | 15 |
B | - | 10 |
C | A, B | 10 |
D | B | 25 |
E | C | 15 |
CPM 네트워크 작성
- 임계경로(Critical Path): 40일(A -> C -> E -> END 40일, B -> D -> END는 35일)
- D의 가장 빠른 착수일: 10일(B를 완료하자마자 시작)
- D의 가장 늦은 착수일: 15일(B를 완료 + 여유기간(5일) 후 시작)
- D의 여유기간: 5일 (B -> D -> END 최소 35일, 임계경로는 40일)
4) 간트 차트(Gantt chart)
- 일정 계획의 최종 산출물
- 프로젝트 일정관리를 위한 바(bar) 형태의 도구
- 각 업무별로 일정의 시작과 끝을 그래픽으로 표시, 전체 일정을 한눈에 볼 수 있음.
- 각 업무(activities) 사이의 관계를 보여줌.
'정보처리기사 정리' 카테고리의 다른 글
2 데이터 입출력 구현 (0) | 2024.04.16 |
---|---|
소프트웨어 설계의 기본 원칙 (0) | 2024.04.15 |
요구사항 모델링 (0) | 2024.04.13 |
요구사항 분석 (0) | 2024.04.12 |
소프트웨어 공학, 방법론 (0) | 2024.04.11 |