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


블로그 전체검색
적정 소프트웨어 아키텍처

[도서] 적정 소프트웨어 아키텍처

조지 페어뱅크스 저/이승범 역

내용 평점 5점

구성 평점 5점

적정 소프트웨어 아키텍처

JUST ENOUGH SOFTWARE ARCHITECTURE

리스크 주도 접근법

A Risk Driven Approach

조지 페어뱅크스 지음 / 이승범 옮김 / 한빛미디어

 

 

이 책은 다른 소프트웨어 아키텍처 책과 다르다. 차이점은?

1.   리스크 주도 아키텍처링을 가르친다.

리스크가 적을 때는 세심한 설계가 필요하지 않지만, 리스크가 많아 성공이 불확실할 때는 엉성한 설계가 용납되지 않는다. 유명 애자일 소프트웨어 지지자들은 일부 선행 설계가 도움이 될 수 있다고 제안한다. 이 책은 적정하게 아키텍처 설계를 수행하는 방법론을 말한다. 직면한 리스크에 따라 아키텍처와 설계에 들이는 노력을 조정하는 방법에 관해 조언하여 ‘프리사이즈() 프로세스 구렁텅이’로 가능 상황을 방지한다. 복잡한 기법을 간략화하여 빠르게 처리하는 방법부터 상세하게 적용하는 방법까지 상황에 따라 조절하여 적용할 수 있다.

2.   참여하는 아키텍처를 지향한다.

여러분이 소프트웨어 아키텍트이거나 조직에 소프트웨어 아키텍트가 있을 수 있다. 저자가 만난 아키텍트들은 모든 개발자가 아키텍처를 이해하기를 바란다 아키텍트는 개발자가 ‘아키텍처와 관련된 제약 조건이 존재하는 이유’와 ‘작아 보이는 변경이 시스템 속성에 큰 영향을 미칠 수 있다는 점’을 이해하지 못한다고 불평한다. 이 책은 아키텍트뿐 아니라 모든 소프트웨어 개발자와 관련된 아키텍처를 만드는 데 노력한다.

 

3.   선언적 지식(declarative knowledge)을 키운다

테니스 공을 칠 수 있다’와 ‘테니스 공을 칠 수 있는 이유를 설명할 수 있다’는 다르다. 심리학자가 말하는 절차적 지식()과 선언적 지식() 사이에도 이와 같은 차이가 있다. 여러분이 시스템 설계 및 구축 전문가라면 이 책의 많은 기법을 이미 사용해봤을. 것이다. 하지만 여기서는 여러분이 무엇을 사용했는지 더 잘 알 수 있도록 용어와 개념을 사용해 설명한다. 이러한 선언적 지식은 다른 개발자를 가르치는 데 도움이 된다.

 

4.   엔지니어링을 강조한다

소프트웨어 시스템을 설계하고 구축하는 사람들은 일정, 자원 할당(), 이해관계자 요구를 처리하는 등 많은 일을 해야 한다. 소프트웨어 아키텍처에 관한 많은 책에서 이미 소프트웨어 개발 프로세스와 조직 구조를 다뤘다. 하지만 이 책은 소프트웨어 개발의 기술적 부분에 초점을 맞추고, 개발자가 시스템을 작동하게 하려고 수행하는 작업인 엔지니어링을 다룬다. 원칙을 기반으로 설계의 절충안을 만들 수 있도록 모델을 구축하고 아키텍처를 분석하는 방법을 보여준다. 소프트웨어 설계자가 중대형 문제를 해결하는 데 사용하는 기법을 설명하고, 전문 기법을 어디서 더 자세히 배울 수 있는지 알려준다. 결과적으로 이 책 전체에서 소프트웨어 엔지니어를 프로그래머와 아키텍트로 구별하지 않고 모두 개발자라고 부른다.

 

5.   실용적 조언을 제공한다.

이 책은 아키텍처의 실용적인 활용 방법을 제공한다. 소프트에어 아키텍처는 일종의 소프트웨어 설계다. 하지만 설계 설정은 아키텍처에 영향을 미치며 그 반대도 마찬가지다. 최고의 개발자는 장애물을 자세히 살펴보고 이해한 후 이 내용을 바탕으로 해당 장애물의 특성을 아키텍처에 연결한다. 이 책은 상위 아키텍처에서 하위 자료 구조 설계에 이르기까지 추상화를 위한 다양한 수준의 모델을 활용하는 접근 방법을 알려준다.

 

대상독자

이 책의 주요 독자는 실무 소프트웨어 개발자다.

 

객체지향 소프트웨어 개발, UML, 유스 케이스, 디자인 패턴과 같은 기본적인 소프트웨어 개발 아이디어를 이미 알고 있어야 한다.

실제 소프트웨어 개발 경험이 있다면 더 도움이 될 것이다. 이 책에서 이야기하는 기본적인 내용은 대부분 개발자가 흔히 겪는 경험을 기반으로 하기 때문이다. 개발하면서 너무 많은 문서를 작성했거나, 코딩을 시작하기 전에 너무 적게 고민한 적이 있을 것이다. 어느 쪽이든 소프트웨어 개발이 왜 잘못되는지 알 수 있고, 이 책에서 제공하는 해결책이 많은 도움이 될 것이다.

이 책은 학부 고학년이나 대학원 수준의 교과서로도 적합하다.

 

이 책은 소프트웨어 아키텍처 분야에 몇 가지 공헌을 한다.

프로젝트에서 수행할 아키텍처와 설계 작업의 양을 결정하는 방법인 소프트웨어 아키텍처의 리스크 주도 모델을 소개한다.

또한 아키텍처에 대한 세 가지 접근 방식을 설명한다. 바로 아키텍처 무관 설계, 아키텍처 집중 설계, 아키텍처 상향 설계다.

추가로 소프트웨어 아키텍처에 대한 두 가지 관점인 기능적 관점과 속성 관점을 통합하여 하나의 개념 모델을 생성한다. 그리고 소스 코드를 읽음으로써 아키텍처를 분명하게 만드는, 구조적으로 명확한 코딩 스타일에 관한 아이디어를 소개한다.

 

소프트웨어 개발 PM은 읽고 프로젝트 진행에 적용할 적정한 방법을 찾을 수 있고, 소프트웨어 개발자들은 자신이 개발하는 소프트웨어가 잘 작동될 수 있도록 기능적 관점과 속성 관점을 통합하여 하나의 관점으로 바라보는 훈련이 필요하다.

 

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

 

#적정 #소프트웨어 #아키텍처 #리스크 #주도 #접근법 #JUST #ENOUGH #SOFTWARE #ARCHITECTURE #A_Risk_Driven #Approach #조지_페어뱅크스 #이승범 #한빛미디어

 


https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%A0%81%EC%A0%95
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EB%A6%AC%EC%8A%A4%ED%81%AC
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%A3%BC%EB%8F%84
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%A0%91%EA%B7%BC%EB%B2%95
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=JUST
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=ENOUGH
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=SOFTWARE
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=ARCHITECTURE
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=Approach
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%EC%9D%B4%EC%8A%B9%EB%B2%94
https://blog.naver.com/PostListByTagName.naver?blogId=ydk531&amp;encodedTagName=%ED%95%9C%EB%B9%9B%EB%AF%B8%EB%94%94%EC%96%B4
 
취소

댓글쓰기

저장
덧글 작성
0/1,000

댓글 수 0

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

PRIDE2