기초지식공부/소프트웨어공학

일정 계획

DevBabamba 2019. 6. 11. 00:31
반응형

KMooc에 공개 되어 있는 '쉽게 배우는 소프트웨어 공학' 강의 내용을 정리한 것입니다.(강의: 공주대학교 컴퓨터공학부 김치수 교수)

또한, https://terms.naver.com/list.nhn?cid=58528&categoryId=58528를 확인하시면, '쉽게 배우는 소프트웨어 공학' 책 또한 공개되어있으니 참고하여주시면 감사하겠습니다.

6.일정 계획

  • 프로젝트의 공통점 : 시작 시점과 끝나는 시점이 정해져 있다.

6.1.SW 개발 project에서의 일정 계획

  • SW개발을 위해 필요한 작업 선정 및 진행 순서 결정
  • 주어진 개발 기간 동안의 소작업 개발 기간 및 순서 결정

6.2.WBS( Work Breakdown Structure)

  • project 목표를 달성하기 위해 필요한 활동과 업무를 세분화라는 작업
  • 실행방법
    • project 구성 요소들을 hierarchy로 분류
    • project의 전체 범위 정의
    • project 작업 세분화

6.2.1.work package

  • 계층 구조에서 최하위에 있는 항목
    • 해당 업무의 담당자를 할당할 수 있을 정도로 작게 나눔

6.2.2.WBS의 목적과 용도

  • 사용자와 개발자 간 의사소통 도구로 사용
  • 프로젝트 업무내역을 가시화 할 수 있어 관리가 용이함
  • 프로젝트 팀원의 책임과 역할이 분명함
  • 필요 인력과 일정 계획을 세우는 데 기포로 활용함
  • 개발비 산정 시 기초로 활용함
  • 성과 측정 및 조정 시 기준선으로 활용 가능

6.3.일정 계획 기법 1:Network chart(PERT/CPM)

  • 프로젝트를 완료할 수 있는 최소 시간이 얼마인가?
  • 완료 기간을 맞추기 위해서는 각 작업을 언제 시작하고 완료해야 하는가?
  • 지연되지 않으려면 어떤 작업에 특히 주의를 기울여야 하는가?
  • 전체 프로젝트 완료 시간을 단축하기 위해서는 어떤 작업들을 단축하는 것이 가장 경제적인가?

=> 관리자의 고민에 답을 주기 위해 필요한 도구

  • WBS의 작업 순서, 소요기간 등을 네투워크 형태의 그래프로 표현
  • 중요한 작업, 또 일정에 여유가 있는 작업은 어떤것인지 탐색
  • 중점 관리를 해야하는 작업을 명확히!

6.3.1.PERT/CPM

  • PERT(Program Evaluation and Review Technique)

    • 프로그램을 평가하고, 검토하는 프로젝트 관리 기법
  • CPM(Critical Path Method)

    • 미 듀퐁사에서 화학 처리 공장의 건설 계획을 조직적으로 추진하기 위해 개발
    • 건설공사와 같이 단위 작업이 확정적 소요 시간을 갖는 프로젝트인 경우에 적합

6.3.2.일정 계획기법 1:Network chart(CPM) 예

일정 계획기법 1:CPM 네트워크 그리기

  • node: 작업
  • edge:작업들 간의 선후 관계
  • 화살표: 화살표 뒤의 작업은 화살표 앞의 작업이 끝나야 시작 가능

일정 계획기법 1:ES(Earliest Start time)

  • 가능한 빨리 시작할 수 있는 시간으로, 서냉 작업이 완료되었을 때 해당 작업을 시작할 수 있는 가장 빠른 시점
  • ES 값을 구할 때는 맨 앞 (작업 A)에서 끝 방향으로 가며 계산
작업 A B C D E F G H I J K L M
작업시작시간 0 2 2 8 10 10 14 14 13 13 18 20 22
작업시간 2 6 4 2 4 3 2 4 2 1 2 2 3

일정 계획기법 1:EF(Earlist Finish time)

  • 가장 빠른 시작 시간(ES)으로 시작했을 때의 가장 빠른 완료 시간(ES+작업 소요시간)
작업 A B C D E F G H I J K L M
EF 2 8 6 10 14 13 16 18 15 14 20 22 25

일정 계획기법 1:LS(Latest Start time)

  • 어떤 작업을 늦어도 시작해야 하는 시간, 즉 가장 늦게 시작할 수 있는 시간
  • 이 시간에 시작하지 않으면 ( 이 시간보다 늦게 시작하면) 총 일정이 지연됨
작업 A B C D E F G H I J K L M
작업시작시간 0 2 2 8 10 10 14 14 13 13 18 20 22
작업시간 2 6 4 2 4 3 2 4 2 1 2 2 3

일정 계획기법 1:LF(Latest Finish time)

  • 가장 늦게 시작할 수 있는 시간(LS)에 시작해 작업을 완료한 시간 (즉) 작업을 가장 늦게 끝낼 수 있는 시간으로 'LS + 작업 소요시간'
작업 A B C D E F G H I J K L M
작업시작시간 0 2 2 8 10 10 14 14 13 13 18 20 22
작업시간 2 6 4 2 4 3 2 4 2 1 2 2 3
작업완료시간 2 8 8 10 14 18 18 18 20 22 20 22 25

일정 계획기법 1:ST(Slack Time)

작업 A B C D E F G H I J K L M
작업별 빠른 시작 시간 0 2 2 8 10 10 14 14 13 13 18 20 22
작업별 늦은 시작 시간 0 2 4 8 10 15 16 14 18 21 18 20 22
여유 시간 0 0 2 0 0 5 2 0 5 8 0 0 0

일정 계획기법 1:임계경로(critical path)

6.4.Gantt chart

  • 프로젝트 일정 관리를 위한 바 형태의 도구

반응형

'기초지식공부 > 소프트웨어공학' 카테고리의 다른 글

위험분석  (0) 2019.06.11
비용 산정 방법  (0) 2019.06.10
개발 비용 산정  (0) 2019.06.10
계획(Plan)  (0) 2019.06.10
소프트웨어 개발 프로세스 Ⅱ  (0) 2019.03.13