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


블로그 전체검색
소프트웨어 아키텍처 The Hard Parts

[eBook] 소프트웨어 아키텍처 The Hard Parts

닐 포드,마크 리처즈,프라모드 세달라지,세막 데그하니 공저/이일웅 역

내용 평점 5점

구성 평점 5점

소프트웨어 아키텍처의 난해하고 중요한 부분에 대한 책이다.

모든 소프트웨어 아키텍처가 트레이드오프라는 말에 공감한다.

현실적으로 가능한 선에서 비용과 효율을 고려해 최선의 선택을 해야 한다.

 

파트1 : 따로 떼어놓기

파트2 : 다시 합치기

 

책은 크게 2가지의 부분으로 이뤄져있다. 그리고 자바로 설명한다.

좀 더 쉽게 소프트웨어 아키텍처의 현실적인 딜레마를 설명하기 위해 가상의 애플리케이션으로 책을 진행시킨 점도 좋았다.

또 역자가 파트1부터 가상의 기업과 조직, 인물들을 한국식으로 재편성해 대본 형식으로 바꾼 것도 이해하기 편했다. ^^

은근히 영어이름과 매칭되는 한국어 이름(Logan -> 노건우) 을 택한 센스를 이해했다. 

 

아키텍트의 대해 우리가 스택오버플로우에서 쉽게 답을 찾을 수 없는 이유는 뭘까.

각 회사마다 처한 상황과 쓸 수 있는 비용이 다르기 때문이다. 그렇기 때문에 소프트웨어 아키텍트는 커스텀하게 들어갈 수밖에 없고 그렇기에 이 부분에서 비즈니스적으로 컨설턴트가 개입될 여지가 충분히 있다고 생각한다.

어쩌면 이러한 점 때문에 소프트웨어 아키텍처가 거시적으로는 매력적이지 않나 라는 생각이 든다.

더 나은 선택을 할 수 있게끔 도와줄 수 있다면 그 자체로 시장에서 경쟁력을 가진 게 아닐까.

 

요점정리

- 소프트웨어 아키텍처 스타일

: 10년 전 - 오케스트레이션, 현재 - 오픈소스, 마이크로서비스

: 한번에 하나씩 아키텍처는 스스로를 완전히 대체한다.

 

- 데이터는 중요하다

: 운영데이터(OLTP, 일반적인 DB사용), 분석데이터(OLAP, prediction, analysis, BI, Data Science, Business Analysis, 관계형 데이터 아님)

 

-피트니스 함수 사용하기

: 어떤 아키텍처 특성이나 그것들을 조합한 아키텍처 특성의 무결성을 객관적으로 평가하는 임의의 메커니즘

|_'임의의 메커니즘' - 성능, 확장성 등 운영 아키텍처 특성은 아키텍처 구조를 테스트하는 전용 테스트 라이브러리로 평가.

|_'객관적인 무결성 평가' - 테스트, 모니터, 다른 피트니스 함수로 측정 가능한 객체의 값 제공

|_'어떤 아키텍처 특성이나 그것들을 조합한 아키텍처 특성' - 원자적(코드베이스의 컴포넌트 주기 확인), 전체적(서로 맞물려 있는 아키텍처 특성을 잘 조합하고 조합 결과가 아키텍처에 부정적인 영향을 미치지 않도록 보장)

 

-도메인 설계 검증은 단위 테스트에 해당

: 테스트에 도메인 지식이 필요하지 않으면 피트니스 함수, 필요하면 단위 테스트

|_ 예) 탄력성 - 폭증 유저수 감당하는 앱 능력. 구조에 대한 문제니 피트니스 함수에 해당

 

-모놀리식 아키텍처

:  모든 비즈니스 관련 사항을 함께 결합하는 하나의 코드 베이스를 갖춘 대규모의 단일 컴퓨팅 네트워크

: vs MSA(마이크로서비스 아키텍처)

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

 
취소

댓글쓰기

저장
덧글 작성
0/1,000

댓글 수 0

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

PRIDE1