eejjhh***
2022-06-19

소프트웨어 개발을 시작할 때 필요한 실용 가이드북이다. 소프트웨어 아키텍처의 리스크는 무엇인지, 아키텍처 설계 원칙은 어떻게 적용하고 해결하는지, 유관 부서의 실무자를 어떻게 도울 수 있는지 등의 주제를 개발자가 흔히 겪는 경험을 기반으로 풀어냈다.
홈페이지든 프로그램이든 무언가를 개발하기 전에는 무엇을 어떻게 만들지를 고민하고
그에따라 정책정의, 기획설계부터 시작하는것이 일반적이다.
건축물을지을때 기초공사가 튼튼해야 건축물이 튼튼하게 지어지듯이, 무언가를 잘 만들기 위해서는 기초공사가 중요하다.
이 책은 소프트웨어 개발을 시작할 때 필요한 실용 가이드북으로써, 아키텍처를 설계할 때 도움이 될만한 내용들이 기술되어있다.
부제목이 리스크 주도 접근법인것 처럼 설계를 이렇게 해야한다라는것 보다는
'오답노트'처럼 실무자들이 개발하는 과정에서 일아난일들을 바탕으로 아키텍처 설계단계에서부터 이러한 상황을 고려한다면
수월한 개발을 할 수 있는 해결책을 제공해주고있다.
즉 리스크 관리 중심으로 아키텍처를 설계할 수 있도록 안내되어있다.
*주요내용
리스크 주도 아키텍처링 - 직면한 리스크에 따라 적정한 아키텍처 설계를 수행하는 방법
참여하는 아키텍처 - 아키텍트뿐 아니라 모든 소프트웨어 개발자를 위한 아키텍처
선언적 지식 - 기법을 적재적소에 사용하기 위한 개념과 용어
엔지니어링 강조 - 소프트웨어 개발의 기술적인 부분과 시스템 작동을 위한 엔지니어링
실용적인 활용 방법 - 상위 아키텍처부터 하위 자료 구조 설계까지 다양한 수준의 모델을 활용하는 접근 방법
* 대상독자
책 제목만 봐서는 개발에 경험이 많은 PL급인 사람이 읽어야할 것 같아보이지만
실제로 읽어보면 개발에 관심이있어 탄탄한 설계를 하고싶어하거나 프로젝트를 이끄는 PL뿐만아니라 PM이 읽어도
충분히 유익해보이는 책이라 생각된다.
책 내용중 개발언어들이 나오기는 하지만 하나의 소설책 읽듯이 읽을 수 있는 수준이라 생각되어 개발관련 학과를 졸업한 사람이라면
편하게 읽을 수 있는정도의 수준이라 생각된다.
이 책에서의 특징은
상황에 따른 소프트웨어 아키텍처 사용법이 정리되어있으며
자연스러운 흐름으로 이해하는 리스크 주도 도멜 개념과 적용 방법
다이어그램과 표를 통한 개념 모델 이해
다양한 아키텍처 스타일을 보여준다.
독자에게 전하는 말 중에 이런말이 있다.
소프트웨어 시스템 대부분은 초기에 설계를 완벽하게 해서 최종 제품으로 개발할 수 없습니다.
개발을 진행하면서 소프트웨어의 모습은 변하기 마련입니다.
저자의 다양한 경험을 바탕으로 고안한 리스크 주도 접근 방법은 우리가 지닌 큰 숙제에 도움이 되며
좋은 실무 교본으로 옆에 두고 찾아볼 만합니다.
적정 소프트웨어 아키텍어 옮긴이의 말 발췌
이중에서 "개발을 진행하면서 소프트웨어의 모습은 변하기 마련입니다." 이 말이 참 와닿았다.
분명 설계단계에서는 나름 잘 설계했다고 생각하며 개발을 진행했지만 완성단계에 다다르면서 미쳐 생각하지못했던 이슈사항이 생겨
이를 고치기엔 많은부분을 뜯어고쳐야하는 일이 종종 있었다.
이럴 때 마다 설계단계에서 왜 생각하지 못했을까.. 이 부분을 다르게 개발했으면 나중에 유지보수하기 쉬웠을텐데 하는 아쉬웠던적이
한두번이 아니었다.
이 책을 통해 탄탄한 아키텍처 설계를 할 수 있는 능력이 향상됐으면 한다.