information processing

2. 프로젝트 계획 및 분석

nana-log 2022. 7. 5. 12:21

02 프로젝트 계획 및 분석
Section 1. 프로젝트 계획

1. 프로젝트 관리

⑴ 프로젝트 관리의 개념

- 특정한 목적을 가진 프로젝트를 한정된 기간, 예산, 자원 내에서 사용자가 만족할 만한 제품을 개발하도록 행하는 기술적, 관리적 활동


⑵ 프로젝트 핵심 관리대상(3P)

- 사람(People)
- 문제(Problem)
- 프로세스(Process)


⑶ PMBOK(Project Management Body of Knowledge)

- PMI(Project Management Institute)에서 제작한 프로젝트 관리 프로세스 및 지식 체계
■ PMBOK 5단계 프로세스 그룹
- 1단계 : 프로젝트 착수
- 2단계 : 프로젝트 계획
- 3단계 : 프로젝트 실행
- 4단계 : 프로젝트 통제
- 5단계 : 프로젝트 종료

 

2. 개발 비용 산정


3. 개발 일정 산정

⑴ 소프트웨어 개발 일정 계획

■ 작업 순서
- 작업분해(Work Breakdown Structure)
- CPM 네트워크 작성
- 최소 소요 기간을 구함
- 소요 M/M, 기간 산정하여 CPM 수정
- 간트 차트로 표현


⑵ WBS(Work Breakdown Structure)

- 프로젝트 목표를 달성하기 위해 필요한 활동과 업무를 세분화 하는 작업


⑶ Network Chart(PERT/CPM)

■ CPM 소작업 리스트
작업

선행작업

소요기간(일)

A

-

15

B

-

10

C

A, B

10

D

B

25

E

C

15

■ CPM 네트워크 작성

■ 소요기간 산정
- 임계경로(Critical Path) : 40일
- D의 가장 빠른 착수일 : 10일
- D의 가장 늦은 착수일 : 15일
- D의 여유기간 : 5일


⑷ 간트 차트(Gantt chart)

- 일정 계획의 최종 산출물
- 프로젝트 일정관리를 위한 바(bar)형태의 도구


Section 2. 요구사항 분석

1. 현행 시스템 분석

⑴ 현행 시스템 파악

- 현행 시스템이 어떤 하위 시스템으로 구성되어 있는지
- 제공하는 기능이 무엇인지
- 다른 시스템들과 어떤 정보를 주고받는지
- 어떤 기술요소를 사용하고 있는지
- 사용하고 있는 소프트웨어 및 하드웨어는 무엇인지
- 네트워크는 어떻게 구성되어 있는지


⑵ 플랫폼 기능 분석

① 플랫폼 정의
- 어플리케이션을 구동시키는데 필요한 하드웨어와 소프트웨어의 결합

② 플랫폼의 유형
■ 싱글 사이드 플랫폼(single-side platform)
- 제휴 관계를 통해 소비자와 공급자를 연결하는 형태
■ 투 사이드 플랫폼(two-side platform)
- 두 그룹을 중개하고 모두에게 개방하는 형태
■ 멀티 사이드 플랫폼(multi-side platform)
- 다양한 이해관계 그룹을 연결하여 중개하는 형태


⑶ 미들웨어(Middleware) 분석

① 미들웨어 개념
- 양 쪽을 연결하여 데이터를 주고 받을 수 있도록 중간에서 매개 역할을 하는 소프트웨어

② 미들웨어 종류
■ RPC(Remote Procedure Call)
- 클라이언트가 원격에서 동작하는 프로시저를 호출하는 시스템
■ MOM(Message Oriented Middleware)
- 응용 소프트웨어 간의 데이터 통신을 위한 소프트웨어
- 메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어
■ ORB (Object Request Broker)
- 객체지향 시스템에서 객체 및 서비스를 요청하고 전송할 수 있도록 지원하는 미들웨어
■ DB 접속 미들웨어
- 애플리케이션과 데이터베이스 서버를 연결해주는 미들웨어
■ TP 모니터
- 온라인 트랜잭션을 처리 및 감시하는 미들웨어
■ WAS(Web Application Server)
- 동적인 콘텐츠를 처리하기 위한 미들웨어
■ ESB(Enterprise Service Bus)
- 메시지 기반으로 느슨한 결합형태의 표준 인터페이스 통신을 지원하는 미들웨어


2. 요구 공학

⑴ 요구공학 개념

- 고객 요구를 체계적으로 수집, 분석, 명세화, 검증하고 추적, 변경되는 요구사항을 도출하고 관리하는 기법


⑵ 요구공학의 필요성

- 분석의 어려움
- 요구사항 변화
- 관점별 차이 발생


⑶ 요구사항의 분류

■ 기능적 요구사항
- 소프트웨어를 구성하는 기능들이 무엇인지를 정의한 것
■ 비기능적 요구사항
- 소프트웨어의 기능들에 대한 조건과 제약 사항들이 무엇인지 정의한 것
- 보안, 성능, 품질, 안정성 등


⑷ 요구사항 개발 프로세스

① 도출
- 소프트웨어가 해결해야 할 문제를 이해하고 요구사항이 어디에 있고, 어떻게 수집할 것인가를 확인

② 분석
- 요구사항들 간에 상충 되는 것을 해결
■ 구조적 분석 도구
- DFD(Data Flow Diagram) : 자료 흐름도
- Data Dictionary : 자료 사전
- Mini-Spec : 소단위 명세서
- ERD(Entity Relationship Diagram) : 개체 관계도
- STD(State Transition Diagram) : 상태 전이도
■ 객체지향 분석 도구
- UML(Unified Modeling Language)
- 모델링

③ 명세
- 정형 명세 기법
- 비정형 명세 기법

④ 확인
- 분석가가 요구사항을 이해했는지 확인(Validation)
- 요구사항 문서가 일관성 있고 완전한지 검증(Verification)


⑸ 요구사항 분석 도구

① 요구사항 분석 CASE(Computer Aided Software Engineering) 도구
분류
상위 CASE

하위 CASE
통합 CASE

설명
- 생명주기 전반부에 사용되며, 소프트웨어의 계획과 요구분석, 설계 단계를 지원한다.
- 모순검사, 오류검사, 자료흐름도 작성 등의 기능을 수행한다.
- 생명 주기 후반부에 사용되며, 코드의 작성과 테스트, 문서화 하는 과정을 지원한다.
- 구문 편집기, 코드 생성기 등의 기능을 수행한다.
- 소프트웨어 생명주기에 포함되는 전체 과정을 지원한다.

② HIPO(Hierarchy Inut Process Output)
■ HIPO 의 개념
- 하향식 소프트웨어 개발을 위한 문서화 도구
■ HIPO Chart 종류
- 가시적 도표 (Visual Table of Content)
- 총체적 도표 (Overview Diagram)
- 세부적 도표 (Detail Diagram)


3. 요구사항 분석 모델링

⑴ 모델링의 개념

- 복잡한 시스템을 쉽게 이해하기 위해 불필요한 부분을 생략하고 추상화하여 간단한 모델로 표현하는 것을 의미


⑵ 구조적 분석 모델

■ 자료 흐름도(DFD, Data Flow Diagram)
- 자료의 흐름과 처리 과정을 도형 중심으로 기술
■ 자료사전(Data Dictionary, DD)
- 자료흐름도에 기술된 모든 자료들에 대한 사항을 자세히 정의
- 이름 + 주소 + [남|여] + {대여목록}
■ 소단위 명세서(Mini-Specification)
- 자료 흐름도에서 어떤 일이 수행되는지를 정의하기 위해 각 처리들이 수행하는 업무를 상세하게 작성
■ 개체 관계도(Entity Relationship Diagram, ERD)
- 시스템에서 처리되는 개체(자료)와 개체의 구성과 속성, 개체 간의 관계를 표현하여 자료를 모델화하는데 사용
■ 상태 전이도(State Transition Diagram, STD)
- 시스템에 어떤 일이 발생할 경우 시스템의 상태와 상태 간의 전이를 모델화한 것


⑶ 객체 지향 분석 모델

① 객체 지향 분석
- 사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스, 이와 연관된 속성과 연산, 그들 간의 관계
등을 정의하여 모델링하는 작업

② 객체지향 분석 방법론
■ Rumbaugh(럼바우) 방법
- 객체 모델링 (Object Modeling) : 객체 다이어그램
- 동적 모델링 (Dynamic Modeling) : 상태 다이어그램
- 기능 모델링 (Functional Modeling) : 자료 흐름도(DFD)
■ Booch(부치) 방법
- 미시적 개발 프로세스와 거시적 개발 프로세스를 모두 사용하는 분석 방법
■ Jacobson 방법
- Use case를 강조하여 사용하는 분석 방법
■ Coad와 Yourdon 방법
- E-R 다이어그램을 사용하는 기법
■ Wirfs-Brock 방법
- 분석과 설계간 구분 없음