개발자의 시행 착오

Posted 2007. 10. 22. 23:20
스티브 맥코넬의 [Professional 소프트웨어 개발]에도 나오는 이야기지만 프로그래머들은 보통 다음과 같은 시행 착오를 겪습니다.

1. "내가 이 프로그램의 문법 에러를 모두 잡아내고 컴파일이 될 때쯤이면, 컴퓨터 프로그래밍 도대체 무엇인지 알게 될 거야."
(코딩)

2. "내가 이 프로그램을 완벽히 디버깅할 때쯤이면, 프로그래밍이 무엇인지 알게 될 거야."
(디버깅, 테스팅)

3. "멋진 설계를 어떻게 하는지 알게 될 때쯤, 소프트웨어 개발이 뭔지 알게 될 거야."
(설계)

4. "내가 요구사항을 잘 뽑아내는 방법을 알게 될 떄쯤, 나는 소프트웨어 개발이 뭔지 알게 될 거야."
(요구사항 분석)

사람마다 차이는 있겠지만 대부분의 개발자는 위와 같은 순서대로 필요한 기술을 익혀나가는 것 같습니다.  근데 꼭 이 순서대로 학습하는 방법 밖에 없는 것인지, 이게 올바른 방법인지는 잘 모르겠네요.