본문 바로가기
TechNote/소프트웨어 공학(SW)

005. 소프트웨어 아키텍처 스타일

by 도지웅 2022. 9. 30.
반응형

1. 소프트웨어 아키텍처 스타일의 개요

가. 소프트웨어 아키텍터 스타일의 정의

  • 아키텍터의 구성요소와 구성요소들 간의 관계들이 사용될 때 작용하는 제약사항과 함께 특화시켜 놓은 아키텍처 집합
  • View를 표현할 때 반복적으로 나타나는 재사용이 가능한 아키텍처의 형태
  • 아키텍처 설계 시에 요구되는 비기능 품질 요구사항을 달성할 수 있도록 해 놓은 문서

나. 소프트웨어 아키텍터 스타일의 필요성

  • 기 검증된 패턴을 통한 최적의 아키텍처 제시
  • 아키텍처 스타일이 제공하는 주요 제한 조건을 통해 현 문제의 이슈사항 사전 인지
  • Best Practice의 사용을 통해 아키텍처의 대외적 신뢰성 및 권위 획득
  • 시스템의 모든 설계 작업의 기초를 제공함
  • 아키텍처 스타일의 사용시 좋은 점
  • 특정 종류의 시스템에 특화된 설계 지식의 적용 가능
  • 해당 스타일에 특화된 도구를 활용해 시스템을 설계, 분석, 구현 가능

2. 소프트웨어 아키텍처 스타일의 유형

가. 아키텍처 스타일의 유형

아키텍처 스타일 설명
데이터 중심의 아키텍처 스타일
(Data-Centered Architecture Style)
데이터 정합성을 위한 품질 특성을 구현하는 것을 목적으로 함
데이터 흐름 아키텍처 스타일
(Data Flow Architecture Style)
소프트웨어 시스템을 연속적으로 연결된 입력 데이터에 대한 일련의 변형 동작으로 구성
가산 머신 아키텍처 스타일
(Virtual Machine Architecture Style)
이식성 특성을 성취하는데 목적
호출과 리턴 아키텍처 스타일
(Call-and-Return Architecture Style)
시스템 수정성과 확장성 품질특성 구현
주 프로그램과 서브루킨 아키텍처, 원격 프로시져 호출, 객체지향, 계층적 아키텍처
독립적인 컴포넌트 아킥텍처 스타일
(INdependent Component Architecture Style)
상호간 메시지를 통한 통신, 컴포넌트, CBD, Web Service
이질적인 아키텍처 스타일 위치적 이질성, 계층적 이질성, 동시적인 이질성
  • 아키텍처 설계에서 반복적으로 나타나는 문제를 해결하고 아키텍처가 만족시켜야 하는 시스템 품질 속성을 달성할 수 있는 방법을 문서로 정리한 것

나. 아키텍처 스타일의 상세 유형

유형 서브타입 설명
데이터 중심
(Data-Centered)
칠판형
(Blackboard)
- 데이터의 정확성을 위한 품질 특성 구현이 목적
저장소형
(Repository)
- 광범위하게 접근되는 데이터 저장소에 대한 접근과 갱신 작업에 초점
데이터 흐름
(Data Flow)
일괄 순차형
(Batch Sequential)
- 처리 단계 또는 컴포넌트들이 독립적인 프로그램으로 구성하며, 하나의 컴포넌트가 수     행을 완료한 후에 다음의 컴포넌트를 수행
- 전통적인 데이터 처리 응용분야에서 사용
파이프-필터형
(Pipes and Filtered)
- 연속적인 컴포넌트들에 의한 데이터의 점진적 변형 구조
- 필터 : 데이터 스트림(Stream) 변환기
- 파이프 : 필터와 필터 사이에 존재하면서 단순한 데이터의 이동을 담당
가상머신
(Virtual Machine)
번역기형
(Interpreter)
- 소프트웨어 시스템의 이식성 품질 특성을 성취하는데 목적을 둔 스타일로서 해당 소프트웨어 시스템이 구현 될 하드웨어나 소프트웨어에 직접적인 관련이 없는 기능들에 대한 시뮬레이션을 수행
규칙기반 시스템 형
(Rule-Based System)
- 하나의 프로그램을 작은 단위의 서비 루틴으로 나눔으로써 소프트웨어 시스템의 수정성 품질 특성을 성취
Call and Return 원격 프로시저 호출
(Remote procedure call architecture)
- 소프트웨어 시스템을 네트워크로 연결 된 컴퓨터상에서 실행되는 작은 단위의 서브 루틴으로 구성하여 분석처리
Layered - SW를 계층이라는 단위로 분할하여 각 계층은 오직 이웃한 계층끼리만 통신
- 시스템의 수정성과 이식성 품질 특성 제공
반응형

댓글