문제 이해하기
자신이 무엇을 만드는지 제대로 이해하지 못한 채 소프트웨어 코드부터 작성하는 개발자 지망생이 많다. 사실 경력 개발자도 마찬가지다. MUD 예처럼 코딩을 배울 때는 그렇게 해도 상관없다. 하지만 소프트웨어를 제작할 때는 얘기가 달라진다. 이 책을 읽고 있는 것으로 볼 때 당신은 분명 이보다 현명할 거라고 본다.
소프트웨어 개발은 언제나 해결할 문제를 이해하는 지점에서 시작한다. 자동화할 대상이 무엇인가? 이 부분을 처리하는 방법은 소프트웨어 개발 방법론마다 다르지만, 지금 그 부분은 중요하지 않다. 코딩을 시작하기 전에 어떤 방식으로든 해결할 문제를 이해하고 요구사항을 알아내야 한다는 게 논점이다. 경우에 따라 고객을 만나 무엇을 만들어야 하는지 어떻게 작동해야 하는지 의논하는 정도로 간단하게 진행할 때도 있고, 제품 명세 문서를 작성할 정도로 격식을 갖추어 진행할 때도 있다.