소프트웨어 아키텍처 스타일의 개요
소프트웨어 아키텍처 스타일의 정의
소프트웨어 아키텍처 패턴 중에 자주 사용되는 패턴을 표준화한 아키텍처 구조의 유형
소프트웨어 아키텍처 스타일의 주요 유형
유형 |
|
설명 |
모듈 스타일 |
Module Style |
모듈 타입들의 요소들이 어떻게 결함하는지에 대한 규칙 |
컴포넌트와 커넥터 스타일 |
Component and Connector Style |
데이터와 컨트롤 플로우 기술 |
할당 스타일 |
Allocation Style |
개발 환경 또는 실행 환경의 요소와 소프트웨어 요소 간의 매핑 기술 |
소프트웨어 아키텍처 스타일의 유형
소프트웨어 아키텍처의 모듈 스타일
스타일 |
|
설명 |
분할 스타일 |
Decomposition Style |
모듈과 서브 모듈의 구조를 보여주기 위해 사용 |
사용 스타일 |
Uses Style |
모듈 간의 기능 종속 관계를 표시하기 위해 사용 |
일반화 스타일 |
Generalization Style |
모듈 간의 특화 관계를 표시하기 위해 사용 |
계층 스타일 |
Layered Style |
계층이라 불리는 모듈의 그룹 사이의 제한된 방식을 설명 |
관점 스타일 |
Aspect Style |
횡단 관심에 책임이 있는 관점이라 불리는 특정 모듈을 기술 |
데이터 모델 스타일 |
Data Model Style |
데이터 엔티티 간의 관계를 보여주기 위해 사용 |
소프트웨어 아키텍처의 컴포넌트와 커넥터 스타일
스타일 |
|
설명 |
호출-반환 스타일 |
Call-Return Style |
다른 컴포넌트가 제공하는 동기적 기능 호출을 통해 상호 작용하는 스타일 |
데이터 흐름 스타일 |
Data Flow Style |
시스템에 걸친 데이터의 흐름에 의해 계산이 구동되는 스타일 |
이벤트 기반 스타일 |
Event-based Style |
컴포넌트들이 비동기적 이벤트/메시지에 의해 상호작용하는 스타일 |
저장소 스타일 |
Repository Style |
컴포넌트들이 영구적이고, 공유되는 대규모 데이터 집합체를 통해 상호작용하는 스타일 |
소프트웨어 아키텍터의 할당 스타일
스타일 |
|
설명 |
배치 스타일 |
Deployment Style |
소프트웨어가 실행될 하드웨어에 컴포넌트와 커넥터가 어떻게 대응되는지 설명 |
구현 스타일 |
Implementation Style |
모듈을 답은 파일 시스템에 모듈이 어떻게 대응되는지를 설명 |
작업 할당 스타일 |
Work Assignment Style |
모듈을 구현하는 사람, 그룹, 팀에 모듈이 어떻게 대응하는지를 설명 |