확장메뉴
주요메뉴


소득공제 베스트셀러

진화적 아키텍처

: 피트니스 함수, 거버넌스 자동화를 활용해 생산성 높은 소프트웨어 구축하기

리뷰 총점9.6 리뷰 16건 | 판매지수 3,321
베스트
OS/데이터베이스 44위 | IT 모바일 top100 3주
정가
26,000
판매가
23,400 (10% 할인)
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2023년 08월 31일
쪽수, 무게, 크기 304쪽 | 692g | 183*235*15mm
ISBN13 9791169211345
ISBN10 1169211348

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

[PART 1 역학]

CHAPTER 1 진화적 소프트웨어 아키텍처
1.1 진화적 소프트웨어의 과제
1.2 진화적 아키텍처
1.3 상시 변화하는 환경의 장기 계획 수립 가능성
1.4 시간에 따른 아키텍처의 성능 저하 방지
1.5 왜 진화인가?
요약

CHAPTER 2 피트니스 함수
2.1 정의
2.2 범주
2.3 피트니스 함수는 누가 작성하는가
2.4 피트니스 함수 테스트 프레임워크 선택
2.5 결과 vs 구현
요약

CHAPTER 3 점진적 변화 엔지니어링
3.1 점진적 변화
요약

CHAPTER 4 아키텍처 거버넌스 자동화
4.1 피트니스 함수와 아키텍처 거버넌스
4.2 코드 기반 피트니스 함수
4.3 턴키 도구
4.4 통합 아키텍처
4.5 데브옵스
4.6 엔터프라이즈 아키텍처
4.7 피트니스 함수는 무기가 아닌 체크리스트다
4.8 피트니스 함수 문서화
요약

[PART 2 구조]

CHAPTER 5 진화하는 아키텍처 토폴로지
5.1 진화 가능한 아키텍처 구조
5.2 아키텍처 퀀텀 및 세분성
5.3 계약
5.4 재사용 패턴
요약

CHAPTER 6 진화적 데이터
6.1 진화적 데이터베이스 설계
6.2 부적절한 데이터 얽힘
6.3 네이티브에서 피트니스 함수로

[PART 3 영향력]

CHAPTER 7 진화 가능한 아키텍처 구축
7.1 진화적 아키텍처의 원리
7.2 역학
7.3 그린필드 프로젝트
7.4 기존 아키텍처 개조
7.5 아키텍처 마이그레이션
7.6 진화적 아키텍처 구축 가이드라인
7.7 피트니스 함수 주도 아키텍처
요약

CHAPTER 8 진화적 아키텍처의 함정과 안티패턴
8.1 기술 아키텍처
8.2 증분 변경
8.3 비즈니스 관심사
요약

CHAPTER 9 아키텍처 실천
9.1 조직적 요인
9.2 비즈니스 사례
9.3 엔터프라이즈 피트니스 함수 구축
9.4 시작 지점
9.5 미래 전망
9.6 되는 이유와 안 되는 이유
요약

저자 소개 (5명)

출판사 리뷰 출판사 리뷰 보이기/감추기

진화적 아키텍처로 기존 서비스를 유지한 채 점진적으로 서비스를 개선해보자

소프트웨어 개발에서 아키텍처 설계의 중요성은 점점 높아지고 있다. 특히 최근, 아키텍처 기술의 주된 흐름이 서비스 지향 아키텍처(SOA)에서 마이크로서비스 아키텍처(MSA)로 전환되면서 진화적 아키텍처는 가장 주목받는 아키텍처 기술 중 하나로 떠올랐다. 이제는, 클라우드 네이티브를 도입하려는 모든 소프트웨어 개발자나 아키텍트에게 진화적 아키텍처는 필수 기술이 되었다.

하지만 아직 진화적 아키텍처를 제대로 활용하지 못하는 아키텍트들도 있을 수 있다. 이 책은 그런 아키텍트들을 위해, 진화적 아키텍처를 활용하여 빠르게 변화하는 비즈니스에 대응하며 업무 효율성을 높일 수 있는 방법을 상세하게 안내한다. 그리고 피트니스 함수를 이용하여 아키텍처 특성을 유지하면서 진화하는 소프트웨어를 개발하는 방법도 함께 살펴본다. 전 세계적으로 인정받은 전문가들의 깊은 경험과 지식이 담겨 있는 이 책으로, 진화적 아키텍처뿐만 아니라 아키텍처 기술 전반을 이해하고 실전에 적용하는 데 활용하길 바란다.

추천평 추천평 보이기/감추기

진화적 아키텍처 기술의 현 상황을 이해하는 필수적인 로드맵으로, 부족함이 없는 도서이다.
- 마틴 파울러 (『리팩터링』 저자 / 쏘우트웍스 수석 과학자)
소프트웨어가 할 수 있는 일에 대한 기대치가 점점 증가하면서 우리는 아키텍처를 진화시켜 이에 대응할 방법을 찾아야 한다. 이 책은 시스템 아키텍처를 고정된 장애물이 아닌 유연한 도구로 바라보는 방법을 이해하는 데 도움을 주는 핸드북이다.
- 샘 뉴먼 (『마이크로서비스 아키텍처 구축』 저자 / 쏘우트웍스 아키텍트)
이 책의 전반부에서는 변화에 대응하기 위한 ‘진화적 아키텍처’가 어떤 것인지를 설명하고, 후반부에서는 각각 이를 적용하는 데 필요한 툴이나, 거버넌스, 방법들을 소개한다. 시니어 개발자라면 서비스의 진화를 위해 꼭 읽어볼 만한 책이다.
- 강대명 (레몬트리 CTO)
개발자들은 주로 구현 기술에 더 치중되어 있어 아키텍처 용어에 익숙하지 않아 이 책을 읽는 데 어려움을 느낄 수 있다. 하지만 조금만 인내를 가지고 초반의 문턱만 넘으면 평생 자산이 될 지식을 얻게 될 것이다.
- 박성철 (컬리 물류 프로덕트 본부장)
이 책은 고수준 아키텍처 설계에 대한 이해를 돕고, 모던화하는 여러 기업이 지켜야 할 규범적 지침과 지속적으로 개선되는 아키텍처 선정의 기준이 되는 피트니스 함수의 다양한 사용법을 소개한다.
- 김세웅 (AWS)
이 책은 거버넌스의 중요성과 시스템 설계에서의 진화적 아키텍처를 깊게 다루고 있다. 따라서 소프트웨어 아키텍트는 물론, 다른 전문가들도 이 책을 통해 소프트웨어 프로젝트를 효과적으로 관리하여 지속 가능한 솔루션을 만드는 데 도움을 받을 수 있다.
- 윤명식 (메가존클라우드)
변화에 적응하고 수용하여 진화하는 플랫폼을 만들기 위해 어떤 부분을 고민해야 하는지를 소개하고 있어, 소프트웨어 개발에서 벗어나 플랫폼 설계에 관심을 가지기 시작한 개발자와 유연한 플랫폼을 설계하기 위해 고민하는 아키텍트에게 이 책을 추천한다.
- 윤병조 (소프트웨어 개발자)
분산형 MSA 아키텍처가 활발히 도입되고 있는 시기에 맞춰 ‘진화적 아키텍처’는 클라우드 네이티브를 도입하려는 모든 소프트웨어 개발자나 아키텍트에게 유용한 기술이다.
- 이맹렬 (베스핀글로벌 CNE Team AA)

회원리뷰 (16건) 리뷰 총점9.6

혜택 및 유의사항?
프로그램은 진화한다 내용 평점5점   편집/디자인 평점5점 s******0 | 2023.09.25 | 추천0 | 댓글0 리뷰제목
`소프트웨어 아키텍트`는 아직까지는 그렇게 대중적인 포지션은 아닌 것 같습니다. 하지만 포지션에 대해 고민하고, 변화에 대응하기 위한 설계를 고민하는 분들에게 도움이 될 만한 책입니다.    쉬운 책은 아니고 고민할 영역이 많습니다. 소프트웨어에 대한 유연한 대응을 하기 위해선 기초 설계 단계에서부터 해야할 것이 참 많습니다. 설계가 튼튼해야 규모에 대응하고;
리뷰제목

`소프트웨어 아키텍트`는 아직까지는 그렇게 대중적인 포지션은 아닌 것 같습니다. 하지만 포지션에 대해 고민하고, 변화에 대응하기 위한 설계를 고민하는 분들에게 도움이 될 만한 책입니다. 

 

쉬운 책은 아니고 고민할 영역이 많습니다. 소프트웨어에 대한 유연한 대응을 하기 위해선 기초 설계 단계에서부터 해야할 것이 참 많습니다. 설계가 튼튼해야 규모에 대응하고 문제를 풀어갈 수 있습니다. 커지면서 시간에 따라 무너지지 않기 위해선 `아키텍트`의 역량이 중요함을 강조합니다. 

 

거번넌스, 피트니스 함수 등 유연한 설계와 그에 대한 대응에 대한 깊이를 다루고 싶으면 꼭 읽어보기를 추천합니다.

 

 

---

한빛미디어 `2023 도서 서평단 "나는 리뷰어다"`의 일원으로 도서를 제공받아 작성한 리뷰입니다.

이 리뷰가 도움이 되었나요? 공감 0 댓글 0
포토리뷰 [리뷰] 진화적 아키텍처 내용 평점5점   편집/디자인 평점5점 책*상 | 2023.09.24 | 추천0 | 댓글0 리뷰제목
   지난 번 닐 포드의 ‘소프트웨어 아키텍처 The hard Parts’를 읽은 이후 그의 다른 책인 ‘진화적 아키텍처’를 읽게 되었다. 이번 역시 개념이 어렵다고 느꼈으나 페르소나와 구체적인 상황을 정의하여 설명하는 방식으로 비교적 쉽게 이해할 수 있었다.    이 책의 주된 내용은 진화적 아키텍처의 개념과 그 당위성, 이를 실현하기 위한 방법이다. 1부에;
리뷰제목



 

 지난 번 닐 포드의 ‘소프트웨어 아키텍처 The hard Parts’를 읽은 이후 그의 다른 책인 ‘진화적 아키텍처’를 읽게 되었다. 이번 역시 개념이 어렵다고 느꼈으나 페르소나와 구체적인 상황을 정의하여 설명하는 방식으로 비교적 쉽게 이해할 수 있었다.

 

 이 책의 주된 내용은 진화적 아키텍처의 개념과 그 당위성, 이를 실현하기 위한 방법이다. 1부에서 진화적 아키텍처와 관련한 메커니즘과 엔지니어링 사례를 정의하며, 진행 시 필요한 기술과 도구, 범주 등을 설명한다. 2부에서는 구조 설계와 진화와 거버넌스 효과에 대해 설명한다. 기존의 아키텍처의 개념에서 조금 더 현대화된 IT 생리가 담겨있다고 볼 수 있다. 

 

 책에서는 진화적 아키텍처가 등장하게 된 배경을 개괄적으로 설명한다. 그 중 한 이유는 데브옵스 도구의 등장이었다. 퍼펫, 셰프 등의 데브옵스 도구가 머신 프로비저닝을 자동화하며 리눅스의 운영적 비용도 완전히 사라졌다고 한다. 이 툴의 존재에 대해 처음 알게 되었으나 아키텍트의 진화에 도움이 된 만큼 짚고 넘어가면 좋을 것 같다.  

 

 

 

피트니스 함수란 예상 설계 솔루션의 설정 목표 달성도를 간단하게 확인할 수 있는 목적 함수다. 진화적 컴퓨팅에서 피트니스 함수는 대상 알고리즘 시간이 지남에 따라 얼마나 개선되었는지를 나타낸다. 다시 말해, 피트니스 함수는 변형 알고리즘이 생성될 때마다 알고리즘 설계자가 정의한 ‘적합성’에 근거해 각 변형이 얼마나 ‘적합한가’를 판단한다.  

진화를 보호할 아키텍처 특성을 아키텍트가 정의하면, 그에 따라 각 기능을 보호할 피트니스 함수가 하나 이상 정의된다. 

30쪽, 진화적 아키텍처.

 

지난 번 책과 동일하게 피트니스 함수의 역할을 강조했다. 아키텍트를 수치화하여 객관적으로 적합성을 검증할 수 있는 도구이므로 이 개념은 꼭 숙지하고 가야할 것 같다. 

 

 

 

공식 웹 사이트 ( https://evolutionaryarchitecture.com ) 

책과 관련한 공식 웹사이트를 운영하고 있다고 한다. 저자들이 직접 만든 참고 자료와 강연을 제공한다.

 

cloudshadow@gmail.com

또, 기술적인 궁금증이 있거나 코드 예제에서 오류가 발생한 경우 문의 또한 넣을 수 있다고 한다. 

 

 

아키텍트의 역할에 관심이 있는 이들은 물론, 컨설턴트와 개발자가 읽어도 실무를 진행하는데 있어 큰 도움이 될 것이다.  

 

 

 

 

 

 

 

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

이 리뷰가 도움이 되었나요? 공감 0 댓글 0
포토리뷰 진화적 아키텍처 내용 평점5점   편집/디자인 평점5점 j**y | 2023.09.24 | 추천0 | 댓글0 리뷰제목
클라우드 기술의 발전으로 서버, 스토리지, 네트워킹 등의 리소스를 온디맨드로 이용할 수 있게 되었습니다. 이는 확장성과 유연성을 높여 비용 효율적인 IT 인프라 관리를 가능하게 합니다. 기존 이론적으로만 존재하는 기술들을 현실로 가능하게끔 환경이 조성됐습니다. 품질의 성능을 높일 수 있도록 도움을 주는 아키텍처 책이 나왔습니다. 바로 진화적 아키텍처란 책이 나왔습니다;
리뷰제목

클라우드 기술의 발전으로 서버, 스토리지, 네트워킹 등의 리소스를 온디맨드로 이용할 수 있게 되었습니다.
이는 확장성과 유연성을 높여 비용 효율적인 IT 인프라 관리를 가능하게 합니다.
기존 이론적으로만 존재하는 기술들을 현실로 가능하게끔 환경이 조성됐습니다.

품질의 성능을 높일 수 있도록 도움을 주는 아키텍처 책이 나왔습니다.

바로 진화적 아키텍처란 책이 나왔습니다.

이 책에 대해서 2가지로 정리해보도록 하겠습니다.

 


 

 

1) 진화적 아키텍처의 특성
진화적 아키텍처는 초기에 완벽하지 않아도 되며 시간이 지남에 따라 조정, 개선되는 유연한 시스템 설계를 말합니다.
이는 초기에 중요한 기능에 중점으로 운영하면서 적응하고 발전할 수 있도록 합니다.
이때 시스템이 변화에 유연하게 대응하고 효율적으로 운영될 수 있도록 설계되어야 합니다.
이 책은 시스템이 지속적인 발전을 할 수 있도록 아키텍처를 설계하는 것을 강조하는데요.
전체적인 아키텍처를 어떻게 설계하면 좋을지 많이 배울 수 있습니다.

 


 

 

2) 컨테이너 기술로 이론을 현실화
이론적으로 알게 된 진화적 아키텍처를 시스템에 구성하기 위해서는 컨테이너 기술은 필수적입니다.
컨테이너 기술은 애플리케이션을 격리하고 이식성을 높여주기 때문입니다.
컨테이너는 환경에 독립적으로 실행됩니다.
또한 개발 환경과 프로덕션 환경 간의 간극을 줄여줍니다.
컨테이너는 자동화와 빠른 배포를 해 개발자와 운영팀이 효율적으로 협력할 수 있게 합니다.
이로 인해 진화적 아키텍처 원칙을 더욱 적용하고 적응할 수 있는 환경이 조성되어 시스템이 더 유연하게 발전할 수 있게 되었습니다.

 


 

 

PS
리팩토링 책의 저자인 마틴 파울러가 추천한 책인데요.
주니어 개발자는 기반지식이 없다면 상당히 어렵지만 배울 게 많은 책입니다.

또한 변화에 빨리 적응하기 위해선 테스트에 대한 강조가 많습니다.
그 이유는 기존 테스트를 바탕으로 변경한 코드를 검증하는 구조로 많이 사용합니다.

기존 코드에 테스트 코드를 습관화 하면서 이 아키텍처를 이해하고 도입해 보는 것도 추천해 드립니다.

 

이 리뷰가 도움이 되었나요? 공감 0 댓글 0

한줄평 (1건) 한줄평 총점 8.0

혜택 및 유의사항 ?
구매 평점4점
괜찮은 것 같네요.
이 한줄평이 도움이 되었나요? 공감 0
YES마니아 : 플래티넘 g********s | 2023.11.12
  •  쿠폰은 결제 시 적용해 주세요.
1   23,400
뒤로 앞으로 맨위로 공유하기