소프트웨어 개발 계획 - 인력 계획
인력 계획 (=조직 계획)
인력 계획은 말 그대로 사람에 대한 계획이다. S/W 개발은 다른 어떤 분야보다도 사람이 차지하는 비중이 크기 때문에 엄청 중요함 !
인력에 대한 계획을 잘 세우기 위해서는 아래와 같은 특성을 알아둬야 한다.
- 기간이 긴 프로젝트에서는 사기를 높이고 이직을 줄이기 위하여 개개인의 일에 대한 만족도를 높여줘야 한다.
- 문제의 특성에 맞게 팀의 규모를 맞추고, 팀원들을 구성해야 한다.
(큰 규모의 팀보다 작은 규모의 팀은 보다 단결력이 강하고 사기가 높으며, 생산성이 높다.) - 팀 구성 권한을 가지는 관리자는 일정, 예산, 품질 등의 요소들을 고려하여 팀을 구성해야 한다.
그렇다면 팀을 어떤 식으로 구성해야 좋을까? 정답은 아니겠지만 이 질문에 대한 가이드라인이 있다.
가이드라인에서 제시하는 팀 구성 방법에는 3가지가 있다.
- 중앙 집중형 팀 구성 (=책임 프로그래머 팀 구성)
- 분산형 팀 구성
- 혼합형 팀 구성 (중앙 집중형 + 분산형)
위 3가지 팀 구성 방법에 대해 정리해보자
중앙 집중형 팀 구성 ( =책임 프로그래머 팀 구성)
한 관리자가 의사 결정을 하고 팀 구성원들은 그 결정에 따르는 팀 구성 방식이다.
프로젝트 수행에 따른 모든 권한과 책임을 한 관리자(책임 프로그래머)에게 위임한다.

이 팀 구성 방식은 책임 프로그래머의 능력에 따라 프로젝트의 성패가 갈릴정도로 책임 프로그래머의 역량이 중요하다.
위 그림에서 각각의 역할을 정리하면 다음과 같다.
- 책임 프로그래머 : 요구 분석 및 설계, 중요한 기술적 판단, 프로그래머에게 작업 지시 및 배분
- 프로그래머 : 코딩, 테스트, 디버깅, 문서 작성
- 프로그램 사서(Librarian) : 설계 문서, 테스트 계획 등 프로젝트와 관련된 모든 사무적인 일들을 담당
- 보조 프로그래머 : 책임 프로그래머를 어시스트. (이 포지션이 좀 애매함)
분산형 팀 구성
모든 팀원들이 동등한 레벨을 가지며, 팀원 모두가 의사 결정에 참여하는 방식.
분산형 팀 구성 방식의 장, 단점은 다음과 같다.
- 팀 구성원의 참여도와 작업 만족도를 높일 수 있다.
- 의사소통의 경로가 많아져 결정 한번 하는데 많은 시간이 소요된다.
- 다 같이 책임을 지는 구조라서 생산성이나 책임감이 많이 낮아질 수 있다.
혼합형 팀 구성
위의 팀 구성 방식들을 혼합한 것. (이 방식을 많이 사용한다고 함)
프로젝트 책임자가 5~7명의 프로그래머를 목적에 맞게 작은 그룹으로 나누고, 각 그룹마다 중간 관리자를 두는 계층형 관리 방식.
'Software Engineering' 카테고리의 다른 글
[Engineering] 요구사항 정의 #1 (0) | 2019.12.18 |
---|---|
[Engineering] UML - 모델링 언어 (0) | 2019.12.10 |
소프트웨어 개발 계획 - 일정 계획 (4) | 2019.10.22 |
소프트웨어 개발 계획 - 비용 계획 (0) | 2019.10.18 |
소프트웨어 개발 프로세스 #2 (0) | 2019.10.10 |
댓글
이 글 공유하기
다른 글
-
[Engineering] 요구사항 정의 #1
[Engineering] 요구사항 정의 #1
2019.12.18요구사항 정의 고객이 SW에 기대하는 기능 및 특징에 대한 요구를 도출해 명세(Specification)∙검증(Verification)∙확인(Validation)하는 활동 고객의 SW에 대한 요구에 따라 Use-Case 모델링을 한다. (건축에서도 건축짓기 전에 모델링하듯이 IT는 고객의 요구에 따라 모델링 함) 그러면 Use-Case 모델링을 어떤 식으로 표현할거냐에 대한 표준이 있어야 되겠지? 그게 바로 Use-Case Diagram !! 요구사항은 크게 2가지로 나뉜다. 기능적 요구사항 : 사용자 관점에서 사용될 직접적인 기능에 대한 정의 비기능적 요구사항 : 품질(성능, 신뢰성, 보안성, 안전성, 가용성)과 제약(개발 방법, 플랫폼 등)에 관해 정의 결론적으로 요구사항 정의 단계에서 해야할 사항과… -
[Engineering] UML - 모델링 언어
[Engineering] UML - 모델링 언어
2019.12.10UML ( Unified Model Language) UML은 설계도를 그리기 위한 언어다. 건축 도면과 비슷하게 정해진 기호로 구조를 설명할 수 있도록 하는 언어다. 2005년에 UML 2.0이 발표되었고, 2011년에 발표된 UML 2.4.1이 최신 표준 버전이다. 여러 가지 모델링 언어가 있지만 UML이 가장 대중적으로 사용된다. 겉핡기로 배워서는 간단한 다이어그램을 그리는 것이라면 모를까, 대규모 프로젝트에 그런 식으로 접근하면 안됨 ! 대규모 팀을 이루는 원전 건설사, 항공기 개발사에서는 UML에 통달한 언어학자/기호학자/수학자를 채용한다. UML에 포함된 많은 다이어그램이 있는데, 다 필요없고 딱 2개만 익히자 ! 유스케이스 다이어그램 (use-case diagram) 클래스 다이어그램 (cl… -
소프트웨어 개발 계획 - 일정 계획
소프트웨어 개발 계획 - 일정 계획
2019.10.22 -
소프트웨어 개발 계획 - 비용 계획
소프트웨어 개발 계획 - 비용 계획
2019.10.18대부분의 일이 계획을 잘 세워야 성공하듯, S/W 개발 또한 사전에 계획을 잘 세워야 성공할 수 있다. S/W 개발 계획에는 크게 3가지가 있다. 비용 계획 일정 계획 인력 계획 만약 계획없이 S/W 개발을 한다면? 일정은 지연될 것이고, 비용은 초과할 것이고, 품질은 저하될 것이다. 그로 인해 유지보수의 비용 또한 증가할 것. 비용 계획 비용 계획을 잘 세우기 위해선 당연히 S/W 개발에 대한 비용을 어떻게 산정할 것인가에 대한 이해가 필요하다. S/W 개발은 전자 제품 생산이나 건축 공사와는 달리 사람(개발자)이 중심이 되고 사람에 매우 의존적이다. 그렇다보니 명확한 개발비 산출이 어렵다. S/W 개발 비용에 영향을 주는 요소는 다음과 같은 것들이 있다. 개발자의 역량 SW의 복잡도 (단순 응용 앱인…
댓글을 사용할 수 없습니다.