ISO/IEC/IEEE 42010
(구 버전 IEEE1471)
[정의] 시스템, 소프트웨어 및 엔터프라이즈 아키텍처 설명에 대한 요구 사항/표준 용어 정의
[구성요소]
System of Interest,
Architecture,
Stakeholder,
Architecture Description,
Concern,
Architecture Viewpoint(where),
Architecture View(what),
model Kind,
Architecture model,
Architecture Rationale,
Correspondence,
Correspondence Rule

 
토픽 이름 () ISO/IEC/IEEE 42010(IEEE 1471)
분류 SW > SW Architecture > ISO/IEC/IEEE 42010(IEEE 1471)
키워드(암기) System of Interest, Stakeholder, Concerns, Architectural ViewPoint, Model Kind,
Architecture, Architecture description, Architecture View, Architecture Model, Architecture Rationale, Correspondence Rule, Correspondence
암기법(해당경우)  

 

기출문제

번호 문제 회차
1 3. IEEE 1471 대하여 설명하시오. 98_시스템응용_1
2 아키텍처 표준인 IEEE1471 대해서 설명하시오 합숙_2012.02_공통_2일차
3 1. IEEE1471 대해 설명하시오. 모의_2015.12_응용_1교시
4 아키텍처 표준인 IEEE1471 설명하고, 소프트웨어 아키텍처의 단계별 산출물과 아키텍처 스타일을 설명하시오. 모의_2009.01_관리_3교시

 

I. SA 표현해야 하는 내용, 관계정의 표준 프레임워크 ISO/IEC/IEEE 42010(IEEE 1471) 개요

. ISO/IEC/IEEE 42010(IEEE 1471)

- 시스템, 소프트웨어 엔터프라이즈 아키텍처 설명에 대한 요구 사항/표준 용어 정의

- (목적) 아키텍처를 표현, 전달, 검토하기 위한 개념 제시하고, 아키텍처 설명, 아키텍처 프레임워크 아키텍처 설명 언어에 적용되는 요구 사항 지정함으로써 아키텍처 설명의 실무를 표준화

 

. ISO/IEC/IEEE 42010(IEEE 1471) 중요성

중요성 설명
표준화 - 아키텍처와 관련된 용어 개념의 통일
중립성 - 모델링언어, 방법론 제시 않음, 개발 상위 레벨에서의 SA 표현
유연성 - 다양한 규모의 시스템 구축 적용 가능
의사소통 - 요구사항/설계의 차이를 개선, 이해관계자 관점에서의 표현

 

II. . SW 아키텍처 프레임워크 모델 구성요소

. SW 아키텍처 프레임워크 (ISO/IEC/IEEE 42010 최종, IEEE 1471 개념적) 모델

프레임워크 내용
IEEE 42010 - 시스템 및 SW엔지니어링 아키텍처기술(Description) 관련된 용어와 개념을 정의한 국제표준, IEEE 1471 IEEE 42010으로 통합
IEEE 1471 - SW 집약적인 시스템에서 아키텍처가 표현해야 하는 내용 이들 간의 관계를 제공하는 아키텍처를 기술하기 위한 표준

. SW 아키텍처 프레임워크(ISO/IEC/IEEE 42010) 구성요소

분류 구성요소 설명
식별 System of Interest
(대상 시스템)
- 어플리케이션들, 서브 시스템들, 시스템의 집합, 제품라인, 제품 등의 구현체

Stakeholder
(이해관계자)
- <system> individual, team, organization, or classes thereof, having an interest in a system
- 명 이상의 System 대한 이해 당사자로 각자 다른 System에 대한 Concern 가지고 있는 개인, 기관

Concerns
(관심사)
- <system> interest in a system relevant to one or more of its stakeholders
- 하나 또는 다수의 이해관계자들과 관련 있는 시스템에서의 관심사항
- System 성능, 유연성, 보안, 분배, 진화 등을 포함한 이상의 Stakeholder들에게 중요한 System 개발이나 운영 등 측면
표현 Model Kind
(모델형)
- conventions for a type of modeling
- 모델링 하는 타입에 대한 방식
- system 특성 속성에 대한 concern 대해 기술하기 위한 방식

Architecture
(아키텍처)
- <system> fundamental cencepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution
- <시스템> 환경에서 시스템의 기본 개념 또는 속성

Architecture description
(아키텍처 기술)
- work product used to express an architecture
- architecture 표현에 사용되는 방법
- architecture 기록되는 방법
AD
파트
Architectural ViewPoint
(아키텍처 View 관점)
- work product establishing the conventions for the construction, interpretation and use of architecture views to frame specific system
- 특정 시스템의 관심사항을 만들기 위해 아키텍처 뷰의 구성, 해석, 사용에 대한 규칙을 정립한 work product
- Architecture View 구성하기 위한 규칙을 정의하는 패턴이나 템플릿

Architecture View
()
- work product expressing the architecture of a system from the perspective of specific system concerns
- 특정 System 관심 있는 부분(concerns, interest)의 관점에서 systemarchitecture 표현한 work product

Architecture Model
(모델)
- 특정 시스템의 관심사항 작성을 위한 이해관계자들이 가지는 생각이나 견해로부터 시스템을 표현

Architecture Rationale
(결정 근거)
- 선택되어 설계된 아키텍처에 대한 논리적 근거

Correspondence Rule
(대응 관계의 규제)
- architecture view들간의 대응 규칙

Correspondence
(대응관계)
- stakeholder 관심에 따른 대응 관계
반응형

'정보관리기술사 > 소프트웨어공학' 카테고리의 다른 글

MSA  (0) 2024.04.02
SW Architecture 평가  (0) 2024.04.01
명세기반 테스팅 기법  (0) 2024.03.30
SW Architecture  (0) 2024.03.30
(외부)EPMO  (0) 2024.03.11
84   Architecture [모노리식 아키텍처] 기존의 전통적인 웹 시스템 개발 스타일로, 하나의 애플리케이션 내에 모든 조직들이 들어 가 있는 구조
[마이크로 서비스 아키텍처] 대규모 웹 분산 환경에서 응용소프트웨어를 독립적으로 배치 가능한 서비스 조합으로 설계하는 아키텍처 스타일
조직구성 = 아키텍처  
토픽 이름 Architecture
분류 PM > Agile > Architecture
키워드(암기) 모놀리식, 마이크로서비스 아키텍처
암기법(해당경우)  

기출문제

번호 문제 회차
1 4. 최근 대규모의 소프트웨어 개발에 적용을 하기 위한 다양한 아키텍처가 사용되고 있다. 아래의 항목에 대해 설명하시오.
. 마이크로 서비스 아키텍처(Micro Service Architecture) 필요성과 개념
. 마이크로 서비스의 장단점
. 블루그린배포(Blue Green Deployment) 카나리아 배포(Carnary Deployment)


모의_2018.07.관리.3교시.4
2 7. 마이크로 서비스 아키텍처(Micro Service Architecture) 대하여 설명하시오. 모의_2017.01.관리.1교시.7

 

  1. 대용량 웹서비스를 위한 Agile Architecture 개요
구분 정의
모노리식
아키텍처
기존의 전통적인 웹 시스템 개발 스타일로, 하나의 애플리케이션 내에 모든 조직들이 들어 가 있는 구조
마이크로 서비스 아키텍처 대규모 웹 분산 환경에서 응용소프트웨어를 독립적으로 배치 가능한 서비스 조합으로 설계하는 아키텍처 스타일

 

  1. 모노리식 아키텍처, 마이크로 서비스 아키텍처 구성도 아키텍쳐 특성

  1. 모노리식 아키텍처, 마이크로 서비스 아키텍처 특성
구분 특성
모노리식
아키텍처
  1. 각 컴포넌트들은 상호 호출을 함수를 이용하는 call-by-reference 구조
  2. 전체 애플리케이션을 하나로 처리하기 때문에, 개발 툴 등에서 하나의 애플리케이션만 개발
  3. 배포 역시 간편하며 테스트도 하나의 애플리케이션만 수행하면 되기 때문에 편리
마이크로 서비스 아키텍처 서비스는 데이터에서부터 비즈니스 로직까지 독립적으로 상호 컴포넌트간의 의존성이 없이 개발된 컴포넌트(이를 버티컬 슬라이싱 / Vertical Slicing - 수직적 분할이라고 한다.)로 REST API와 같은 표준 인터페이스로 그 기능을 외부로 제공.

 

  1. 모노리식 아키텍처, 마이크로 서비스 아키텍처 비교
구분 모노리식 아키텍쳐 마이크로 서비스 아키텍처
데이터 저장관점 중앙 집중화된 하나의 통합
데이터베이스(보통 RDBMS) 사용
서비스 별로 별도의 데이터 베이스를 사용

서비스가 API에서부터 데이터 베이스까지 분리되는 수직
분할 원칙(Vertical Slicing)에 따라서 독립된 데이터 베이스 사용
컴포넌트 전체 애플리케이션을 재 컴파일하여 전체를 다시 통으로 재배포 변경이 있는 서비스 부분만 부분 배포
확장성 전체 서버의 수를 늘리거나 각 서버의 CPU수를 늘려줘야 함 부하를 많이 받는 서비스 컴포넌트만 가능
특징
작은 크기의 애플리케이션에서는 용이.

시스템 컴포넌트들이 서로 참조에 의한 호출 (call-by-reference)기반으로 타이트하게 연결
컴포넌트를 되도록이면 업무 단위로 잘게 자르는
fine grained(작은 덩어리)의 서비스를 지향.
단점
잦은 배포가 있는 시스템의 경우 불리.

컴포넌트 별로 기능/비기능적 특성에 맞춰서 다른 기술을 도입하고자 할 때 유연하지 않음.


특정 컴포넌트나 모듈에서의 성능 문제나 장애가 다른 컴포넌트에까지 영향.
서비스를 컴포넌트의 URL 수 증가.

API를 사용하는 클라이언트에서 서버간의 통신이나,
서버간의 API 통신의 경우 p2p(Point to Point)형태로
토폴로지가 복잡해지고 거미줄 모양의 서비스 컴포넌트간의 호출 구조는 향후 관리의 문제 발생 가능.

[추가 자료: Agile Architecture 배경적 지식]

1) Agile Architecture 개념

 - S/W 개발 , 상세함을 대체하면서 결과 verify 용이하게 있는 Architecture.

 - Agile Manifesto 6원칙에 기초하여 등장하게

2) Microservice 배경

 - Agile 적용된 조직Organization이 비대 또는, 시스템 Scale 커지면, Scrum of scrum/SAFe(Scaled Agile Framework) 의사소통 채널 시스템 Iteration(Sprint) 증가. 이는 Agile 사상에 벗어나는 고민에서 출발한 개념 (MicroserviceSOA 개념/등장배경에 견주어 설명하기도 )

 - 독립적인 적용이 가능한 unit으로 구성된 Microservice-based 시스템일 경우, 기능이 명확히 분리된 단위라서 상호 서비스 영향이 없기 때문에 빠르고 쉽게 적용이 가능, 장점이라고 얘기함

[그림해설] S/W 개발을 예로 들면, Microservices Agile 진행에서 하나의 구조적 단계로 볼 수 있다는 의미

[참고] Agile Working Group MSA

반응형

'정보관리기술사 > 소프트웨어공학' 카테고리의 다른 글

객체지향 설계의 원리  (0) 2024.03.10
객체지향 프로그래밍 특징  (0) 2024.03.09
번다운차트  (0) 2024.03.07
CI, CD  (0) 2024.03.06
Lean(린)  (1) 2024.03.05

+ Recent posts