[설계패턴]프로젝트 계획 정리
류명운
·2015. 10. 10. 23:30
프로젝트란?
: 비즈니스 가치를 창조하는 시스템을 만드는 처음부터 마지막까지의 작업 집합을 뜻함
* 프로젝트 착수 단계에는 정보 기술을 사용하여 얻을 수 있는 비즈니스 가치를 찾고 타당성을 분석한다.
계획 단계의 작업 과정
Step 1. 비즈니스 목표의 설정
Step 2. 시스템 개발 요청 정의
Step 3. 타당성 분석
Step 4. 프로젝트 개발 일정과 비용 산정
Step 5. 계획서 작성
1. 비즈니스 목표 설정
전략적 계획(strategic plan)
: 기관의 장기적인 목표나 전략, 그리고 이를 위한 자원들을 찾는 과정(장기적인 큰 그림, 로드맵)
전략 계획을 수립할 때 유용한 질문: 강점(Strong), 약점(Weak), 기회(Opportunity), 위기(Threat)를 파악하는 SWOT 분석
SWOT 분석 결과 사례(특정 기관의 IT 자원이 어떤 경쟁력이 있는지 파악하는)
강점(Strength) - 웹 디자인 인력의 우수 - 분석가의 이직률 낮음 - 네트워크 시스템의 성능 |
약점(Weakness) - 노후 시스템 - 예산 동결 - 문서화 부재 |
기회(Opportunity) - 최초의 새로운 소프트웨어 - B2B 잠재 성장력 |
위험(Threat) - 웹 경쟁력 가속화 - 경쟁사의 공격적 마케팅 |
경영 목표
: 기업이나 기관은 목적, 비전, 가치를 근거로 미션 선언문(mission statement)이나 비전 선언문을 가지고 있다.
- 미션 선언문: 프로젝트 계획의 시작점이며 기관의 주요한 목표나 단기 목표, 일상 비즈니스 활동을 위한 기초가 된다. 또한 관련자들을 위하여 기관에 대한 설명과 기관 전체의 설립 목적, 제품, 서비스, 가치들이 기술되어 있다(관련자는 고객, 사원, 주주, 협력업체, 이웃 주민 등)
|
2. 프로젝트 선정
: 프로젝트는 시스템을 구축하여 얻는 비즈니스 가치를 기관의 누군가가 감지 했을 때 시작된다.
: 프로젝트 선정에 중요한 열쇠를 쥐고 있는 사람은 프로젝트 스폰서이다.
* 비즈니스 필요성의 제기는 시스템에 대한 요구를 창출한다.
* 요구란 정보 시스템이 무엇을 하는지, 즉 시스템이 제공하는 기능을 말한다.
프로젝트의 필요성
: 소프트웨어 시스템을 개발하기 위한 필요는 기업 내부나 외부에서 일어나는 여러 가지 요인들로부터 나온다. 시스템 개발 요청서는 이러한 필요성을 공식으로 문서로 요청한 것이다.
시스템 개발을 요청하는 여섯 가지 주된 요인(성서제비정신)
1) 성능 개선
2) 서비스 향상
3) 제어력 강화
4) 비용 절감
5) 정보 증대
6) 신제품 또는 서비스 지원
시스템 개발 요청서
: 시스템 구축의 필요성과 시스템이 제공할 것으로 예상하는 가치를 정리한 문서
시스템 개발 요청서 구성요소
- 프로젝트 스폰서, 비즈니스 필요성, 비즈니스 요구, 비즈니스 가치, 제한 사항 등
3. 타당성 분석
: 프로젝트를 계속할 것인지 말 것인지를 위원회가 결정하는 데 가이드 하는 작업
: 프로젝트가 승인되었을 때 언급되어야 할 프로젝트와 관련된 중요한 위험 요소를 찾는 것
: 타당성 분석의 세 가지 측면-기술적,경제적,조직적 측면
기술적 타당성(개발할 수 있는가?)
: 시스템을 성공적으로 설계하고 개발하여 설치할 수 있는지
- 응용 분야에 익숙한가?
- 기술에 익숙한가?
- 프로젝트 크기
- 호환성
경제적 타당성(개발하여야 하는가?)
: 비용수익 분석이라고도 하는데 프로젝트와 관련된 재정적인 위험을 파악하는 작업이다
- 개발 비용, 연간 운영 비용, 연간 이익, 정성적 비용과 이익- 비용수익 분석의 각 단계
1) 비용수익 요소 파악 2) 비용수익 금액 파악 3) 연도별 수익 계산 4) 프로젝트 경제적 가치 계산 * ROI(Return on Investment): 투자에 의하여 얻는 수익률을 계산한다 * 손익분기점(Break Even Point): 프로젝트에 소요되는 비용을 회수하는 데 걸리는 기간 * 현재 가치(Net Present Value): 수익의 현재 가치가 총 비용의 현재 가치를 능가하는지 판단 - ROI(수익률) 계산법: (총 수익-총비용)/총비용 - 손익분기점 잔여: (연간 수익-누적 수익)/연간 수익 - 현재 가치: 금액/(1+이자율)^n [n은 연도] |
- 비용수익 요소 파악
: 눈에 보이는 이익: 개발 비용(급여, 소프트웨어 및 하드웨어 비용, 교육비 등) 등
: 눈에 보이지 않는 이익: 시장 점유율 증가 등
조직 측면의 타당성(우리가 개발할 수 있는가?, 참여할 수 있는가?)
: 시스템이 완성된 후 사용자에게 얼마나 잘 받아들여질 것인가, 또한 조직에서 진행 중인 운영에 얼마나 잘 융합될 수 있는가를 평가한다. 프로젝트에 영향을 줄 수 있는 조직적인 요인이 많이 있다
: 관련자 - 프로젝트 관리자, 고위 경영층, 사용자, 기타 관련자
1) 전략적 정렬 방법: 프로젝트의 목표와 비즈니스 목표를 얼마나 잘 맞추었는지 이해하기 위해 프로젝트와 비즈니스 전략을 맞추는 것
2) 프로젝트 관련자들에 대한 분석: 새로운 시스템과 관련 있는 중요한 당사자들은 프로젝트 주관자, 시스템 사용자, 조직 내 경영층 등이다
4. 규모 산정
: 프로젝트 수행에 대한 타당성이 검토되고 긍정적으로 결론이 났다면 다음에는 계획에 대한 더 구체적인 작업에 들어가는데 바로 규모 산정이다
프로젝트의 상충관계(프로젝트 관리에 영향을 미치는 중요한 세 가지 요소)
1) 시스템의 규모(기능)
2) 프로젝트에 걸리는 시간(일정)
3) 소요되는 비용(인력)
-> 세 가지 변수는 서로 밀접히 관련되어 있고 영향을 주는 상충관계(trade-off)에 있어 잘 저울질하여 균형을 맞추어야 한다.
프로젝트 삼각 시소: 일정, 비용, 기능
시스템을 구축하는 데 소요되는 기간을 예측하는 간단한 방법
: 계획 단계에 걸린 시간을 기초로 전체 프로젝트에 걸리는 기간을 추정함
시스템 개발 구축 각 단계 별 소요시간(산업계 통개)
- 계획 단계(15%)
- 분석 단계(20%)
- 설계 단계(35%)
- 구현 단계(30%)
(Quiz) 계획 단계에 4개월이 걸렸다면 4/0.1 = 26.66개월 소요
기능 점수 방법
: 소프트웨어가 갖는 기능을 점수로 환산하여 소프트웨어 규모를 나타내고, 이를 시스템 개발에 필요한 기간과 소요 인력 계산의 기초로 삼는 방법이다
기능 점수 계산 -> 노력 예측(인원-월) -> 소요 기간 예측 |
1) 기능 점수 계산 : 시스템의 일반적인 주요 기능, 즉 입력, 출력, 질의, 파일, 인터페이스의 개수와 난이도를 기초로 프로그램의 크기를 예측하는 방법이다 : 프로젝트 관리자는 시스템에 포함될 각 컴포넌트의 개수를 기록하고 복잡도에 따라 상, 중, 하로 나눈다 : 전체 시스템의 복잡도는 컴포넌트들의 합보다 크다 * 보정된 프로젝트 복잡도(APC) = 기본값 + (0.01*총 처리 복잡도[TPC]) * 보정된 총 기능 점수(TAFP) = 보정된 프로젝트 복잡도[APC] * 보정 전 기능 점수[TUFP] |
2) 노력 산정 : 시스템의 크기와 단위 시간당 작업량, 즉 생산성을 곱한 것이다 * 노력(인원-월) = 인원*코드(줄단위) |
3) 소요 기간 산정 : 소요되는 노력 값을 산정한 후에는 프로젝트를 위한 적합한 일정을 산정한다 * 소요 일정(개월) = 3.0*인원-월^1/3 |
5. 일정 계획
: 프로젝트의 규모와 대략적인 일정을 산정한 후에는 작업 계획을 세운다
작업 계획
: 프로젝트 전반에 걸쳐 성취하여야 할 모든 작업을 기록하고 추적할 일정이다
: 각 작업이 언제 완성되어야 하고, 누가 작업할 것인지, 어떤 결과가 나와야 하는지 등 중요한 정보를 담고 있다
: 작업 계획을 완성하기 위하여 프로젝트 관리자는 먼저 수행하여야 할 작업을 파악하고 얼마나 걸릴 것인지 결정한다. 다음에는 작업을 작업 분할 구조(Work Breakdown Structure)로 구성하고 간트 차트로 표현한다.
작업 파악
: 시스템의 목표는 시스템 개발 요청서에 나와 있다. 프로젝트 관리자는 이를 기초로 목표를 달성하기 위하여 필요한 모든 작업을 파악하여야 한다
: 프로젝트의 주요 작업 단계는 요구 정의 및 설계를 하고 구현 및 테스트를 한다. 각 작업은 계층적으로 번호가 매겨지는데, 이를 작업 분할 구조라고 부르며 프로젝트 작업 계획의 뼈대가 된다
간트 차트(Gantt chart)
: 프로젝트의 작업 계획에 대한 정보를 제공해 주는 수평 막대형 차트
: 프로젝트에 관련된 작업 상태 정보를 빠르고 쉽게 표현할 수 있다
: 간트 차트를 생성하는 방법은 스프레트시트를 이용하거나 MS Project와 같은 프로젝트 관리 소프트웨어를 사용하는 것이다
6. 조직 구성
: 프로젝트 조직 구성은 얼마나 많은 인원을 프로젝트에 투입하여야 하는지 결정하며, 각 인원이 프로젝트 수행에 필요한 기술이 무엇인지 결정하는 것이다
조직 구성을 이루는 세 가지 요소: 팀 조직, 동기부여, 갈등해소
팀 조직
: 조직을 구성하는 첫 번째 단계는 프로젝트에 필요한 스탭의 평균 인원을 결정하는 것이다
프로젝트 스탭 평균인원 계산법
: 인원-월을 최적으로 진행할 때 걸리는 기간으로 나누면 된다
- ex) 40인원-월 규모의 프로젝트를 10개월에 완성하려면 4명의 정규직 인력이 필요
프로젝트 인원 배치 시 고려해야 할 2가지 사항
1) 기술적 능력
2) 인간관계 능력
동기부여
: 프로젝트 관리자는 참여자들이 프로젝트를 성공시킬 수 있도록 동기를 부여하여야 한다
동기부여를 위하여 하지 말아야 할 것
1) 비현실적 일정
2) 열심히 일하는 것을 무시함
3) 형편없는 제품 만들기
4) 참여자 모두에게 같은 보상
5) 중요한 결정을 팀원의 의사를 묻지 않고 결정
6) 작업 환경 열악
프로젝트 팀이 실패하는 이유
1) 공동 비전 없이는 팀을 이루기 어렵다
2) 공로를 인정해 주고 보상을 주는 노력이 필요하다
3) 팀원 사이의 신뢰 부족
4) 비협조적이고 문제를 일으키는 튀는 팀원을 그냥 두면 팀 전체 사기가 떨어진다
갈등 해소
: 프로젝트의 역할을 명확히 정의하고 작업을 담당할 만한 인력을 확보하는 것이 프로젝트에 내재된 갈등을 완화하는 출발점이다
2장 프로젝트 계획
Quiz(pp107-109)
1. 프로젝트는 비즈니스 가치 을/를 창조하는 처음부터 마지막까지의 작업이다.
2. 타당성 검토는 기술적 측면, 경제적 측면, 조직적 측면을 고려하여 가능성을 검토한다.
3. 전략적 계획 은/는 기관의 장기적인 목표나 전략, 이를 위한 자원들을 찾는 과정이다.
4. 기업의 목적, 비전, 가치를 근거로 작성한 선언문을 미션 선언문 이라 부른다.
5. 시스템 개발 요청서 은/는 시스템을 구축하기 위한 필요성과 시스템이 제공할 것으로 예상하는 가치를 정리한 문서이다.
6. 프로젝트에 영향을 주는 상충관계에 있는 세 가지 변수는 규모, 시간, 비용 이 있다.
7. 투자 대비 수익률을 ROI(Return on Investment) 라 한다.
8. 기능 점수는 시스템의 주요 기능, 즉 입력, 출력, 질의, 파일, 인터페이스의 개수와 난이도를 기초로 프로그램의 크기를 예측하는 방법이다.
9. 간트차트 은/는 프로젝트의 각 작업이 언제 완성되어야 하고, 누가 작업할 것인지, 어떤 결과가 나와야 하는지 등 중요한 정보를 담고 있다.
10. 조직 구성은 참여자의 역할을 할당하는 것 이외에 동기부여 하는 방법과 갈등해소 하는 방법이 필요하다.
11. 프로젝트 계획에 대한 설명으로 바르지 않은 것은? 라
가. 무엇보다도 비즈니스를 이해하고 목표를 정하는 것부터 출발한다. 나. 프로젝트 착수 단계에서는 정보기술을 사용하여 얻을 수 있는 비즈니스 가치를 찾는 작업을 한다. 다. 계획 단계에서는 무엇보다 위험 요소와 비즈니스 가치에 중점을 두어야 한다. 라. 계획 단계의 결과물은 타당성 분석 결과이다. |
12. 전략적 계획을 수립할 때 분석하는 SWOT 방법에 포함되지 않는 것은? 다(관찰이 아니라 기회:Opportunity 임)
가. 강점(Strength) - 주된 장점이 무엇인가? 나. 약점(Weakness) - 주된 약점은 무엇이며 어떻게 극복할 수 있는가? 다. 관찰(Observation) - 관찰된 사상 중 어떤 중요한 이슈가 있는가? 라. 위험(Threat) - 우리가 당면한 주요 위협은 무엇인가? 이를 대처하기 위해 할 수 있는 것은 무엇인가? |
13. 계획 단계의 순서를 바르게 나타낸 것은? 가(비즈니스 목표 설정->시스템 개발 요청 정의->타당성 분석->프로젝트 개발 일정과 비용 산정->계획서 작성)
ㄱ. 시스템 개발 요청 정의 ㄴ. 타당성 분석 ㄷ. 비즈니스 목표 설정 ㄹ. 계획서 작성 ㅁ. 프로젝트 개발 일정과 비용 산정 |
가. ㄷ -> ㄱ -> ㄴ -> ㅁ -> ㄹ
나. ㄱ -> ㄷ -> ㄴ -> ㅁ -> ㄹ
다. ㄴ -> ㄷ -> ㄱ -> ㄹ -> ㅁ
라. ㄴ -> ㄷ -> ㄹ -> ㄱ -> ㅁ
14. 다음 중 경제적 타당성을 분석하는 과정을 올바로 나열한 것은? 나(비용수익 요소 파악->비용수익 금액 산정->연도별 수익 계산->프로젝트 경제적 가치 계산)
ㄱ. 연도별 수익 계산 ㄴ. 비용수익 금액 산정 ㄷ. 비용수익 요소 파악 ㄹ. 프로젝트 경제적 가치 계산 |
가. ㄷ -> ㄱ -> ㄴ -> ㄹ
나. ㄷ -> ㄴ -> ㄱ -> ㄹ
다. ㄴ -> ㄱ -> ㄹ -> ㄷ
라. ㄴ -> ㄱ -> ㄷ -> ㄹ
15. 기능 점수 방법의 바른 세 단계를 나열한 것은? 나
가. 기능 점수 계산 -> 소요 기간 예측 -> 노력 예측 나. 기능 점수 계산 -> 노력 예측 -> 소요 기간 예측 다. 소요기간 예측 -> 기능 점수 계산 -> 노력 예측 라. 소요기간 예측 -> 노력 예측 -> 기능 점수 계산 |
16. 다음 중 작업 계획에 표현되어야 할 정보로만 모아 놓은 것은? 다
가. 작업 이름, 착수일, 작업 담당자, 우선순위, 작업 도구 나. 작업 이름, 착수일, 작업 담당자, 작업 순서, 우선순위 다. 작업 이름, 착수일, 완성일, 결과물, 완성 상태, 필요한 자원 라. 작업 이름, 착수일, 완성일, 결과물, 예상 시간, 작업 순서 |
17. 다음에 나열한 이익이 눈에 보이는 이익인지 눈에 보이지 않는 이익인지 올바로 구별한 것은? 다
ㄱ 매출 증가 ㄴ 시장 점유율 증가 ㄷ IT 비용 절감 ㄹ 부품비 절약 ㅁ 브랜드 인지도 증가 ㅂ 고객 서비스 향상 |
눈에 보이는 이익 / 눈에 보이지 않는 이익
가. ㄱ, ㄹ, ㅁ ㄴ, ㄷ, ㅂ나. ㄱ, ㄷ, ㅂ ㄴ, ㄹ, ㅁ
다. ㄱ, ㄷ, ㄹ ㄴ, ㅁ, ㅂ
라. ㄱ, ㄷ, ㅁ ㄴ, ㄹ, ㅂ
18. 다음 중 시스템 개발 요청서에 포함되어야 할 정보가 아닌 것은? 나
가. 프로젝트 스폰서 나. 프로젝트 개발자 다. 비즈니스 요구 라. 비즈니스 가치 |
19. 첫해에 이익이 5,000만원이고 다음 4년 동안 500만 원씩 증가하는 이익을 내는 정보 시스템이 있다고 가정해보자. 일회적 개발 비용은 9,000만원이었고 첫해에 시작한 운영비용은 매해 4,000만원이 소요되었다. 이 회사의 할인율을 10%로 적용하고 5년 동안의 투자 대비 수익률(ROI)은 계산하면 얼마인가? (ROI=[총수익-총비용]/총비용)
가. 10% 나. 11% 다. 11.1% 라. 22% |
20. 다음은 프로젝트 조직 구성에 대한 설명이다. 옳지 않은 것은? 나
가. 프로젝트를 빨리 끝내기 위하여 더 많은 인원을 할당하는 것은 오히려 의사소통에 장애가 되어 작업이 지연될 수 있다. 나. 프로젝트 팀 조직을 정할 때는 사람을 정하고 각 사람에 맞는 조직 구조를 정한다. 다. 동기 부여를 위하여 참여자 모두에게 똑같은 보상을 하는 것은 피하여야 한다. 라. 팀원들 사이에 갈등 해소를 위하여 역할을 명확히 정하고 행동 원칙 또는 현장을 정한다. |
'삶의 늪에 들어 가기 전 > 정리중(미정리)' 카테고리의 다른 글
[네트워크 프로그래밍2]이벤트 처리 정리 (0) | 2015.10.11 |
---|---|
[네트워크 프로그래밍2]자바의 GUI, AWT와 SWING 정리 (0) | 2015.10.11 |
[설계패턴]시스템 분석 설계 소개 정리 (0) | 2015.10.10 |
[컴퓨터구조]명령어와 번지지정 방식 / 프로세서와 연산장치 정리 (0) | 2015.10.10 |
[컴퓨터구조]데이터의 표현 정리 (0) | 2015.10.09 |