본문 바로가기

Book review

고객이 만족할 만한 소프트웨어를 개발하는 쉽고 편리한 방법 (Head First Software Development)

저의 테크니컬 블로그 첫번째 포스팅 입니다 :)


오늘 소개 해 드릴책은 O'Reilly가 만들고
한빛미디어에서 번역서를 출간한
Head First Software Development 입니다.

부제는 '더 쉽고 재미있게 소프트웨어를 개발하는 방법'라고 나와 있습니다.
책을 다 읽고 나니 저는 다른 부제를 붙이고 싶어지더라구요.
[고객이 만족할 만한 소프트웨어를 개발하는 쉽고 편리한 방법]
이라고 말이죠 :)

이 책은 이터레이션의 활용법, 요구사항에서 도출해야 할 일정 추정과 고객의 요구사항을 정확하게 파악하는 법, 마일스톤 구성법, 사용자 스토리와 태스크, 실용적 설계, 버전관리와 테스트의 중요성, 빌드와 디버깅 방법 등등 상당히 많은 내용을 담고 있습니다.

생각보다 범위가 넓죠?
사실 전반적인 개발에 대한 내용이 전부 나와 있습니다.
인덱스 페이지를 포함해서 무려 500페이지에 달하죠.
얇아 보이는 책 두께에 방심했다간
페이지 수에 깜짝 놀라실껍니다 (제가 그랬거든요 후후후)

제게 가장 도움이 되었던부분은 이터레이션과 사용자 스토리 & 태스크 부분 입니다.
이터레이션에 대해서는 막연하게만 알고 있었는데
반복적으로 고객과 소통하고 이터레이션 반복에도 주기가 있다는 것은 처음 알았거든요
이전까지는 그저 프로세스의 하나라고만 생각했지만
어찌보면 독립적인 개념으로 볼 수도 있겠다고 생각했습니다.


사실 이전까지의 제 생각과 가장 다른점은
저는 이터레이션이 오로지 한 태스크에만 적용되어
태스크 별로 반복되는 것이라 생각했는데
일반적으로는 20일 등의 날짜를 주기로
태스크와 일정을 구성하여 반복되어 진다는 점이었죠.

이는 일정 산출에도 큰 도움이 될 뿐만이 아니라
효율적인 개발 스케쥴 운영에도 상당히 도움이 될 것으로 보입니다.

또한 이터레이션을 효율적으로 활용하는데도 많은 기법과 도구가 있는데
제가 가장 인상적으로 본 것은 '소멸 그래프'입니다.
한 이터레이션에 대해서 가시적인 평가 자료가 되는 이 그래프는
정말 실용적일 것 같다는 생각이 들더군요.

물론 현실에 돌아와서 제 스케쥴에 적용하면
정말 참담한 그래프를 볼 수도 있지 않을까 하는
그런 상상도 해버리고 혼자 좌절하는 코미디를 연출하기도 했습니다.


개인적으로 어떤 방법론에 의해서 프로젝트를 진행하고
어떤 도구를 이용해서 완성도를 높이는 것은
긍정적이고 좋은 일이라고 생각합니다.

이 책에서는 이터레이션과 적절한 태스크 나누기가 이끌어내는
효율성에 대해서는 참 매력적으로 설명해 주고 있어서
꼭 실행해 보고 싶은 생각이 드는 군요.

한번 읽어보시면
고객과의 소통에 어떠한 편리함을 줄 수 있는지
프로젝트의 완성도에 어떤 영향을 끼칠 수 있는지

확인하실 수 있을 껍니다. :)

추천도 :: ★★★★☆

이미지 출처 ( Yes24, 한빛미디어 홈페이지 )

hMXDiJ3fL10BE5BTto1nNNWaAn6
ccHLAeNY3eELVjKfsFXL2sncaHqENdCmc9HKz9kC2h4=