콘텐츠 바로가기
본문 바로가기


블로그 전체검색


The Nature of Software Development

론 제프리스 저/이기곤 역
한빛미디어 | 2017년 01월


소프트웨어 개발을 하다보면 여러가지 문제에 봉착하게 된다.
적은 자원, 계속적으로 변동하는 요구사항 등...
하지만, 이런 문제점이 꼭 소프트웨어 개발에 한정되어 있는 것은 아닐 것이다.
살아가면서 어떤 선택을 할 때, 선택이라는 관점에서 부딪히는 문제도 그런 경우가 많다.
그리고 이러한 선택에 있어서 고려해야 하는 한가지는 어떤 선택을 함으로서 포기해야 하는 것에 대한 가치이며, 경제학에서는 이런 것을 기회비용라고 한다.
모든 선택에 있어서 반대 급부는 반드시 존재하며, 경제학의 최종목표는 기회비용을 최소화하면서 최적의 선택을 하는 것이다.

그렇다면, 소프트웨어 개발에 있어서 기회비용을 최소화하면서 최적의 선택을 위한 방법은 무엇일까?

「간결하게, 가치있게, 하나씩 완성하기」
책표지의 이 문장은 이 책을 관통하고 있는 주제이며, 상기의 질문에 어느정도 답안을 제시하고 있다.
소프트웨어 개발을 진행하다 보면, 많은 난관과 선택의 갈림길에 봉착하게 된다.
어려운 선택을 접하기 이전에 규칙을 정해놓는 것은 어떨까?
좀 더 최적화되고 합리적인 선택을 위해서...

그 규칙은 우선 가치라는 개념에서 시작한다.
가치라는 것은 여러가지 의미로 해석될 수 있다. 
책에서는 원하는 것이라고 표현하고 있으며, 원하는 것은 돈이 될 수도 있고, 정보 또는 소프트웨어를 사용하는 사용자 입장에서의 만족도 등 여러가지로 대변될 수 있다. 
그렇다면 소프트웨어 개발에 있어서 이러한 가치를 확인하는 방법은 무엇일까?

"작동하는 소프웨어를 보여주세요"
소프트웨어 개발의 귀결점은 동작하는 소프트웨어이다.
이 소프트웨어를 개발하기 위해서 '이런 방법론을 사용했고, 일련의 기술, 인력 , 예산등의 자원을 사용하였습니다.'라는 표현은 동작하지 않는 소프트웨어 앞에서는 변명일 뿐이다.
실패를 비난하는 것이 아니다.
실패가 일어나기 전에 어떤 고민을 했느냐이다.
그런 의미에서 이책은 많은 생각을 하게 한다.
'이 방법을 사용하시면 모든 문제가 해결됩니다.'라는 만병통치약같은 책은 아니다.

책 제목에서 살펴보듯이  이책은 소프트웨어 개발 본질에 대해서 이야기한다.
그리고 이런 소프트웨어 개발 본질에서 우리가 부딪히는 문제들에 대해서 어떻게 대응할 것인가?에 대해서 저자의 경험, 생각과 동시에 '너는 어떻게 생각하는냐'에 대한 논제를 다시 던진다.

책을 읽으면서 책 분량과 다르게 개발과 관련된 프로세스, 팀 관리, 환경에 대해 많은 생각을 하게 되었다. 소프트웨어 개발을 담당하는 개발자, 관리자라면 읽어 보면서 책의 내용이 던지는 화두에 대해 고민을 하다보면 책에서 표현하듯이 가치있는 소프트웨어 개발에 한걸음 나아갈 수 있는 계기를 제공할 것이다.

본 서평은 한빛미디어에서 책을 제공받아 작성한 서평입니다.

 
취소

댓글쓰기

저장
덧글 작성
0/1,000

댓글 수 0

댓글쓰기
첫 댓글을 작성해주세요.

PYBLOGWEB3