티스토리 뷰

728x90
SMALL

 포스팅은 아키텍트가 되기 위한 과정을 설명합니다.


그 일곱번째 시간으로 아키텍처 설계 중 SW아키텍처 설계 과정에 대해 살펴보도록 하겠습니다.

SW아키텍처 구조를 정의하고 구성요소간의 상호작용을 분석하여 구성요소간의 관계와 구성요소의 역할과 책임에 대해 정의하고 상세 설계하는데 목적이 있습니다.


1. 수행절차


  1. 소프트웨어 아키텍처의 범위를 구체화한다.
    • 선행작업에서 작성된 아키텍처 분석서, 아키텍처 이슈 목록, 솔루션 및 재사용 자산 분석서 등을 참조하여, 소프트웨어 아키텍처에서 제공해야 하는 설계 및 개발 지침을 정의하기 위해 고려되어야 하는 업무 범위와 솔루션 범위를 파악한다.
  2. SW 기술 유형을 정의한다.
    • 아키텍처 영향 요소 및 해당 기능을 달성하는데 활용되는 솔루션 군을 중심으로 품질속성에 따라 해당 프로젝트에 필요한 SW 기술 유형을 나누고 해당 기술 유형에 대한 기술 구조를 정의한다. (예, 웹 기술 유형, 배치 기술 유형, DW 기술 유형 등)
    • 해당 기술 유형별로 필요한 구성 요소를 도출하고 이들간의 관계를 표현한다. (일반적으로 소스코드 구성관계를 표현하는 Layer 뷰와 런 타임 시에 주요 기술 구성요소와 관계를 표현하는 Run-time 뷰, 어플리케이션이 배치되는 Delpolyment 뷰를 기본적으로 사용할 수 있다.)
    • 정보 시스템간의 연계를 수행하기 위한 연계 아키텍처를 정의하고 연계 대상 시스템간의 연계 구성을 도식화하고 연계 범위를 표현한다. (연계 구성 및 범위를 도식화하는데 있어서 연계 논리모델 다이어그램을 작성할 수 있다.)
  3. SW 기술 구조 별 설계 및 개발 지침을 작성한다.
    • SW 기술 유형이 정의되면, 각 SW 기술 구조 별로 설계 및 개발 지침을 작성한다. 소프트웨어 아키텍처 설계 전략 검토서에서 의사 결정한 결과와 핵심 근거 및 SW아키텍처 설계 단계에서 의사 결정한 결과와 핵심 근거를 기술한다.
    • 상기 의사 결정 사항 중에서 별도의 시스템 공통 모듈을 개발을 해야 하는 경우 그 규모와 양을 고려해서 개발표준 구현 단계에서 수행하도록 한다.
    • 상기 의사 결정 사항 중에서 정보 시스템간 연계 기능 구현을 위하여 연계 공통기능, 연계 유형(패턴)을 개발해야 하는 경우 그 규모와 영을 고려해서 개발표준 구현 단계에서 수행하도록 한다.
  4. SW 아키텍처의 적용 현황을 파악한다.
    • 관련 시스템 별로 설계 의사결정을 한 결과를 시스템 전체를 보여주는 Context레벨의 다이어그램 형태에서 목표 시스템의 구성과 해당 구성요소간의 상호작용 관계를 다양한 관점에서 표현될 수 있다. (시스템 구성 측면, 시스템간 연계 측면, 시스템 별 적용 솔루션 배치 측면 등)
    • 정의된 SW 아키텍처에 대해 각 업무에서 적용이 된 모습을 다양한 관점에서 표시하여, 해당 어플리케이션 별로 아키텍처가 반영되었음을 표현한다.
    • 상기 활동은 아키텍처정의서를 완료한 이후에 보완을 할 수 있다.
  5. PL은 타 아키텍처와의 상호 정합성을 검토한다.


2. 수행가이드


  1. 목표시스템의 규모가 큰 경우, 한 개 이상의 소프트웨어 기술구조가 정의될 수 있으며, 해당 기술 구조 유형이 적용되는 시스템의 범위가 명시되어야 한다.
  2. SW 아키텍처 측면에서는 모듈구조, 런타임 구성, 배포 구조, 연계 구조 관점에서 표현할 수 있다.
  3. 시스템 전체 측면에서의 아키텍처 상관관계를 이해하기 위해서 목표시스템 레벨의 다양한 관점을 프로젝트 상황에 따라 추가하여 작성할 수 있다. 이 경우 동일한 이해관계자의 고려사항을 반영이 반영될 수 있도록 일관성 있게 정리되어야 한다.
  4. SW 아키텍처 정의서는 기본적으로 SW아키텍처의 의사결정 사항이 기술되므로 설계 산출물이 작성되기 전에 주요 설계 의사결정 사항들이 정리될 수 있도록 분석 단계가 완료 되는 시점에 완료 되어야 한다. 하지만 아키텍처정의서는 설계를 하면서 도출되는 이슈를 반영해야 하므로 아키텍처 정의서의 완료는 설계 단계 완료단계까지 이어짐을 고려한다.


728x90
LIST
댓글
댓글쓰기 폼