RadarURL

조회 수 4654 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

가 크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

가 크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
본 Post는 서적 "소프트웨어 아키텍처 이론과 실제"에 대한 내용 입니다.

1부 아키텍처 개요


 

1. 아키텍처 비즈니스 사이클


이책에서는 첫 장에서 소프트웨어 아키텍처의 정의를 아래와 같이 내리고 있다.

"프로그램이나 컴퓨팅 시스템의 소프트웨어 아키텍처는 소프트웨어 구성요소와
그들이 지니고 있는 특성 중에 외부에 드러나는 특성,
그리고 구성요소들의 관계를 표현하는 시스템의 구조나 구조체를 말한다."


 위 구문에서 한가지 궁금했던 것은 외부에 드러나는 특성이란 무엇일까?
소프트웨어적인 부분을 정의하고 있기 때문에 내부적으로 구현을 이루고 있는 세세한 특징은 Architecture Core의 역할로 보고 그 보다는 외부에 표현해주어야 할 Interface의 역할 정의가 아키텍처에서 바라보아야 할 것으로 생각된다.

이로써 정의된 Interface를 제공받는 개발자가 1인칭 관점으로 보았을 때의 Software Architecture의 역할 중 하나로 보아야 하겠다.

각각 명확한 목적을 담고 있는 구성 요소를 이루어 내야 할 목표에 맞게 조합하는 구조나 구조체를 공유할 수 있는 수단으로 정의하는 것을 의미할 것으로 본다.


아키텍처의 잘못된 설계의 역사적 예로서 "스웨덴의 전함 바사"를 소개하고 있다.


[이미지 출처: 블로그 "아빠 늑대의 음흉한 둥지"]



바사의 예에서 아키텍트가 놓친 부분은 다음과 같이 정의하고 있다.


  1. 아키텍처에 적용 가능한 기술의 사례 확인
  2. 아키텍처를 평가할 수 있는 방법
  3. 문제점의 빠른 대응을 위한 아키텍처 중심 점진적 개발 기법


위 정의에 대해 아래와 같이 해석해 보았다.


사실, 프로젝트 진입 시 1. 의 경우가 상당히 중요한 작업이다. 예를 들어 DBMS OR-Mapping을 위한 기술을 적용하기 위해 IBatis 를 쓸 것인지 Hibernate를 쓸 것인지를 결정하고 나면 프로젝트 진행 도중에 변경한다는 것은 경우에 따라서는 가늠이 않될 정도의 비용을 초래할 수도 있기 때문에 신중한 결정이 따른다.

이 때, 결정자가 아키텍트가 아니라면 아키텍트는 올바른 결정을 내릴 수 있게 충분한 자료와 사례를 수집 정보화해야 할 것으로 본다. (1.의 정의에 관해)

기술 검토를 토대로 아키텍처가 생성되었다면 이 아키텍처가 우리 모두가 원하는 목표를 충족시킬 수 있을 것인지를 정량적으로 표현할 수 있는 방법을 수립해야 한다. (2.의 정의에 관해)

모두가 수용할 수 있는 아키텍처의 정의가 완성되어 구현에 들어갔을 때 완료시점까지 끊임없이 발생하는 이슈(문제점)들을 아키텍트는 아키텍처가 해결할 수 있는 방법을 제시할 수 있도록 해야 한다.

1.1 아키텍처에 영향을 주는 요인


내가 아키텍트인데 아키텍처를 만드는 작업을 할 때 만들어야 할 아키텍처에 영향, 즉 아키텍처의 결과물에 영향을 주게될 요인들은 무엇이 있을까?

책에서는 아래와 같이 나열하고 있다.


  • 이해관계자
    개발 시스템과 관련된 모든 (결과물을 사용할 사용자까지) 사람이나 조직.
    이들에게서 요구되는 것들을 아래와 같이 리스트해볼 수 있다.

    - Performance
    - Reliability
    - Availability
    - Platform compatibility
    - Memory Utilization
    - Network Usage
    - Modifiablity
    - Usability
    - Interoperability

    책에서는 이와 같은 요구사항을 만족시키기 위한 아키텍트의 작업을 아래와 같이 정의하고 있다.

    "아키텍트는 테스트가 가능한 수준까지 작성할 수 있어야 하고, 시스템의 품질속성 간에 상충되는 부분에 대해 합의점을 찾아야 한다."
  • 개발조직
    단기사업, 장기 사업, 조직 구성으로 영향을 받을 수 있다.

    - 단기적으로 사업을 완성할 수 있는 자산 재 사용성을 고려해야 한다.
    - 장기적 목표에도 부합해야 한다.
    - 특정 기술을 필요로 하는 하위 시스템 구성을 포함할 수 있는 아키텍처를 수립해야 한다.
  • 배경과 경험
    아키텍트의 배경,경험이 수립하려고 하는 아키텍처에 영향을 미친다.

    역으로 보자면 아키텍트를 고용하는 사람 입장에서는 가능하면 목표에 부합되는 경험을 가진 아키텍트를 선발하는 것이 위험 부담을 줄일 수 있다는 설명이 되겠다.
  • 기술적 환경
    현재 적용하는 시점에서의 업계 표준, SW 공학 기법 등 기술적 환경에 영향 받는다.
  • 기타요인
    아키텍트는 다양한 영향 요소들이 상충하여 충돌이 발생할 경우, 이해관계자가 적극적으로 문제해결에 참여할 수 있도록 유도해야 하며, 트레이드오프가 발생할 경우 절충 능력과 협상력, 대화 능력을 갖추어야 한다.
  • 아키텍처의 영향 요인과 순환 관계

    -. 아키텍처는 개발 조직 구성에 영향을 미친다.
    개발 조직으로부터 피드백을 받게 된다.

    - 아키텍처는 개발 조직 목표에 영향을 미친다.

1.2 소프트웨어 프로세스와 아키텍처 비지니스 사이클


아키텍처는 상호간의 피드백 관계를 형성하는데 다음과 같은 수립 확동이 있다.


  • 사업 기회 창출
    미래의 요구사항을 포함할 수 있는 아키텍처 수립
  • 요구사항 이해
    각종 명세 언어, 현행 유사 시스템과의 비교, 프로토타입의 개발을 통해 시스템의 동작과 인터페이스를 정확히 이해 및 수립되어야 함.
  • 아키텍처 선택 혹은 수립
    개념적 통합을 가능케할 시스템 아키텍처 수립.
  • 아키텍처 문서화와 의사소통
    모든 이해 관계자가 이해할 수 있도록 명세 수립.
  • 아키텍처 분석과 평가
    이해관계자들의 요구사항 반영을 확인할 수 있는 분석 기법을 활용한 평가 결과 수립.
  • 아키텍처 기반 시스템 개발
    개발자의 아키텍처 이해 지원 방안 수립.
  • 아키텍처 준수 여부 확인
    개발 시스템과 아키텍처 사이의 차이 확인 방안 수립.



1.3 좋은 아키텍처의 조건


어떤 아키텍처도 좋다 나쁘다 평가할 수 없으며, 단 아래와 같은 권고사항으로써 아키텍처를 점검할 수 있다.

1.3.1 프로세스 권고사항

  • 아키텍처는 아키텍트를 통해 수립.
  • 아키텍트는 요구사항 수집,정제,우선순위 수립.
  • 아키텍처는 적어도 하나의 정적뷰,동적뷰를 포함하고 이해하기 쉬운 기호로 문서 기술 되어야 함.
  • 아키텍처는 전체 이해관계자가 배포 받고 검증시 참여되어야 함.
  • 아키텍처는 정량적 성능 품질로 평가되어야 하고 논리적으로 확인되어야 함.
  • 아키텍처는 요구사항을 수용가능한 포함하고 점진적 기능 확장 가능해야 함.
  • 아키텍처는 자원 경쟁 시에 대한 적정 제한을 제시해야 함.

1.3.2 구조적 권고 사항.


 

  • 아키텍처는 모듈단위로 구분 가능해야 하며, 하부 구조 변경 시 유연하게 대처 가능해야 함.
  • 모듈은 내부 변화(데이터나 행위 자체)를 은닉할 수 있도록 인터페이스를 제공해야 함.
  • 품질 속성은 구체적이고 일반적인 기법으로 정의 되어야 함.
  • 아키텍처는 특정 버전의 제품에 대한 의존도가 없어야 함.
  • 데이터의 생성과 사용 모듈은 구분되어야 함.
  • 병렬 처리 시스템에서 모듈은 하나의 컴포넌트나 커넥터로 표시해서는 않된다.
  • 모든 태스크나 프로세스는 문서화 되어야 함.
  • 아키텍처는 몇 가지(적정)의 단순한 상호작용 패턴을 정해 표시해야 함.


위 권고 사항이 절대적이지 않으나 수립과정 시 문제점을 파악할 수 있는 이정표.



※ 첨부.

아키텍처의 종류


  • Business Architecture (BA)
  • Application Architecture (AA)
  • Solution Architecture (SA)
    (Software Architecture 가 아닌가 싶은데 확인이 필요하네요..)
  • Data Architecture (DA)




아키텍트의 위치


  • Enterprise Architect (EA)
    전체 아키텍처 설계
  • Solution Architect (SA)
    특정 솔루션 아키텍처 설계
  • Technical Architect (TA)
    하드웨어 및 네트워크 아키텍처 설계
  • Application Architect (AA)
    어플리케이션 표준 가이드 및 아키텍처 구조 설계
  • Data Architect (DA)
    데이터 아키텍처 설계
  • Global Architect (GA) [Optional]
    대규모 프로젝트에서 EA의 역할 분담자로 나머지 아키텍트의 통제와 상세 기술 설계 영역을 담당



[참고. 조대협의 블로그 http://bcho.tistory.com/668]

 

출처 : http://gwpark.blogspot.kr/2012/11/1.html

?

공부 게시판

공부에 도움되는 글을 올려주세요.

  1. [공지] 공부 게시판 입니다.

    Date2003.08.18 By처누 Views2017308
    read more
  2. 티소믈리에, 차 문화를 바꾸다

    Date2026.10.06 Categoryu-E(TestBed) By광휘의철편64 Views3
    Read More
  3. 창원흥신소 서비스 안내

    Date2026.10.06 Category가상화 By흔들리는골렘32 Views1
    Read More
  4. 동작노래방 010 2817 0845 모임 분위기에 맞는 노래방 안내

    Date2026.10.06 Category경제 By교활한철학자타조18 Views1
    Read More
  5. 유심&통장 [카,톡] sim256 (24시문의) 대포유심 대포통장판매 선불유심팝니다 대포유심팝니다

    Date2026.10.06 Category윈도우즈 By놀라운운석99 Views1
    Read More
  6. 강남세븐❤️OlO-8655-OO53❤️친절문의환영 #강남세븐 #역삼동세븐 #강남세븐데이즈 #강남풀싸롱 #역삼동풀싸롱 #선릉역풀싸롱 #역삼동룸싸롱 #역삼룸사롱 #역삼풀살롱 #강남미러초이스 #역삼미러초이스

    Date2026.10.06 Category업무 By괴랄한재규어89 Views1
    Read More
  7. 파주누수업체, 신속 해결의 모든 것

    Date2026.10.06 Category건강 By우중충한도적91 Views2
    Read More
  8. ㅇㅇ병원, 당신의 건강을 책임지는 현명한 선택

    Date2026.10.06 Categoryu-E(활성화) By빛나는달고나24 Views1
    Read More
  9. 양산싱크대막힘 시원하게 뚫는 비법

    Date2026.10.06 Categoryu-E(표준화) By예측불가토끼46 Views1
    Read More
  10. 용인두피문신 고민? 만족 후기 보려면

    Date2026.10.06 Category동식물 By절묘한솔개92 Views6
    Read More
  11. 토보샵: 명품레플리카 쇼핑의 시작

    Date2026.10.06 Category구글 애드센스 By얼어붙은흐름98 Views3
    Read More
  12. 대전누수, 근본 원인 해결의 시작

    Date2026.10.06 Category사무 소프트웨어 By적막한체이서42 Views1
    Read More
  13. 마인드 끝판왕 사이즈까지 장착 완료! 010---8293---0291---- 여기가 베트남인줄 마블 노래클럽

    Date2026.10.05 Category사업 By기운찬오소리38 Views1
    Read More
  14. 카-툑 gusim8003 [24시문의] 선불유심내구제/내구제대출/소액대출/급전/ 비대면대출 상조내구제 무직자대출 대출

    Date2026.10.05 Category건강 By어설픈오소리22 Views1
    Read More
  15. 강남엘리트❤️OlO-8655-OO53❤️친절문의24시 강남하퍼1등실장 #강남엘리트 #강남엘리트위치 #강남엘리트하퍼 #하이퍼블릭엘리트 #강남엘리트예약문의 #선릉엘리트 #선릉역엘리트 #강남사라있네

    Date2026.10.05 Category하드웨어 By괴랄한재규어89 Views1
    Read More
  16. 청담동셔츠룸 010 2817 0845 일정과 인원에 맞춘 셔츠룸 문의

    Date2026.10.05 Category블로그 By정열적인퀘이사14 Views1
    Read More
  17. 최근 테헤란로 벤처 밸리의 핵심 리더들 사이에서 ‘클래스가 다른 정통 수질과 프라이빗 무드’로 소문 자자한 '선릉 룸싸롱' 기습 방문, 인공미를 거부하는 무결점 뉴페이스들과 심장을 마비시킨 사심 플러팅에 제대로 저격당하고 온 솔직 후기

    Date2026.10.05 Category카메라 By희미한홍학99 Views1
    Read More
  18. 본식DVD, 웨딩영상 색감이 중요한 이유새 창 열림

    Date2026.10.05 Categoryu-E(활성화) By힘겨운귤35 Views2
    Read More
  19. 대전, 인천, 세종 하수구 막힘 문제 해결 방법

    Date2026.10.05 Category공지 By정열적인코요테90 Views4
    Read More
  20. <문경맥주> 구입 할 수 있는 곳은 새 창 열림

    Date2026.10.05 Category취미 By타오르는드래곤61 Views1
    Read More
  21. 강남건전지❤️OlO-8655-OO53❤️친절문의환영 #강남건전지 #강남유니콘 #선릉유니콘 #강남건전지위치 #선릉역건전지#대치동유니콘 #강남바커스 #선릉바커스 #선릉역바커스 #강남룸클럽 #선릉룸클럽 #강남베터리 #강남바데리

    Date2026.10.05 Category데이터베이스 By괴랄한재규어89 Views1
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 132 Next
/ 132


즐겨찾기 (가족)

JAESOO's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너