일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Spark
- 슬랙 파일업로드
- Rate Limit
- 머신러닝
- 슬랙
- kafka
- Scouter
- 카프카 성능
- Slack File Upload
- 파이어베이스
- bag of words
- 스카우터
- FCM
- 이미지 푸시
- firebase
- Scale Cube
- 슬랙 파일업로드 제한
- Slack Rate Limit
- 카프카
- 자연어처리 #konlpy #형태소분석
- n-gram
- 코어/컨텍스트
- 팀 발달 모델
- 스케일 큐브
- Core/Context
- 해킹
- Slack Limit
- 웹보안
- Tuckman
- 알림무시
- Today
- Total
플랫폼 개발팀 기술 블로그
아키텍처의 출발점 본문
변화경영연구소의 소장이셨던 고 구본형 선생의 유명한 책인 '익숙한 것과의 결별'에서는 다음과 같은 내용이 있다.
비전을 제대로 이해하기 위해서는 건축물을 연상하는 것이 가장 완벽한 동질성을 부여한다.
비전은 '미래의 설계도'라고 말하는 사람들이 많다.
그러나 나는 그 생각에 강하게 반대한다.
그것을 설계도라고 해석하는 데서부터 많은 오류가 발생한다는 것을 알고 있기 때문이다.
설계도는 전문가들을 위한 것이다.
보통 사람은 설계도를 보고 그 건물의 전체적 모습을 떠올릴 수 없다.
그것은 판독하기 어려운 수치와 기호일 뿐이다.
비전은 이해관계자 모두가 쉽게 그 모습을 머릿속에 떠올릴 수 있어야 하며,
그 모습의 아름다움 때문에 마음이 설레야 한다. 따라서 비전은 오히려 건물의 조감도와 흡사하다.
건물의 유려한 자태와 자재의 질감이 느껴져야 한다.
그리고 그 건물 속의 한 부분을 줌업시키면 그 속에 앞으로 자신이 거주하고 생활할 새로운 공간이 보인다.
이 건물이 만들어지면 이 아름다운 곳으로 이사올 것이다.
어둡고 추운 지금의 공간을 떠나 밝고 넓고 전망이 좋은 공간에서 생활하게 될 것이다.
비전에 대해 설명하는 내용이지만, 문득 아키텍처의 출발점이 이와 같지 않을까 하는 생각이 든다.
IT 시스템을 위한 아키텍처의 1차적 목표 역시, 대형의 복잡한 시스템에 대한 합리적으로 이해가능한 청사진을 제공하는데 있다.
여기서 '이해가능한'의 대상은 시스템 구축에 참여하는 모든 이해관계자로 볼 수 있으며, 이 중 핵심 이해관계자는 바로 고객이 되므로 고객이 이해가능한 시스템의 청사진이어야 한다.
고객이 이해한다는 것은, 고객의 요구사항을 합리적으로 해결하는 청사진을 제공하는 것이며, 아키텍처 드라이버라는 용어로 불리우는 아키텍처 결정요인 중 비기능 요구사항에 해당하는 품질속성을 만족시키는 아키텍처가 훌륭한 아키텍처인 것이다.
품질속성이라는 것도 가용성/성능/보안/유지보수성과 같은 시스템적인 부분도 있지만, TimetoMarket/시스템수명/가격 등 비지니스적인 부분도 고려되어야 한다.
따라서 고객의 관점에서 비기능요구사항에 대한 만족스러운 청사진을 제공하는 것은 IT전문가들만 이해가능한 복잡한 설계도가 아닌 전체 조감도가 더 아키텍처에 근접한 것이 아닐까 한다.
다음 그림은 아파트 건축물의 조감도이다.
아파트는 주거공간이라는 가장 기본적인 기능적 요구사항 외에도 고객의 선택에 더욱 중요한 변수인 주변생활여건, 녹지공간, 전망, 해가 들어오는 방향, 역세권 등의 품질속성이 매우 중요한 축을 차지한다. 이런 요건은 전문 설계도 보다는 아래 그람과 같은 조감도가 더욱 많은 얘기를 해 준다.
물론 이해관계자 모두가 제시된 청사진을 기반으로 작업을 진행해야 하기에 설계자, 개발자, 유지보수자와 같은 IT전문가들이 아키텍처가 설계한 원칙을 준수하는데 동참시키기 위해서는 다양한 설계의 측면을 고려해야 한다. 그래서 아키텍처 뷰의 가이드로써 OMG의 4+1View, CMUSEI의 3View, 지멘스의 4View 같은 참조모델이 존재한다.
다음 그림은 아파트의 특정 가구에 대한 설계도이다.
이 설계도는 개별 세대의 방구조와 배치, 동선 등을 표현하는 좀더 세부적인 아키텍처에 해당한다. 또한 전문적인 기호와 수치는 또 다른 이해관계자(설계자, 시공업자 등)를 위해 제공되는 정보 상세한 설계 기준으로 사용된다.
현대 건축의 아버지라 불리우는, '르 코르뷔지에'는 다음과 같은 말을 했다고 한다.
우리는 돌, 나무, 시멘트를 사용하여 집을 짓고 건물을 만든다.
이것은 건축이다.
그런데 문득 그것이 내 마음을 사로잡고, 나를 감동시킨다.
그 순간 행복한 나는 이렇게 말한다.
"아~ 아름답군!". 아키텍처(Architecture)란 그런 것이다.
- 르 코르뷔지에, 19123 "Architecutre: From Prehistory to Post-Modernism"
IT 개발의 많은 요소들이 건축의 그것에서 차용되어왔다. IT 아키텍처 역시 건축물의 아키텍처 사상에 근원하고 있으며, 아키텍트라면 르 코르뷔지에와 같은 마인드를 가져야 하지 않을까 한다.
마지막으로 앞의 구본형 소장의 글을 SW아키텍처에 비유해 다음과 같이 무단 변경해 본다.
SW아키텍처를 제대로 이해하기 위해서는 건축물을 연상하는 것이 가장 완벽한 동질성을 부여한다.
SW아키텍처는 '시스템의 설계도'라고 말하는 사람들이 많다.
그러나 나는 그 생각에 강하게 반대한다.
그것을 설계도라고 해석하는 데서부터 많은 오류가 발생한다는 것을 알고 있기 때문이다.
설계도는 전문가들을 위한 것이다.
보통 사람은 설계도를 보고 그 건물의 전체적 모습을 떠올릴 수 없다.
그것은 판독하기 어려운 수치와 기호일 뿐이다.
SW아키텍처는 이해관계자 모두가 쉽게 그 모습을 머릿속에 떠올릴 수 있어야 하며,
그 모습의 아름다움 때문에 마음이 설레야 한다.
따라서 SW아키텍처는 오히려 건물의 조감도와 흡사하다.
소프트웨어의 유려한 자태와 추상화된 고품질의 질감이 느껴져야 한다.
그리고 그 시스템 속의 한 부분을 줌업시키면 그 속에 서브 시스템이 생활할 새로운 공간이 보인다.
이 시스템이 만들어지면 이 아름다운 것을 사용할 것이다.
어둡고 추운 지금의 시스템을 떠나 밝고 넓고 전망이 좋은 시스템을 활용하게 될 것이다.
'프로젝트 관리' 카테고리의 다른 글
Core/Context 모델 (0) | 2019.03.22 |
---|---|
Tuckman의 팀 발달 모델 (0) | 2019.03.08 |