본문 바로가기
컴퓨터 일반

4. 소프트웨어공학 - 프로젝트 관리

by 쬑께께 2026. 1. 22.

(109)

효과적인 프로젝트 관리 구조(3P)

- 사람(People): 프로젝트 관리에 있어 가장 기본이 되는 인적 요소

- 문제(Problem): 처리해야 할 사항을 사용자 입장에서 분석, 기획하는 것

- 프로세스(Process): 소프트웨어 개발에 필요한 골격 제공

 

문제정의

1) 계획의 수립 이전에 시스템 정의 단계 필요, 계획 수립 후에는 요구 분석 수행

2) 소프트웨어 개발에 대한 목표가 시스템 정의서로 기술되야 함

- 목표의 설정: 업무현황 조사 분석, 문제점과 제약사항 파악, 사용자와 기술자의 공감대 형성

- 시스템 정의서의 작성

* 타당성 분석: 경제적, 기술적, 법적

*브룩스(Brooks)의 법칙: 스케줄 지연 시 인력 추가는 오히려 사태를 악화시킬 수 있다.

 

소프트웨어 개발팀(조직) 구성

분산형(민주적) 팀
= 민주적 분산형 팀
(DD, Democratic Decentralized)
- 팀 구성 방법들 중 가장 많은 의사소통 경로 가짐
- 각 구성원들은 의사결정에 자유롭게 참여
- 팀 구성원 사이의 의사교류 자체가 활성화되므로 복잡한 장기 프로젝트에 적합
- 구성원들의 책임과 권한의 약화로 대규모 프로젝트에는 부적합
중앙 집중형(책임 프로그래머) 팀
= 통계적 집중형
(CC, Controlled Centralized)
- 한 사람에 의해 통제할 수 있는 소규모 문제에 적합
- 의사결정 경로가 짧아 프로그램 개발과정이 신속
- 책임 프로그래머의 기술적, 관리적 능력에 민감
혼합형(계층형) 팀
= 통계적 분산형
(CD, Controlled Decentralized)
- 민주주의 팀과 책임 프로그래머 팀의 중간 형태
- 5~7명의 중간 프로그래머 그룹을 만들어 고급 프로그래머가 관리, 모든 그룹을 프로젝트 리더가 관리
- 대규모 프로젝트에 적합
- 모든 구성원들은 상하좌유 유기적인 관계 가질 수 있음
- 우수한 프로그래머가 관리자로 승진할 경우 이중의 부정적 효과 발생 가능