-
-
소프트웨어 아키텍처 The Basics - 모던 엔지니어링을 위한 소프트웨어 아키텍처의 모든 것, 제2판
마크 리처즈.닐 포드 지음, 류광.307번역랩 옮김 / 한빛미디어 / 2025년 11월
평점 :
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

개발 경험이 쌓일수록 우리는 기능 구현을 넘어 성능, 확장성, 유지보수성, 팀 협업과 같은 문제와 마주하게 되는데요. 이러한 복잡한 고민을 체계적으로 풀어내기 위해 아키텍처에 대한 이해는 필수라고 생각합니다. 이번에 소개할 소프트웨어 아키텍처 2판은 왜 아키텍처를 공부해야 하는지 설득력은 설명과 기술 유행이나 특정 스택에 의존하지 않는 보편적인 사고의 틀을 제시해 줍니다. 2판은 초판 출간 이후 약 5년간의 업계 변화를 반영해 새로운 정보를 습득할 수 있습니다.
소프트웨어 아키텍처 2판에서 가장 인상적인 변화는 소프트웨어 아키텍처 제3 법칙입니다.
기본 두 법칙은 다음과 같습니다.
소프트웨어 아키텍처의 모든 것은 트레이드오프(trade-off)이다.
어떻게(방법)보다 왜(이유)가 중요하다.
여기에 새롭게 더해진 제3 법칙은
아키텍처적 결정은 양자택일이 아니라, 양극단 사이의 스펙트럼에 있는 한 지점이다.

제3 법칙은 말하는 핵심의 아키텍처를 A 아니면 B처럼 이분법적으로 선택해서는 안 된다는 것으로 생각합니다. 이 제3 법칙은 기존의 제1 법칙과 제2 법칙을 한 단계 더 구체화한 내용을 담고 있습니다. 트레이드오프는 본질적으로 연속적인 값이며, 스펙트럼의 관점에서 바라볼 때 각 선택이 가져오는 장단점을 더 정확하게 비교할 수 있습니다. 아키텍처의 역할은 정답을 고르는 것이 아니라 비즈니스 요구, 팀 구조, 기술 환경을 고려해 스펙트럼 사에서 가장 합리적인 지점을 찾고 그 이유를 설명하는 것으로 생각합니다.
소프트웨어 아키텍처 2판 곳곳에서 세 법칙이 실제로 적용되는 사례를 발견할 수 있는데요. 우리는 아키텍터가 해당 결정을 왜 내렸는지, 그리고 그에 따른 트레이드오프는 무엇인지를 볼 수 있습니다. 또한, 중요한 결정을 포착하는데, 유용한 기법까지 만날 수 있습니다.

2판에선 완전히 새로운 장들로 추가되어 알찬 정보를 얻을 수 있는데요. 제20장은 아키텍처 패턴, 제26장은 아키텍처의 다양한 교차점을 다루며, 제27장에서는 새롭게 추가된 제3 법칙을 포함해 저자들이 제시한 소프트웨어 아키텍처 법칙들을 다시 조망하고 각 법칙이 실제로 어떤 귀결로 이어지는지 정리합니다. 이러한 구성 덕분에 단순한 이론서에서 머무르지 않고, 아키텍처가 복잡한 상황 속에서 사고하고 판단하는 과정을 체계적으로 훈련할 수 있는 구조로 한층 강화되었습니다.
이 책에서 공부에 특히 도움 된 부분은 초반에 아키텍처 사고와 기본 개념을 다루고 다양한 아키텍처 스타일을 실무 관점에서 체계적으로 정리한 중반부, 그리고 실제 설계 의사결정과 위험 분석을 다루는 후반부입니다. 챕터02 아키텍처 사고에선 아키텍처와 설계의 차이, 트레이드오프 분석, 비즈니스 동인의 이해 등 아키텍처 특성 정의 및 식별을 통해 설계 품질 특성을 체계적으로 정리할 수 있는 시간이었습니다.

이뿐만 아니라 챕터21 아키텍처적 결정에선 아키텍처 결정의 본질과 이를 잘못 처리했을 때 나타나는 안티패턴을 설명하며, 좋은 결정을 내리기 위한 기본 원칙을 짚어 줍니다. 안티패턴에는 겉보기에 합리적이어도 장기적으로 문제를 초래하는 반복적 실수가 포함되며, 이를 인식하고 피하는 것이 중요하다고 알려줍니다. 그리고 아키텍처 결정의 중요성을 이해하고, 그 결정 과정을 명확하게 문서화하는 기법을 소개합니다. 단순히 선택하는 것이 아니라 그 결정이 왜 내려졌는지를 기록하고 이후 팀과 이해관계자에게 명확히 전달하는 방법까지 다루고 있습니다. 이 기록은 협업과 유지보수, 설계 변경 시에 중요한 참고 자료가 될 수 있는 점까지 알차게 배울 수 있습니다.
소프트웨어 아키텍처 2판의 큰 장점은 단순히 아키텍처 기술을 나열하는 방식이 아니라, 왜 특정 구조나 선택이 필요한지를 스스로 묻고 답할 수 있는 사고방식이 길러졌다는 점입니다. 책에서 반복해서 강조되는 소프트웨어 아키텍처 모든 것은 트레이드오프다라는 메시지는 추상적인 이론을 넘어 실제 협업에 마주하는 복잡한 설계의 선택 순간마다 떠올리게 되며, 그 선택의 이유를 명확하게 설명할 수 있게 도와줍니다. 또한 다양한 아키텍처 스타일과 패턴을 실제 장단점 중심으로 비교해 주면서 언제 어떤 구조를 선택해야 하는가에 대한 기준을 구체적으로 잡을 수 있어 좋았습니다. 이 책은 단순히 지식만 전달하는 책이 아닌 아키텍처로서 문제를 이해하고 맥락을 파악하며 그것을 실무에 적용하는 능력을 길러 준다는 점에서 매우 큰 도움을 받을 수 있습니다.