소프트웨어 아키텍처: Difference between revisions

From IT Wiki
No edit summary
No edit summary
Line 1: Line 1:
[[분류:소프트웨어 공학]]
[[분류:소프트웨어 공학]]
;Software Architecture
;Software Architecture
;SW 컴포넌트들 간의 상호 관계를 정의 및 설계하고 전개하기 위한 구조


== 특징 ==
== 특징 ==
Line 38: Line 39:
! style="text-align: center;" | Physical View
! style="text-align: center;" | Physical View
* [https://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf 4+1뷰 아키텍처 원문 보기]
* [https://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf 4+1뷰 아키텍처 원문 보기]
|}
== 평가 방법 ==
=== ATAM ===
=== CBAM ===
== 아키텍처 개발 절차 ==
{| class="wikitable"
! 단계
! 주요활동
! 내용
|-
| colspan="2" | 요구사항 분석
| 요구사항 취득, 식별, 명세, 분류, 검증 등
|-
| rowspan="3" | 아키텍처 분석
| 품질요소 식별
| ISO9216 품질 요구사항 활용
|-
| 품질요소
우선순위 결정
| Utility Tree(시나리오 명세) 작성
|-
| 전술개발
| 품질속성별 전술개발 및 명세
|-
| rowspan="3" | 아키텍처 설계
| 관점 및 뷰 정의
| 이해당사자별 관점 정의
4+1 아키텍처 활용
|-
| 아키텍처 스타일 선택
| MVC, Pipe-Filter 등 스타일 선택 및 조합
|-
| 후보 아키텍처 도출
| SAD(Software Architecture Description) 작성
|-
| rowspan="3" | 검증 및 승인
| 아키텍처 평가
| ATAM, CBAM 이용
|-
| 아키텍처 상세화
| 디자인 패턴 고려, 설계 매커니즘 도출
|-
| 아키텍처 승인
| 고객 및 이해당사자 최종 승인
|}
|}

Revision as of 18:40, 9 October 2019

Software Architecture
SW 컴포넌트들 간의 상호 관계를 정의 및 설계하고 전개하기 위한 구조

특징

특징 내용
간략성 이해하고 추론할 수 있을 정도의 간결성 유지
추상화 시스템의 추상적인 표현을 사용(복잡도 관리)
가시성 시스템이 포함해야 하는 것들을 가시화, 청사진

참조 모델

ISO/IEC/IEEE 42010

소프트웨어 아키텍처에 대한 국제 표준

4+1뷰 아키텍처

IEEE
Logical View Development View

(Implement View)

Scenarios

(Use-Case View)

Process View Physical View

평가 방법

ATAM

CBAM

아키텍처 개발 절차

단계 주요활동 내용
요구사항 분석 요구사항 취득, 식별, 명세, 분류, 검증 등
아키텍처 분석 품질요소 식별 ISO9216 품질 요구사항 활용
품질요소

우선순위 결정

Utility Tree(시나리오 명세) 작성
전술개발 품질속성별 전술개발 및 명세
아키텍처 설계 관점 및 뷰 정의 이해당사자별 관점 정의

4+1 아키텍처 활용

아키텍처 스타일 선택 MVC, Pipe-Filter 등 스타일 선택 및 조합
후보 아키텍처 도출 SAD(Software Architecture Description) 작성
검증 및 승인 아키텍처 평가 ATAM, CBAM 이용
아키텍처 상세화 디자인 패턴 고려, 설계 매커니즘 도출
아키텍처 승인 고객 및 이해당사자 최종 승인