본문 바로가기

Dev.../소프트웨어 아키텍처

[SA강좌] Part 3-12 소프트웨어 아키텍처 설계 산출물 관계

소프트웨어 아키텍처 설계 산출물 관계

소프트웨어 아키텍처 설계 및 구현 산출물은 크게 두 개의 주요 카테고리로 구분할 수 있다. 이 두 개의 주요 카테고리는 요구사항 정의와 소프트웨어 아키텍처로 나뉜다. 요구사항 정의는 기능적 요구사항과 품질적 요구사항으로 나눌 수 있다. 요구사항 정의의 요구사항들을 살펴보면, 기능적 요구사항은 세가지(required, preferred, optional)의 우선순위로 분류가 된다. 품질적 요구사항은 시나리오 이력(profile)로 기술된다. 여기서 소프트웨어 아키텍처는 네 가지의 산출물로 구성된다. 소프트웨어 아키텍처는 시스템 컨텍스트, 아키텍처스타일, 아키텍처 스트럭처와 설계 의사결정으로 구성된다. 먼저 시스템 컨텍스트는 소프트웨어 시스템의 인터페이스가 컨텍스트로 정의된다. 아키텍처스타일은 시스템을 구성하는 핵심 추상(core abstraction)으로 나타난다. 시스템 스트럭처는 아키텍처를 핵심 컴포넌트들과 그들간의 관계를 정의한 것으로 분해되는 것을 나타낸다. 설계 의사결정은 세가지로 구성되는데 전이, 제약조건과 규칙인 세가지 타입으로 구성된다.

 

그림 Ⅲ-40. 소프트웨어 아키텍처 설계 산출물 관계