소프트웨어 개발 프로젝트

2.1 소프트웨어 개발 프로젝트란?

프로젝트는 유일한 제품이나 서비스를 만들기 위해 수행되어야 할 일시적인 활동과정이다.

“A project is a temporary endeavor undertaken to create a unique product or service”

2.2 SI방식의 소프트웨어 개발 프로젝트

절차 발주자 수주자
입안 프로젝트 구상, 발의 내부 승인  
발주 RFP 작성 및 배포  
제안 제안내용의 문의에 응대 제안서 작성
평가 제안서 평가 제안발표(presentation)
협상 우선협상대상자 선정 및 조정 (가격, 일정, 품질 등)
계약 계약서 날인 및 프로젝트 kick-off

2.2.1 입안

발주자측 내부승인 얻기위해 “프로젝트 개요서(project charter)”를 작성

  • 프로젝트를 진행하고자 하는 이유
  • 수행방안에 대한 구상
  • 수행범위
  • 필요 예산 및 기간
  • 수행 이후 예상되는 결과 및 효과

2.2.2 발주

RFP 완성하여 수주측에 배포

  • 프로젝트 목적
  • 수행 범위
  • 추진 일정
  • 예산 내역
  • 산출물
  • 기타
    • 기술적인 요구사항
    • 인터페이스 요구사항
    • 품질 수준
    • 인수 기준

2.2.3 제안

제안PM(Project Manager)선정, 제안만하는 PM도 있음.

  • 제안관련 이해관계자 의견수람
  • 제안 내부평가를 위한 리허설
  • 제안내역 평가
  • 최종 제안서 제출 결정

제안서

  • 제안 목적
  • 제안 기업 소개
    • 제안 기억의 전문성 및 수행 프로젝트 이력
  • 제안 내용
    • 수행범위 및 제안사의 솔루션
    • 프로젝트 수행일정 및 예산내역
    • 품질관리 및 품질보증 방법
  • 프로젝트 수행방법
    • 소프트웨어 개발방법론 및 프로젝트 관리방법론
    • 소프트웨어 테스트 전략 및 수행방안
    • 프로젝트 조직구성, 투입인력, 관리도구

2.2.4 평가

기술평가 항목의 예

  • 제안업체 일반평가(경영상태, 수행경험, 투입인력의 적절성)
  • 추진전략(사업 이해도, 추진 전략)
  • 기술 및 기능(기능요구사항, 보안 등)
  • 성능 및 품질(품질 요구사항)
  • 프로젝트관리(관리방법론, 일정계획)
  • 기타(교육훈련, 하자보수, 기밀유지 등)

2.2.5 협상

  • 제안가격에 대한 조정
  • 수행업무 범위와 도입 솔루션 재조정
  • 상세 일정에 대한 협의 및 조정
  • 품질기준에 대한 조정
  • 제약조건 및 가정사항 협의
  • 잠재적인 위험요인 협의

2.2.6 계약

프로젝트 수행계획서 : 제안서보다 훨씬 상세한 내용을 담고 있음.

일반적인 첨부문서

  • 프로젝트 수행계획서
  • WBS(Work Breakdown Structure)
  • 수주업체 관련 증빙서류
    • 사업자등록증
    • 투입인력 내역
    • 각종 자격증명 등 증빙서류

2.3 프로젝트의 성공과 실패

범위, 일정 예산

  • 범위 : 완수해야할 업무를 모두 수행(process)하여 약속된 결과물을 도출(product 혹은 service)
  • 일정 : 프로젝트 수행한느 동안 WBS(workbreakdown structure)에서 제시한 마일스톤(분석, 설계 등 중간 단계들이 완성되는 일정)
  • 예산 : 원가

실패 기준

  • 범위 실패 : 요구 기능 구현 실패
  • 일정 실패 : 납기 실패
  • 예산 실패 : 예산 초과

2.3.1 범위

  • 프로세스 범위 : 제품 또는 서비스등, 결과의 도출을 위해 필요한 작업의 수행
    • 비즈니스 요구사항
    • 프로젝트관리 요구사항
    • 인도 요구사항
  • 프로덕트 범위 : 제품 또는 서비스의 결과를 특징짓는 형태 및 기능(features and functions)
    • 기술적 요구사항
    • 안전 요구사항
    • 성능 요구사항

2.3.2 일정

  • 일정수립절차
    1. 활동의 정의
    2. 활동의 배열
    3. 활동에 투입된 인력자원 추정
    4. 활동의 기간 추정
    5. 활동 간의 선후관계 조정
    6. 일정과 자원의 조정을 통한 시간과 노력의 절감 노력을 계획에 반영
    7. 최종 일정의 검토 확인

2.3.3 예산

  • 투입되는 자재(HW, 네트워크 자원, 프로젝트 관리도구 등)의 재료비
  • 투입인력(PM, 개발자, DBA, QA 등)의 인건비
  • 각종 부대비용(교육, 워크샵, 세미나, 회의비, 야근식대, 교통비 등)

통제활동

  • 비용지출이 승인된 한계를 초과하지 않도록 확인
  • 승인된 예산 기준과 비용지출의 차이를 분석, 모니터링
  • 예상치 못한 비용의 발생에 대해 적절한 계획을 조정 및 승인
  • 비용발생에 대하여 이해관계자들간의 조율

2.4 미국 프로젝트의 실패와 원인

분류 내용
계획과 추정 요인 초기에 수립된 원가와 일정에 대한 추정이 프로젝트 진행에 따라 개선되지 않음 / 계획이 프로젝트 진척을 위한 기이드로 올바르게 사용되지 못함.
실행 요인 프로젝트 범위의 변경 / 프로젝트 방법론의 부적절한 사용 / 주요 요구사항의 변경 / 불성실한 테스트와 검증
인간적 요인 필요한 기초기술에 대해 제대로 훈련되지 않은 PM / 프로젝트 관리 이론이 실무에 적용안됨 / 커뮤니케이션 부족