I. SW Architecture의 표준, ISO/IEC/IEEE42010의 개요
가. ISO/IEC/IEEE42010의 정의
- 소프트웨어의 컴포넌트의 특성, 관계들로 구성되는 시스템의 구조를 설계하고 전개하기 위한 지침과 원리에 대한 국제표준
- SW 집약적 시스템에서 아키텍처가 표현해야 하는 내용 및 관계를 제공하는 아키텍처 명세를 위한 표준모델 (SAD와 같은 SW 아키텍처를 설명에 대한 국제표준)
- 시스템 및 소프트웨어의 프레임 워크 및 아키텍처 기술 언어에 적용되는 요구 사항을 정의한 아키텍처 기술에 대한 국제표준
나. ISO/IEC/IEEE42010의 필요성/특징
구분 |
특징 |
설명 |
비즈니스 측면 |
변화민첩성 |
다양한 비즈니스 요구사항에 대한 민첩한 대응(Agility) |
비용절감 |
소프트웨어 재사용, 자산화를 통한 개발비 절감(ROI,TCO) |
|
표준화 |
재사용 가능한 산업별 표준화 지원(Standard) |
|
기술적 측면 |
의사소통 |
개발관련 이해당사자들간의 원할한 의사소통수단(Communication) |
복잡성 |
소프트웨어 복잡성 증가에 따른 해결대안(Complexibility) |
|
관점모형 |
이해당사자들간의 관심사에 대한 모형 제시 |
구 분 |
설 명 |
표준화 |
아키텍처와 관련된 용어 및 개념의 통일 |
중립성 |
모델링 언어, 방법론 제시하지 않음, 개발 상위 레벨에서의 논리적 SA 표현 |
유연성 |
(표준화된 개념으로) 다양한 규모의 시스템 구축 시 적용 가능 |
의사소통 |
요구사항/설계의 차이를 개선, 이해관계자 관점에서의 표현 |
II. ISO/IEC/IEEE42010 구성도 및 구성요소
가. ISO/IEC/IEEE42010의 구성도
- 이해관계자들 간 의사소통 등을 위한 SW 아키텍처를 표현하는 표준화된 모델
나. ISO/IEC/IEEE42010의 구성요소
구성요소 |
설명 |
|
System of Interest (대상 시스템) |
각 어플리케이션들, 서브 시스템들, 시스템의 집합, 제품라인, 제품군 등의 구현체 |
|
Architecture Description (AD) |
- 아키텍처를 기록하기 위한 산출물들을 의미(expresses an architecture) - 하나의 AD는 System에 대한 관심사를 나타내는 관심사(Concern)와 관련, 이에 대응하는 하나 이상의 Stakeholder와 연관됨 - 하나의 AD는 System의 하나 이상의 View로 구성 |
|
관련성 (Correspondence) |
- AD Element와의 관계 정의 |
|
Architecture Rationale (구조적 이유) |
- 선택되어 설계된 아키텍처에 대한 논리적 근거 |
|
이해관계자 (Stakeholders) |
- 소프트웨어 시스템 개발에 관련된 모든 사람과 조직 (고객, 최종사용자, 개발자, 프로젝트 관리자, 유지보수자, 마케팅 담당자 등 포함) |
|
관심사(Concerns) |
- 동일한 시스템에 대해 각 이해관계자들은 서로 다른 의견과 목표. - 이해관계자의 관점에 따른 서로 다른 견해 * 사용자 입장 : 신뢰성, 보안, 사용성 등의 품질이 만족되어야 함 * 유지보수자 입장 : 유지보수가 쉬워야 함 * 개발자 입장 : 적은 비용과 인력으로 개발이 가능해야 함 |
|
관점 (Viewpoint) |
- 이해관계자들이 보고 싶은 관점(Viewpoint) - 서로 다른 역할이나 책임으로 시스템이나 산출물들에 대해 서로 다른 관점(Where 에 맞추어짐) - View를 구성하기 위한 규칙을 정의하는 패턴, 각각의 View에 1:1로 대응 |
|
뷰(View) |
- 복잡한 소프트웨어 아키텍처를 다양한 Stakeholder들이 소프트웨어 아키텍처를 바라보는 측면으로서, View는 시스템의 여러 가지 측면을 고려하기 위한 다양한 관점(Viewpoint)을 바탕으로 정의. - 이해관계자들의 생각이나 견해로부터 전체 시스템을 표현 - 이해관계자들이 보고자 하는 목표(시스템, 산출물 등) - What 중심(UML의 4+1 View : De facto Standard)
|
|
1) 사용 사례 관점 (Use Case View)- |
- 시스템의 외부 사용자 관점에서 사용 사례(use cases)와 이들간의 관계를 정의 - 시스템 아키텍처를 도출함 |
|
2) 설계 관점 (Logical View)
|
- 상위 수준에서 시스템의 논리적인 구조와 행위(behavior )를 클래스, 인터페이스, 협력관계 (collaboration)로 정의 - 시스템의 기능 요구사항을 설명 |
|
3) 구현 관점 (Implementation View ) |
- 독립적으로 실행되는 컴포넌트와 이들간의 관계를 정의 |
|
4) 프로세스 관점 (Process View) |
- 시스템의 non-functional 요구사항을 설명 |
|
5) 배치 관점 (Deployment View) |
- 실행되는 시스템 하드웨어와 소프트웨어의 관계를 정의 |
|
아키텍처 모델 (Architecture Model) |
- View를 구성하는 모델 - 데이터흐름 다이어그램(Data Flow Diagram), 클래스 다이어그램(Class Diagram) 등 |
|
모델유형 (Model Kind) |
- 아키텍처 모델링 유형에 대한 방식 |
|
아키텍처 근거 (Architecture Rationale) |
- 설계된 아키텍처에 대한 논리적 근거 |
|
대응관계 (Correspondence) |
- 아키텍처 뷰 사이의 대응관계 |
III. IEEE 42010과 IEEE1471의 비교
구 분 |
IEEE 42010 |
IEEE 1471 |
발표/승인 |
2011(발표) |
2000(승인) |
관심(Focus) |
아키텍처 기술(Description), 아키텍처 프레임워크, 아키텍처 기술언어 |
아키텍처 기술(Description) |
대상시스템 |
일반적인 시스템(ISO 15288) 및 소프트웨어(ISO 12207) 포함 |
소프트웨어 중심시스템에 국한 |
특징 |
아키텍처 기술, 프레임워크, 기술언어, Viewpoint에 대한 최소요건을 포함 |
시스템에 대한 표준 없음 |
'정보관리기술사&컴퓨터응용시스템기술사 > SW공학과 프로젝트관리' 카테고리의 다른 글
[아키텍처 모델] 아키텍처 설계에서의 BP 모음집 (0) | 2021.01.30 |
---|---|
[SW 아키텍처 평가] SW Architecture 수준의 대한 품질 평가 (0) | 2021.01.29 |
[MSA(Micro Service Architecture) 독립된 서비스로 시스템을 분할하는 아키텍처 (0) | 2021.01.13 |
[WBS(Work Breakdown Structure), 프로젝트 일정 및 R&R 관리 계획을 위한 Framework (0) | 2021.01.13 |
[프로젝트 관리 지식영역] 프로세스 그룹별로 진행할 활동의 그룹핑 (0) | 2021.01.12 |
댓글