본문 바로가기

기술 용어 검색

'소프트웨어 공학의 진실과 오류' 세미나 #2

개인의 역량의 중요성

 

 1. 소프트웨어 작업에서 가장 중요한 요소는 프로그래머가 사용하는 도구나 기술이 아니라, 프로그래머의 자질이다.


소프트웨어 개발자의 모습을 비유적으로 표한한 것이다.
 

어떤 꼬마가 환한 불빛 아래서 무언가를 열심히 찾고 있었다.
"너 여기서 뭐하고 있니?"
"잃어버린 열쇠를 찾고 있어요."
"어디서 잃어 버렸는데?"
"저쪽 어두운 골목이요."
"그런데 왜 이곳에서 찾고 있니?"
"이곳이 밝아서요."

 -> 소프트웨어 생산성의 좌우는 결국 실무자 개인의 역량이다.

 

 2. '개인차'가 크게는 28배까지 차이가 난다.

 

 3. 지체된 프로젝트에 사람을 추가 투입하면 프로젝트가 더 늦어진다.

    프로젝트가 지체된 경우 이러한 추가 인원투입에 대한 유혹을 실제로 받게 되지만, 효과는 투입인력대비 높지 않다. -> 늦어지는 논리적 근거 학습 곡선 존재한다.

    그러나 가능한 경우가 있으면 하지만 그렇게 가능한 경우에도 투입은 신중히 고려 되어야 한다.

 

 4. 작업환경은 생산성과 품질에 지대한 영향을 미친다. (피플웨어)

  - 거의 동의 하지만 최근 논쟁이 되고 있는 XP의 경우 다른 경우이다. XP의 페어(pair) 프로그래밍 개발을 통해서 개인의 환경 문제보다 개발을 위해서는 함께 진행할 수도 있다.  

 

 5. 도구에 대한 환상은 버려야 한다. 오히려 배우는데 더 많은 시간과 비용이 들어간다. 향상은 개인의 능력 향상을 통해서 가능하다.