메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

아키텍트에 대해서 다시 생각해볼 수 있는 책

hji7***

|

2022-06-27

적정 소프트웨어 아키텍처

소프트웨어 개발을 시작할 때 필요한 실용 가이드북이다. 소프트웨어 아키텍처의 리스크는 무엇인지, 아키텍처 설계 원칙은 어떻게 적용하고 해결하는지, 유관 부서의 실무자를 어떻게 도울 수 있는지 등의 주제를 개발자가 흔히 겪는 경험을 기반으로 풀어냈다.

  • 저자 : 조지 페어뱅크스
  • 번역 : 이승범
  • 출간 : 2022-05-30

되돌아보면 10년마다 새로운 어려움에 맞서는 새로운 추상화가 도입되었음을 알 수 있다. 오래된 도구를 연마해두는 일도 도움이 되지만 새로운 도구 없이는 향후 10년 동안의 어려움을 극복하기 힘들다.

본문 407 페이지

저자는 "필요한 새로운 도구"에 대해서 이 책에 이야기하고 있습니다. 저자가 제시하고자 하는 건, "적정 소프트웨어 아키텍처"인데요. 이는 1.6절에 언급하고 있는 "리스크 주도 소프트웨어 아키텍처"라고 볼 수 있습니다.

그럼 리스크 주도 소프트웨어 아키텍처는 무엇일까요?

아키텍처링에 투입할 노력은 소프트웨어 개발의 실패 리스크에 따라 달라져야 한다.

본문 40 페이지

소프트웨어 프로젝트가 실패할 경우 발생하는 문제가 심각할 수록 아키텍처에 많은 신경을 써야겠죠. 만약, 프로그램이 "Hello world"를 찍지 못하고 죽어버리는 정도라면, 아키텍처에 신경쓸 필요 없겠지만, 달착륙선이 달착륙에 실패할 리스크가 있는 정도라면 아키텍트에 엄청난 노력을 기울일 겁니다.

아키텍처를 설계하는 데 드는 노력이 프로젝트의 리스크에 비례해야 한다.

본문 73 페이지

저자는 책 곳곳에서 "리스크 주도 아키텍처" 또는 "적정 소프트웨어 아키텍처"에 대해 설명하려고 노력하고 있습니다. 아키텍트를 설명해야 하므로 일반적인 아키텍트에 대해서도 꽤 자세히 설명하고 있는데요. 아키텍트에 대해서 전반적으로 이야기하고 있어서, 아키텍트에 대해 이해하고 싶다면 꽤 도움이 될 것 같습니다.

히, big ball of mud (큰 진흙 뭉치)라고 부르는 아키텍트에 대한 설명은 많은 것을 생각하게 했습니다. 큰 진흙뭉치 아키텍트는 사실상 아키텍트가 없는 상태에서 소프트웨어를 개발하는 상황을 말합니다. ( 사실 우리가 진행하는 프로젝트 대부분이 여기에 해당할지도 모릅니다. )

물론, 아키텍트가 필요없는 프로젝트가 있을 수 있습니다. 저자가 언급한건, 마당 앞 작은 우체통을 만들거나 뒤뜰에 아무렇게나 쓸 헛간을 만드는 경우에는 특별한 아키텍트가 필요없을 거라고 말합니다. 그정도로 간단한 프로젝트에서는 아키텍트를 쓰지 않는게 오히려 낫다는 의미인데요.

저는 다른 방향으로 생각해봤습니다. ' 그런 프로젝트를 해서 나온 소프트웨어를 팔수 있다는 말인가? '

사실 팔지 않는게 당연할지도 모르겠습니다. 그렇게 나온 소프트웨어는 나혼자 아무렇게나 쓸 헛간이나, 집앞에 대충 서있는 작은 우체통이어야 하기 때문이죠.

개발자가 자기 맘데로 코딩을 해나가는걸 방해하는게 아키텍트입니다. 하지만 그렇게 함으로써 개발자에게 지혜를 전달하고 불필요한 창의성 소모를 감소시켜, 결국 더 나은 코드를 만들어 내는 결과를 만드는 게 아키텍트라 할 수 있습니다.

따라서 아키텍트가 있어야 소프트웨어 조직에 지혜가 축적되고, 프로젝트 진행에 대한 회고가 가능하며, 개발자의 역량도 빠르게 성장할 수 있을 겁니다.

문제는 우리는 아키텍트를 그리 중요하게 여기지 않는다는 것입니다. 그래서, 우리의 다양한 활동이 결국 우리와 회사와 우리의 기술역량이 성장해 나가는데 까지 연결되지 않는 것 아닐까 싶었습니다.

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

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?