루크 호만은 소프트웨어 개발을 최종 사용자의 관점에서 바라보는 흔치 않은 소프트웨어 기술자다. 그는 최종 사용자와 보내는 한 시간이 소프트웨어 아키텍처 선택을 위해 보내는 몇 시간, 또는 사용자 요구사항을 문서화하는 데 보내는 며칠보다 가치 있다고 확신한다. 소프트웨어 개발을 다룬 대부분의 책이 안정적인 소프트웨어를 설계하고 개발하는 방법에 집중한다. 이 책 『소프트웨어 아키텍처 2.0』에서는 소프트웨어 제품의 전 라이프사이클을 통해 사용자를 지원하는 과정, 즉 진정한 비즈니스 솔루션을 만드는 과정을 좀 더 현실적인 측면에서 조명한다. 루크는 스스로 사업적 가치를 만드는 일에 종사하면서, 소프트웨어와 소프트웨어가 수행하는 비즈니스 기능 사이의 관계를 긴밀하게 고찰하고 있다.
브루스 버번(텔로스 벤처 파트너)
딜버트 만화를 보는 사람에는 두 부류가 있다. 한 부류는 자기 회사에서 일어나는 일을 얼마나 정확하게 묘사했는지에 경탄하면서 만화를 보지만, 반면 하이테크 회사의 현실이 딜버트의 세계보다 더 심할지도 모른다고 우울해하며 만화를 보는 부류도 있다. 이 책은 후자에 속하는 사람들을 위한 책이다.
토니 나바렛(다이아몬드헤드 벤처스 부사장)
루크는 소프트웨어 개발에 관련된 도전거리를 풀 수 있는 검증된 방법을 제시한다. 그는 이 책에서 모든 개발 경영진이 소프트웨어 조직의 생산성을 개선하기 위해 사용할 수 있는 실용적이고 검증된 기법을 소개한다.
G. 브래드퍼드 솔소(태비즈 테크놀러지 CEO)
내가 읽은 책 중에 이처럼 소프트웨어 아키텍처의 사업적인 측면과 기술적인 측면에 대한 내부자의 관점을 모두 다루는 책은 없었다. 소프트웨어 영업 관리자와 개발 관리자를 같은 장소로 불러모으는 훌륭한 책이다!
데이먼 셰스터(록 글로벌 CEO, 『Delivering the Goods』의 저자)
테크니컬 아키텍처와 제품 마케팅에 관한 책은 정말 많다. 하지만 세계적인 제품을 개발하기 위해 아키텍처와 마케팅 정보를 어떻게 통합해야 하는지를 소개하는 책은 없으며, 있더라도 매우 드물다. 『소프트웨어 아키텍처 2.0』은 기술과 마케팅 사이에 이런 귀중한 가교를 제공한다. 이 책은 어떻게 하면 시장에서 수익을 내는 고품질의 제품을 내놓을 수 있는지 설명한다.
짐 하이스미스(커터 컨소시엄 이사, 『Adaptive Software Development』의 저자)
제품개발 관리자, 마케팅 관리자, 아키텍트, 그리고 제품 기능을 책임지는 기술 리더가 반드시 읽어야 할 책이다. 프로젝트의 라이프사이클과 제품의 라이프사이클 동안 어떻게 제품의 아키텍처를 정의하고 이용하는지에 대한 실무적인 견해를 보게 될 것이다.
요하나 로스만(로스만 컨설팅 그룹)
루크 호만은 제품개발에 관한 정수를 이 책에 표현했다. 그는 제품개발에 있어 마케팅과 엔지니어링 모두의 역할이 필요하다는 사실을 조리 있게 설명할 뿐만 아니라, 그 둘을 함께 연결해 성공적인 제품을 개발하는 과정을 이해하고 실행할 수 있도록 만든다.
리 싱글러(360 마켓 뷰 사 회장)
종종 무시돼왔지만 중요한 업무인 라이선스, 배치, 설치, 설정, 지원 등을 다루는 책이 마침내 출간됐다. 이 책은 소프트웨어 제품을 개발하는 모든 사람 또는 그것을 구매하는 사람들에게 '하버드 비즈니스 스쿨에서 가르쳐주지 않는 것'을 가르쳐준다.
메리 포펜딕(애자일 얼라이언스 매니징 디렉터, 포펜딕 LLC 대표)
『소프트웨어 아키텍처 2.0』은 소프트웨어 엔지니어링 프로들만을 위한 책이 아니다! 경영진과 제품관리자도 이 책을 읽음으로써 회사가 만드는 소프트웨어에 관한 결정을 내릴 때 필요한 배경지식을 얻을 수 있다. 나는 이 책이 관리부서와 개발부서 간의 공감대를 만드는 데 유용한 도구임을 확인했다. 구현 세부사항을 깊이 언급하기보다는 비즈니스와 고객에 관련된 문제를 구체적으로 설명하기 때문이다.
데이비드 체이컨(시스템 아키텍처 부사장, 애자일TV)
『소프트웨어 아키텍처 2.0』은 그 제목이 암시하듯이 토탈 솔루션을 개발할 때 외면당하는 측면을 제대로 언급하고 있다. 호만은 광범위한 주제를 다루면서 열정과 깊이를 모두 드러낸다.
크레이그 프리스(레조넌트 소프트웨어 사 프로덕트 관리 이사)
QA 관리자로 루크 호만과 함께 일한 적이 있다. 그는 소프트웨어 개발에 관한 경쟁력을 보유한 인물이다. 기술적인 문제에 맞서 일했고, 어려운 비즈니스 결정을 다루며 땀을 흘렸다. 그는 소프트웨어 아키텍처에 관한 비즈니스와 기술 방면 모두에 대해 글을 쓸 수 있는 독특한 자질을 갖췄다. 두 세계를 성공적으로 연결한 이 책은 제품관리자와 소프트웨어 기획자를 위한 세미나용 핸드북이다.
제임스 바흐(새티스파이스(Satisfice) 설립자)
비즈니스적인 추진력과 소프트웨어 개발 사이의 상호작용으로부터 한 걸음 물러서서 평가함으로써, 성공하는 솔루션을 만드는 것을 바라보는 새로운 관점을 제공하는 책이다. 이 책은 효과적인 솔루션을 개발하는 과정에 존재하는 함정을 찾아내고, 문제에 대한 실무적인 대안을 제안함으로써 시장에 빠르게 접근할 수 있는 실용적인 가이드를 제공한다. 실제 사례를 통해 라이프사이클의 각 단계별 지침을 제공하며, 전체 프로젝트팀이 갖춰야 할 분명한 역할과 책임도 설명한다. 위험에 굴복할지도 모른다고 느껴진다면, 다른 사람의 도움을 청하거나, 검증된 모델을 채택하라. 위험을 피할 수 있는 대안을 제시하고, 중요한 결정 포인트를 설명하고 있는 이 책은, 성공적인 소프트웨어를 개발하는 데 필요한 모험과 역학, 그리고 성공하는 솔루션을 이해하는 방법을 찾는 소프트웨어 아키텍트와 제품개발자의 필독서다.
마크 벨케(휴렛 팩커드 마케팅 매니저)
성공적인 소프트웨어 제품의 테크니컬 아키텍처는 시장의 실체에 대응하는 것이어야 한다. 목표는 분명하다. 마케팅 담당자와 기술 담당자는 종종 자신이 타협할 수 없는 태도와 전망의 골로 갈라진 2개의 교전 중인 진영에 속해 있음을 발견한다. 이 책은 그 골을 메우고 제품의 성공에 집중하고 싶어하는 양쪽 진영의 모든 사람을 위한 필독서가 될 것이다.
데이브 퀵(마이크로소프트 사 통합 솔루션 개발그룹의 아키텍트)
소프트웨어 비즈니스 세계에서 아키텍처는 매우 모호한 용어가 됐다. 무엇을 의미하는지 명쾌하게 정의를 내리고 개념을 잡기가 어려운 용어다. 나는 '아키텍처'가 본질적으로 주관적인 용어라고 생각한다. 사람들은 자신의 소프트웨어 아키텍처를 설명할 때, 자기 시스템의 중요한 부분을 골라서, 선택한 부분들이 어떻게 조합되는지, 그리고 시스템을 설계할 때 중요한 결정을 어떻게 내렸는지에 대해 설명한다. 아키텍처는 기술적인 문제인 것처럼 보인다. 결정해야 할 중요한 문제들이 기술적인 문제이기 때문이다.
루크와 지난 몇 년간 많은 이야기를 나누며 그가 유감스럽게도 대부분의 아키텍처 관련 논의에서 등한시되던 사안들을 지적하는 말을 듣고 정말 기뻤다. 시스템을 보는 마케팅적인 관점, 라이선스 조약, 브랜딩, 배치, 과금 등 모든 조각이 어느 하나 빠짐없이 모두 중요하다. 이 모든 문제는 중요한 기술적인 함의와 사업적인 함의를 담고 있다. 고참 기술자는 이런 문제를 생각해야 한다. 그렇지 않으면 기술적 잠재력이 있는 시스템도 좋은 사업적 결정을 내리는 데 실패할 수 있다.
소프트웨어를 다른 사람들에게 판매하는 사람들 대부분이 이런 문제를 겪는다. 조직 내부의 IS 부서 아키텍트도 이런 문제에서 자유로울 수 없다. 외부 업체와의 라이선싱 계약 때문에 소프트웨어 비용에 큰 영향이 있을 것이다. 과금 방식 또한 사업적인 문제로 입금취소 기능을 도입하기로 결정할 경우 중요한 문제로 부각된다. 브랜딩은 사업적인 측면에서 회사를 노출시키는 데 도움이 된다.
루크는 기술적인 측면과 사업적인 측면을 모두 다뤄본 사람의 관점에서 글을 쓴다. 양쪽 측면 모두에 능숙하기 때문에 그는 종종 논의조차 되지 않는 문제도 숙고한다. 이것이 그의 장점이다. 루크는 생각조차 하지 않았던 문제로 인해 우리가 곤란에 처할 수도 있음을 지적한다. 그리고 그런 곤란함을 극복할 수 있는 절차에 대해 조언한다. 앞으로 이 책은 소프트웨어 설계의 기술적 측면에서 매우 훌륭한 업적으로 자리매김할 것이다.
마틴 파울러
소프트웨어 짜는 일은 과학이라기보다 예술에 가깝다고 생각한다는 점을 미리 밝힌다. 그렇다면, 어떻게 내가 창의적인 문제가 아닌 실천적인 문제를 깊게 다루는 책에 대해 추천사를 쓸 것인가?
예술과 소프트웨어 양쪽의 창의적인 프로세스는 너무 과대평가되어 있다. 편안한 의자에 앉아 마음의 눈을 깨끗이 하고 소프트웨어의 요정이 마음속에 들어와 아무런 노력 없이도 수천 줄의 우아한 코드를 두뇌에 흘려주는 장면을 상상해보라. 소프트웨어를 만들어본 적이 있는 사람이라면, 현실은 그렇지 않다는 사실을 잘 알 것이다.
예술은 어렵다. 디버깅 역시 어렵다. 이 책은 당신과 당신 팀이 더 나은 예술가가 되도록 도울 것이다. 이 책은 원칙, 팀워크, 땀, 그리고 영감에 관한 책이다. 나는 많은 이가 이 책을 읽기 바란다. 그래서 위대한 예술을(즉 소프트웨어를) 만들어 세상을 바꿨으면 좋겠다.
가이 가와사키(개러지 테크놀러지 벤처스의 CEO)