28장 구현 관리
목차
- 28.1 훌륭한 코딩 장려
- 28.2 형상 관리
- 28.3 구현 일정 예측
- 28.4 측정
- 28.5 개발자를 사람으로 대우하기
- 28.6 관리자 관리
28.1 훌륭한 코딩 장려
프로그래밍 표준을 정할 때는 관리자보다 훌륭한 아키텍트가 정하는게 좋다. 아키텍트가 존경받는 위치에 있다면, 개발자들은 표준을 믿고 따를 것이다.
좋은 코딩을 장려하는 기법
- 프로젝트의 모든 영역에 두 사람을 할당하라.
- 모든 코드를 검토하라.
- 코드에 서명하라.
- 검토를 위해 좋은 예제 코드를 돌려보라.
- 코드가 공용 자산이라는 것을 강조하라.
- 좋은 개발 방식에 대해 보상을 하라.
28.2 형상 관리
형상 관리는 시간이 지나면서 시스템이 무결성을 유지할 수 있도록 체계적으로 프로젝트의 부산물을 파악하고 변화를 처리하기 위한 행위로, "변경 관리"라고도 한다. 형상 관리는 제시된 변경 사항에 대한 평가와 변경 추적, 다양한 시점에서 시스템의 복사본을 유지하기 위한 기법을 포함한다.
28.3 구현 일정 예측
예측 방법
- 예측 기능이 있는 소프트웨어를 사용한다.
- 베리 보엠의 예측 모델인 Cocomo II와 같은 알고리즘적 방법을 사용한다.
- 외부의 측정 전문가가 프로젝트를 예측하게 한다.
- 예측을 위한 워크스루 회의를 한다.
- 프로젝트의 부분별로 예측하여 각 부분에 대한 예측을 모두 합한다.
- 사람들이 자신의 작업을 예측하게 하고 나서 각 작업에 대한 예측을 모두 합한다.
- 이전 프로젝트에 대한 경험을 참조한다.
- 이전 예측을 보관하고 있다가 그것이 얼마나 정확한지 보고, 그것을 이용해 새로 예측한 내용을 조절한다.
거의 100%의 프로젝트에서 예측한 일정을 초과한다. 이때는 프로젝트의 범위를 축소하는 것이 가장 효과적인 방법이다.
28.4 측정
모든 경우에서 측정을 하는 것이 안하는 것보다 낫다.
28.5 개발자를 사람으로 대우하기
좋은 개발 환경에서 좋은 생산력이 나온다는 것이 통계적으로 입증이 되었다. 생산력을 높이기 위해서는 개인적이면서 넓고 조용한 사무실이 필요하다...
28.6 관리자 관리
"관리자를 관리한다"는 의미는 관리자가 자신에게 할 일을 맗재ㅜ는 것이 아니라 자신이 관리자에게 무엇을 할지 알려줘야 한다는 말이다. 그러면서도 여전히 관리자에게 자신이 관리받고 있다고 믿게 하는 교묘한 방법을 써야 한다.
관리자를 다루는 방법
- 자신이 원하는 것에 대한 아이디어를 정리한 다음, 관리자가 그 아이디어를 수행하는 것에 대해 생각할 때까지 기다린다.
- 작업을 수행하기 위한 올바른 방법에 대해 관리자에게 교육하라. 이 일은 관리자가 종종 승진하거나 부서를 옮기거나 해고되기 때문에 지속해서 해야 한다.
- 관리자가 자신에게 바라는 것을 처리하면서 관리자의 흥미에 초점을 맞추고 관리자가 불필요한 구현 세부 사항으로 방해받지 않게 하라.
- 관리자가 지시하는 것을 거부하고 자기 일을 올바른 방식으로 계속 진행하라.
- 다른 직업을 찾아라.