소프트웨어 프로젝트 팀 구성
팀 구성의 기준
프로젝트 기간과 크기(규모)에 따라서 구성한다.
팀 구성원의 역할
1. 프로젝트 팀장
2. 분석 및 설계자
3. 개발자
4. 품질 보증 담당자
5. 산출물 관리 담당자
6. 테스팅 담당자
....등 다양한 프로젝트 규모에 따라 팀 구성이 있다.
팀 구성
1. 팀장과 구성원의 2단계 구조
2. 계층적 팀 구성
1. 팀장과 구성원의 2단계 구조
프로젝트 책임자인 팀장은 상위 단계에 속하고 나머지 참여자는 전부 다음 단계에 속한다.
일반적인 소규모 프로젝트가 가장 많이 취하고 있는 팀 구조이다.
각 개별적으로 하위단계에 있는 사람은 상위단계에 있는 팀장과 1:1로 소통한다.
그렇기 때문에 팀장이 관리할 수 있는 인원의 한계가 정해져 있어 소규모 프로젝트에 적합하다.
실선
자문위원회. 의사소통이 자주 일어나지는 않는다
단점
팀장 중심의 팀 구성으로 팀장의 능력에 따라 프로젝트 성패가 좌우될 가능성이 크다.
역할 소개
책임 프로그래머 = 팀장
1. 팀의 운영에 대한 결정권한 및 운영에 대한 책임을 가진다.
2. 프로젝트 계획을 작성하고 통제한다.
팀원
프로젝트 수행 중 팀장에게 보고하고 지시를 받는다.
2. 계층적 팀 구성
팀의 구성이 둘 이상의 단계로 나누어진다.
프로젝트가 크고, 참여인원이 많을 때 많이 채택되는 방식이다.
맨 위에 있는 사람을 root라고 부른다.
전반적으로 프로젝트를 책임지는 사람.
프로젝트 리더 밑에 고급 프로그래머 밑에 초급 프로그래머
고급프로그래머 기준으로 말하자면
프로젝트 리더의 명령을 받아서 필요한 경우 내 밑의 초급 프로그래머한테 명령을 내리는
일종의 중간다리 역할을 한다.
초급프로그래머는 leaf라고 부른다.
조직의 말단, 맨 밑에 있는 사람이기때문에 leaf라고 부른다.
의사소통은 다양한 방법으로 나타날 수 있다.
1. 권위적 의사소통
2. 수평적 의사소통
장점
그룹원들은 그룹 리더들과, 그룹 리더들은 팀장과 서로 원활하게 의사소통을 하기 때문에 의사교환 경로를 줄일 수 있다.
단점
다양한 의사소통의 방법이 있기 때문에 그만큼 의사소통이 복잡해 질 가능성이 있고,
민주적인 절차의 한계로 한군데에서 의사소통이 늦어지면 전체적인 의사소통도 늦어진다.
역할 소개
각 그룹의 장(리더)
그룹원들을 책임지고 관리한다.
팀장
그룹 리더들로부터 보고를 받고, 그룹 리더들과 의논하고 지시사항을 전달한다.
참고사이트 - 메가존아이티평생교육원 | 소프트웨어 공학 | 전우천