맨위로가기

IEEE 1471

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

IEEE 1471은 시스템 및 소프트웨어 아키텍처를 설명하기 위한 표준으로, 아키텍처적 사고를 IEEE 표준에 통합하기 위해 제정되었다. 이 표준은 2000년에 처음 승인되었으며, 이후 ISO/IEC 42010으로 채택되어 ISO/IEC/IEEE 42010:2011으로 대체되었다. IEEE 1471은 시스템의 표현, 이해 관계자 간의 의사소통, 아키텍처의 평가 및 비교, 시스템 개발 관리, 시스템 특성 표현, 구현 준수 확인, 지식 기반 기여 등을 목적으로 한다. 이 표준은 아키텍처 기술서, 이해 관계자, 관점, 뷰, 아키텍처 모델 등 다양한 용어와 개념적 프레임워크를 정의하며, 아키텍처 설명 준수를 위한 필수 정보, 이해 관계자 및 관심사 식별, 관점 사양 및 근거, 아키텍처 뷰, 불일치 기록, 아키텍처 근거 제시 등을 요구한다.

더 읽어볼만한 페이지

  • IEEE 표준 - IEEE 754
    IEEE 754는 부동소수점 숫자를 표현하고 처리하기 위한 국제 표준으로, 다양한 형식과 연산, 반올림 규칙, 예외 처리 등을 정의한다.
  • IEEE 표준 - IEEE 802.2
    IEEE 802.2는 데이터 링크 계층의 LLC 서브레이어를 정의하는 IEEE 802 표준의 일부로, 비연결 및 연결 지향 모드를 지원하며, LLC 클래스 I, II, III, IV를 통해 다양한 서비스 유형을 제공하고, DSAP, SSAP 주소 및 제어 필드로 구성된 헤더와 필요에 따라 SNAP 확장을 사용해 네트워크 통신을 관리한다.
IEEE 1471
일반 정보
IEEE 1471-2000 PDF
IEEE 1471-2000 PDF 파일
다른 이름ANSI/IEEE 1471-2000
유형표준
상태대체됨
대체 표준ISO/IEC/IEEE 42010
발표일2000년
제목권장 관행 - 소프트웨어 집중 시스템의 아키텍처 설명을 위한
대체 제목소프트웨어 집약적 시스템의 아키텍처 설명을 위한 권장 관행
범위이해 관계자, 우려 사항 및 아키텍처 설명을 포함한 소프트웨어 아키텍처 프레임워크
언어영어

2. 역사

IEEE 1471은 ANSI/IEEE 1471-2000 (소프트웨어 집약 시스템의 아키텍처 설명에 대한 권장 사례)으로 알려진 표준의 약칭이다. 이 표준은 2007년에 ISO/IEC JTC1/SC7에 의해 ISO/IEC 42010:2007, 시스템 및 소프트웨어 엔지니어링 - 소프트웨어 집약 시스템의 아키텍처 설명을 위한 권장 관행으로 채택되었다.[12]

"아키텍처"가 시스템 수명주기에 큰 영향을 미친다는 것은 오랫동안 인식되어 왔지만, 비교적 최근까지 하드웨어 문제가 아키텍처적 사고를 지배하는 경향이 있었고, 전체적으로 고려했을 때 소프트웨어 측면은 개발 압력으로 인해 가장 먼저 손상되는 경우가 많았다.[12] IEEE 1471은 소프트웨어 집약적인 시스템의 아키텍처에 대한 사고의 기반을 제공하기 위해 만들어졌다.

2. 1. IEEE 1471-2000 제정

1995년 8월, IEEE 소프트웨어 공학 표준 위원회(SESC)는 IEEE 아키텍처 계획 그룹(APG)을 설립하여 아키텍처적 사고를 IEEE 표준에 통합하는 방향을 설정했다.[2] 1996년 4월, APG의 권고 사항을 구현하기 위해 아키텍처 워킹 그룹(AWG)이 SESC에 의해 설립되었다.[2] AWG는 Basil Sherlund가 의장을 맡았고, Ronald Wade와 David Emery가 부의장을, Rich Hilliard가 명세 편집을 담당했다.[2] AWG는 25명의 위원으로 구성되었으며, 130명의 국제 검토자들이 명세 초안에 대해 투표하고 의견을 제시했다.[2] 2000년 9월, IEEE-SA 표준 위원회는 해당 명세를 IEEE Std 1471-2000으로 승인했다.[2]

2. 2. ISO/IEC 42010:2007 채택

2006년, ISO/IEC 합동 기술 위원회 1(JTC1) 정보 기술/소위원회 SC 7, 소프트웨어 및 시스템 공학은 특별 "패스트 트랙 절차"에 따라 이 명세를 ISO/IEC 42010으로 채택했으며, 이는 ISO 및 IEC의 국가 기구 승인과 동시에 진행되었다.[2] ISO/IEC 패스트 트랙 투표 성공에 따라, 그리고 IEEE 표준의 5년 검토에 맞춰, 2006년에 ISO/IEC JTC1/SC7/WG42와 IEEE CS에 의한 이 표준의 조율된 개정이 시작되었다.[2]

2. 3. ISO/IEC/IEEE 42010:2011 대체

2011년 11월,[2] IEEE 1471-2000 및 ISO/IEC 42010:2007은 ISO/IEC/IEEE 42010:2011 ''시스템 및 소프트웨어 공학 — 아키텍처 기술''로 대체되었다.

3. 목적

IEEE 1471은 소프트웨어 집약적인 시스템의 아키텍처를 설명하기 위한 표준이다. 이 표준은 시스템의 수명주기에 큰 영향을 미치는 아키텍처에 대한 사고의 기반을 제공한다.[12]

IEEE 1471은 다음과 같은 주요 목적을 가진다:


  • ''아키텍처'' 설명에 대한 정의와 메타 모델을 제공한다.
  • ''아키텍처''는 시스템 이해 관계자의 관심사를 해결해야 한다고 명시한다.
  • ''아키텍처 설명''은 본질적으로 다중 뷰를 가지며, 모든 이해 관계자의 관심사를 적절하게 포착하는 단일 ''뷰''는 없다고 주장한다.
  • ''뷰''와 ''뷰포인트''의 개념을 정의한다. ''뷰포인트''는 관심사 집합과 이러한 관심사를 해결하기 위해 아키텍처를 설명하는 데 사용되는 표현 및 모델링 기법을 식별하며, ''뷰''는 특정 시스템에 뷰포인트를 적용한 결과이다.
  • 아키텍처 설명에 대한 내용 요구 사항과 적합한 아키텍처 설명이 뷰포인트와 뷰 사이에 일대일 대응을 갖는다는 아이디어를 설정한다.
  • 아키텍처 이론적 근거를 캡처하고 아키텍처 설명 내 뷰 간의 불일치 및 해결되지 않은 문제를 식별하기 위한 지침을 제공한다.

3. 1. 시스템 표현 및 의사소통

IEEE 1471에 따르면, 아키텍처 기술은 다음과 같은 목적으로 사용될 수 있다.[1][3][4]

  • 시스템 및 시스템 진화의 표현
  • 시스템 이해 관계자 간의 의사소통
  • 일관된 방식으로 아키텍처 평가 및 비교
  • 시스템 개발 활동의 계획, 관리 및 실행
  • 허용 가능한 변경을 유도하기 위한 시스템의 영구적인 특성 및 지원 원칙 표현
  • 시스템 구현의 아키텍처 기술 준수 여부 확인
  • 소프트웨어 집약적 시스템 아키텍처 지식 기반에 대한 기여 기록

3. 2. 아키텍처 평가 및 비교

IEEE 1471은 아키텍처 기술을 일관된 방식으로 평가하고 비교하는 데 사용될 수 있다고 명시한다.[1]

3. 3. 시스템 개발 관리

IEEE 1471은 시스템 개발 활동을 계획, 관리 및 실행하는 데 도움을 주는 도구로 사용될 수 있다.[1] 이를 위해 아키텍처 기술은 다음과 같은 목적으로 활용된다.

  • 시스템 및 시스템 발전 과정을 표현한다.
  • 시스템 이해관계자 간의 원활한 의사소통을 돕는다.
  • 여러 아키텍처를 일관성 있게 평가하고 비교할 수 있도록 한다.
  • 시스템 개발 활동을 계획, 관리 및 실행하는 데 필요한 정보를 제공한다.
  • 허용 가능한 변경 사항을 유도하기 위해 시스템의 지속적인 특성과 지원 원칙을 명확하게 표현한다.
  • 시스템 구현이 아키텍처 기술을 준수하는지 확인한다.
  • 소프트웨어 집약적 시스템 아키텍처 지식 기반에 기여한 내용을 기록한다.

3. 4. 시스템 특성 표현

IEEE 1471에 따르면, 아키텍처 기술은 허용 가능한 변경을 유도하기 위한 시스템의 영구적인 특성 및 지원 원칙을 표현하는 데 사용될 수 있다.[1]

3. 5. 구현 준수 확인

IEEE 1471에 따르면, 아키텍처 기술은 시스템 구현이 아키텍처 기술에 준수하는지 확인하는 데 사용될 수 있다.[1]

3. 6. 지식 기반 기여

IEEE 1471에 따르면, 아키텍처 기술은 소프트웨어 집약적 시스템 아키텍처 지식 기반에 대한 기여를 기록하는 데 사용될 수 있다.[1]

4. 용어

IEEE 1471은 소프트웨어 집약적인 시스템의 아키텍처를 설명하기 위한 표준이다. 이 표준에서 사용되는 주요 용어들은 다음과 같다.


  • 아키텍처: 시스템의 구성 요소, 구성 요소 간의 관계, 환경과의 관계, 그리고 설계와 진화를 안내하는 원칙을 포함하는 시스템의 기본 구성이다.
  • 시스템: 특정 기능 또는 기능 집합을 수행하도록 구성된 구성 요소의 모음이다. "시스템"이라는 용어는 개별 애플리케이션, 전통적인 의미의 시스템, 하위 시스템, 시스템의 시스템, 제품 라인, 제품군, 전체 기업 및 기타 관심 집합체를 포괄한다.
  • 시스템 이해 관계자: 시스템에 관심 또는 관련 우려 사항이 있는 개인, 팀 또는 조직(또는 그 클래스)이다.
  • : 관련 관심사 집합의 관점에서 전체 시스템을 표현한 것이다.
  • 관점: 뷰를 구축하고 사용하기 위한 규칙의 명세이다. 뷰의 목적과 대상, 뷰 생성 및 분석 기법을 설정하여 개별 뷰를 개발하기 위한 패턴 또는 템플릿이다.


위 용어들은 '핵심 용어' 절에서 상세하게 다루고 있으므로, 여기서는 간략하게 정의만 제시한다.

4. 1. 핵심 용어

IEEE 소프트웨어 공학 용어집[5]에 따르면, 다음과 같은 핵심 용어가 정의된다.

  • 아키텍트: 시스템 아키텍처 설계를 담당하는 개인, 팀 또는 조직이다.
  • 아키텍처 기술서(AD): 아키텍처를 문서화하기 위한 일련의 산출물이다.
  • 아키텍처: 구성 요소, 구성 요소 간의 관계, 환경과의 관계, 그리고 설계와 진화를 안내하는 원칙을 포함하는 시스템의 기본 구성이다.
  • 설계: 아키텍처의 적절한 구현을 정의, 문서화, 유지 관리, 개선 및 인증하는 활동이다.
  • 시스템: 특정 기능 또는 기능 집합을 수행하도록 구성된 구성 요소의 모음이다. "시스템"이라는 용어는 개별 애플리케이션, 전통적인 의미의 시스템, 하위 시스템, 시스템의 시스템, 제품 라인, 제품군, 전체 기업 및 기타 관심 집합체를 포괄한다.
  • 시스템 이해 관계자: 시스템에 관심 또는 관련 우려 사항이 있는 개인, 팀 또는 조직(또는 그 클래스)이다.
  • : 관련 관심사 집합의 관점에서 전체 시스템을 표현한 것이다.
  • 관점: 뷰를 구축하고 사용하기 위한 규칙의 명세이다. 뷰의 목적과 대상, 뷰 생성 및 분석 기법을 설정하여 개별 뷰를 개발하기 위한 패턴 또는 템플릿이다.

5. 개념적 프레임워크

IEEE 1471은 소프트웨어 집약 시스템의 아키텍처를 설명하기 위한 개념적 프레임워크를 제공한다. 이 프레임워크는 시스템, 이해 관계자, 관심사, 뷰, 관점 등 여러 핵심 요소들로 구성된다.[1][3][6][7][8][11]

IEEE 1471의 개념적 프레임워크는 다음과 같이 요약될 수 있다.


  • ''아키텍처''는 시스템의 ''이해 관계자''의 ''관심사''를 다루어야 한다.
  • ''아키텍처 설명''은 본질적으로 다면적 뷰이며, 단일 ''뷰''로는 모든 이해 관계자의 관심사를 적절하게 포착할 수 없다.
  • ''관점''과 ''뷰''는 분리되어야 한다.
  • ''아키텍처의 근거''를 확보하고, ''아키텍처 기술''내에서 ''뷰''간의 불일치/미해결 과제를 식별하기 위한 지침이 제공되어야 한다.


IEEE 1471은 RM-ODP 및 IEEE 12207을 포함하여 다른 표준의 아키텍처 개념과 해당 개념을 관련시키는 정보를 제공하는 부록을 제공한다.

5. 1. 시스템과 환경 (컨텍스트)

시스템의 환경(컨텍스트)은 해당 시스템에 영향을 미칠 수 있다. 환경에는 시스템과 직접 또는 간접적으로 상호 작용하는 다른 시스템들이 포함될 수 있다. 이러한 환경은 다른 시스템들과 관련하여 해당 시스템의 ''범위''를 결정하는 경계를 정한다.[1]

5. 2. 이해 관계자와 관심사

IEEE 1471은 시스템의 이해 관계자와 그들의 관심사를 중요하게 다룬다.

  • 이해 관계자 (Stakeholder): 시스템에 대해 관심을 가지는 개인, 팀, 조직 또는 그들의 집합을 의미한다.[7] 모든 시스템은 하나 이상의 이해 관계자를 가지며,[7] 각 이해 관계자는 시스템과 관련된 관심사나 우려 사항을 갖는다.[7]
  • 관심사 (Concern): 시스템의 개발, 운영 또는 기타 측면과 관련하여 하나 이상의 이해 관계자에게 중요하거나 영향을 미치는 모든 것을 의미한다.[7] 여기에는 성능, 신뢰성, 보안, 배포, 진화 가능성 등 시스템의 다양한 측면이 포함된다.[7]


IEEE 1471에 따르면, 시스템 아키텍처는 이러한 이해 관계자들의 다양한 관심사를 해결해야 한다.[12] 아키텍처 설명은 이해 관계자와 그들의 관심사를 고려하여 작성되며, 각 뷰는 특정 이해 관계자의 관심사를 반영한다.[7]

5. 3. 미션과 아키텍처

모든 시스템은 이해 관계자들이 특정 목표를 달성하기 위해 의도한 사용 또는 작동 방식인 미션을 가진다.[1][3][6][7][8][11] 시스템은 환경에서 하나 이상의 미션을 수행하기 위해 존재한다.[7][8][11]

모든 시스템은 아키텍처를 가지며, 이는 아키텍처 설명으로 기록될 수 있다.[1][3][6][7][8][11]

5. 4. 뷰와 관점

IEEE 1471에서 아키텍처 설명은 여러 개의 뷰(View) 로 구성된다. 각 뷰는 시스템 이해 관계자들의 특정 관심사를 다루며, 시스템 아키텍처를 부분적으로 표현한다.[1][3][6][7][8][11]
관점(Viewpoint) 은 뷰를 만들고, 표현하고, 분석하는 규칙을 정의한다. 뷰는 이 규칙에 따라 작성되므로, 해당 관점에 "부합"한다고 할 수 있다. 관점은 뷰를 설명하는 데 사용되는 언어(표기법, 모델, 제품 유형 포함)와 관련된 모델링 방법, 분석 기법을 결정한다. 이러한 언어와 기법은 관점에서 다루는 관심사와 관련된 결과를 얻는 데 사용된다.[1][3][6][7][8][11]

간단히 말해, 뷰는 시스템의 특정 측면을 보여주는 그림이고, 관점은 그 그림을 그리는 방법과 규칙을 설명하는 것이다.

5. 5. 아키텍처 모델

IEEE 1471에서 아키텍처 설명은 하나 이상의 아키텍처 뷰로 구성된다.[1][3][6] 각 뷰는 시스템 이해 관계자들의 관심사 하나 이상을 다루며, 특정 관점에 따라 시스템 아키텍처를 부분적으로 표현한다.[1][3][6]

뷰는 하나 이상의 아키텍처 모델로 구성될 수 있으며,[7][8][11] 각 모델은 관련된 아키텍처 관점에서 정한 방법을 사용하여 개발된다.[7][8][11] 하나의 아키텍처 모델은 둘 이상의 뷰에 참여할 수 있다.[7][8][11]

5. 6. 관점 선정

아키텍처 설명(AD)은 사용할 관점을 선정해야 한다. 관점 선정은 일반적으로 AD가 다루는 이해 관계자와 그들의 관심사를 고려하여 이루어진다.[1][7]

관점 선정 기준은 다음과 같다.

  • 이해 관계자: 시스템과 관련된 이해 관계자들을 식별한다.
  • 관심사: 각 이해 관계자들이 시스템에 대해 가지는 관심사(예: 성능, 보안, 확장성)를 파악한다.[1][7]


관점 정의는 AD 자체에서 만들어질 수도 있고, 다른 곳에서 정의된 "라이브러리 관점"을 참고할 수도 있다.[1][7]

6. 준수

IEEE 1471[1]은 아키텍처 설명 준수를 위해 다음과 같은 규범적 요구 사항을 정의한다.

절 번호내용
5.1AD 식별, 버전 및 개요 정보 제공[1]
5.2시스템 이해 관계자 및 해당 관심사 식별[1]
5.3각 관점의 사양과 선택 근거 제시[1]
5.4하나 이상의 아키텍처 뷰 제시[1][7]
5.5알려진 모든 불일치 기록[1]
5.6아키텍처 선택에 대한 근거 제시[1][7]


6. 1. 필수 정보

ANSI/IEEE 1471-2000영어은 "소프트웨어 집약 시스템의 아키텍처 설명 권장 실무"로 알려진 표준이다.[1] 아키텍처 기술서는 식별, 버전, 개요 정보를 제공해야 한다.[1]

6. 2. 이해 관계자 및 관심사 식별

IEEE 1471은 시스템 아키텍처와 관련된 이해 관계자 및 그들의 관심사를 식별하도록 요구한다.[1] 이는 아키텍처 설명의 필수 요소이며, 5.2절에서 다룬다.[1]

6. 3. 관점 사양 및 근거

IEEE 1471은 아키텍처 표현을 구성하기 위해 선택된 각 관점의 사양과 해당 선택에 대한 근거 제시를 요구한다.[1] 이는 아키텍처 결정의 투명성과 이해도를 높이기 위한 조치이다. 각 관점은 특정 이해 관계자의 관심사를 반영하여 설계되었으므로, 그 선택 근거는 시스템의 목표와 제약 조건을 명확히 하는 데 도움이 된다.

6. 4. 아키텍처 뷰

IEEE 1471은 하나 이상의 아키텍처 뷰 제시를 요구한다.[1][7]

6. 5. 불일치 기록

IEEE 1471은 아키텍처 설명의 필수 구성 요소 간에 알려진 모든 불일치를 기록하도록 요구한다.[1] 이는 5.5절에 해당한다.[1]

6. 6. 아키텍처 근거

IEEE 1471은 아키텍처 선택에 대한 근거 제시를 요구한다.[1] 이 내용은 표준의 5.6절에 명시되어 있다.[7]

참조

[1] 간행물 ISO/IEC 42010:2007, Systems and Software Engineering -- Architecture Description http://www.iso.org/i[...]
[2] 웹사이트 ISO/IEC/IEEE 42010:2011, Systems and software engineering — Architecture description, the latest edition of the original IEEE Std 1471:2000, last update 5 February 2014 http://www.iso-archi[...]
[3] 웹사이트 Architecture and Change http://www.architect[...] 2009-06-19
[4] 웹사이트 Description of IEEE 1471 https://archive.toda[...]
[5] 간행물 IEEE Std 610.12−1990, IEEE Standard Glossary of Software Engineering Terminology.
[6] 웹사이트 IEEE 1471 Conceptual Framework http://www.iso-archi[...]
[7] 간행물 ISO/IEC 42010:2007, Systems and Software Engineering -- Architecture Description http://www.iso.org/i[...]
[8] 웹사이트 Architecture and Change http://www.architect[...]
[9] 웹사이트 Description of IEEE 1471 http://standards.iee[...]
[10] 간행물 IEEE Std 610.12−1990, IEEE Standard Glossary of Software Engineering Terminology.
[11] 웹사이트 IEEE 1471 Conceptual Framework http://www.iso-archi[...]
[12] 간행물 ISO/IEC 42010:2007, Systems and Software Engineering -- Architecture Description http://www.iso.org/i[...]



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com