[DAP 전문가 가이드] 1.1.2 전사아키텍처 프레임워크
전사아키텍처 프레임워크 개념
- 전사아키텍처 활동에서 얻어지는 산출물을 분류하고 조직화하고 이를 유지 관리하기 위한 전체적인 틀을 정의하는 것
전사아키텍처 프레임워크 구성
아래 그림에서 보면 전사아키텍처 프레임워크는 전사아키텍처 정책, 전사아키텍처 정보, 전사아키텍처 관리 등의 3가지 영역으로 구분된다.
- 전사아키텍처 정책 : 기업이 전사아키텍처 수립을 어떻게 할 것인가의 방향을 정의한 것으로, 아키텍처 매트릭스, 전사아키텍처 비전, 전사아키텍처 원칙 등으로 구성됨
- 전사아키텍처 정보 : 기업이 구축하는 전사아키텍처 정보의 구체적인 모습으로, 현행 아키텍처, 목표 아키텍처, 이행 계획으로 구성됨
- 전사아키텍처 관리 : 구축된 전사아키텍처를 어떻게 관리하고 활용할 것인가를 정의한 것으로, 전사아키텍처 관리 체계, 전사아키텍처 관리 시스템, 전사아키텍처 평가 모형 등으로 구성됨
전사아키텍처 정책
- 전사아키텍처의 정보를 어떻게 구성할 것이고, 전사아키텍처 수립을 통하여 기업이 달성하고자 하는 궁극적인 모습은 무엇이며, 전사아키텍처를 효과적으로 관리하고 활용하기 위한 원칙은 어떤 것인지 등을 정의하는 것
- 아키텍처 매트릭스
- 전사아키텍처의 정보를 체계적으로 분류한 틀로서, 기업이 관리하려고 하는 전사아키텍처 정보의 수준과 활용 계층을 결정하는 수단
관점/뷰 | 비즈니스 아키텍처 | 애플리케이션 아키텍처 | 데이터 아키텍처 | 기술 아키텍처 |
계획자 | - 전체 업무, 조직의 구성 정보 | - 전체 차원의 응용 시스템 구성 정보 | - 전체 차원의 데이터베이스 구성 정보 | - 기술 요소의 구성을 전체 차원에서 정리한 정보 |
- 전사 사업 모델 - 조직 모델 - 비즈니스 전략 |
- 전사 애플리케이션 영역 모델 - 애플리케이션 원칙 |
- 전사 데이터 영역 모델 - 데이터 원칙 |
- 전사 기술 영역 모델 - 기술 참조 모델 |
|
책임자/분석자 | - 업무의 세부 구성 - 정보와 업무/조직 간 관계 정보 |
- 상위 수준의 기능 구성 정보와 응용 시스템 간 관계 정보 | - 데이터베이스에서 관리되는 주요 데이터 개체와 개체 간 관계 | - 정보 기술 기반 자원의 유형별 구성과 인터페이스 정보 |
- 업무 기능 모델 | - 애플리케이션 모델 - 애플리케이션 표준 |
- 개념 데이터 모델 - 데이터 표준 |
- 표준 프로파일 | |
설계자 | - 업무의 연계성, 흐름 정보 | - 응용 시스템의 상세한 기능 정보와 물리적 분산 정보 | - 데이터베이스의 논리적 데이터 구조 | - 기술 기반 자원의 도입과 운영을 위한 유형별 구조 및 관리 체계 정보 |
- 프로세스 모델 | - 컴포넌트 모델 | - 논리 데이터 모델 | - 기술 아키텍처 모델 | |
개발자 | - 업무 수행을 위한 구체적 절차, 양식, 업무 관계 정보 | - 프로그램의 물리적인 구성 체계와 각 프로그램 구현 정보 | - 데이터베이스의 물리적 구조 정보 | - 도입된 기술 기반 자원의 도입, 운영, 관리에 관한 구체적 정보 |
- 업무 매뉴얼 | - 프로그램 목록 | - 물리 데이터 모델 - 데이터베이스 객체 |
- 기술 자원 목록 - 제품 목록 |
- 아키텍처 매트릭스는 일반적으로 뷰와 관점의 두 가지 차원으로 전사아키텍처 정보를 구분하고, 뷰와 관점이 교차하는 각 셀에는 전사아키텍처 정보의 실체가 되는 산출물을 정의하는 구조
- 전사아키텍처 비전
- 전사아키텍처 수립을 통하여 기업이 궁극적으로 달성하고자 하는 모습. 전사아키텍처 구축 목표와 그 목표를 효과적으로 달성하기 위한 전략 및 방향 등을 포함함
- 전사아키텍처 원칙
- 전사아키텍처 정보를 효율적으로 구축하고, 기업의 목적에 맞게 전사아키텍처 정보를 효과적으로 활용하기 위해서 조직 구성원이 공유해야 할 규범을 말함. 전사아키텍처 대원칙, 아키텍처 원칙, 표준 등을 포함함
전사아키텍처 정보
- 전사아키텍처 구축을 위해서는 아키텍처 매트릭스에서 정의한 각 아키텍처 산출물에 대하여 현재 상태와 목표 상태의 정보를 구축함. 그리고 목표 아키텍처를 달성하기 위한 이행 계획을 수립
- 아키텍처 정보를 구축하기 위해서는 먼저 아키텍처 정보의 영역을 구분해야 하는데, 이런 아키텍처 영역을 구분한 것을 아키텍처 도메인이라고 함(아키텍처 매트릭스 상에서 뷰의 관점으로 아키텍처 영역을 구분한 것)
- 현행 아키텍처 : 아키텍처 도메인별로 정의된 산출물에 대하여 기업의 현재 상태를 아키텍처 정보로 정의한 것
- 목표 아키텍처 : 아키텍처 도메인별로 정의된 산출물에 대하여 기업이 궁극적으로 달성하고자 하는 목표 아키텍처의 상태를 아키텍처 정보로 정의한 것
- 전사아키텍처 이행 계획 : 아키텍처 도메인별로 현재 모습에서 바람직한 목표 모습으로 이행하기 위한 이행 전략과 이행 계획을 정의한 것
전사아키텍처 관리
- 정의된 전사아키텍처 정보를 지속적으로 유지 관리하고 효과적으로 활용하기 위해서는 전사아키텍처 관리 체계의 정립과 전사아키텍처 관리 시스템의 구축이 필요함
- 전사아키텍처 관리 체계 : 흔히 '전사아키텍처 거버넌스'라고도 함. 구축된 전사아키텍처를 유지하고 개선하기 위한 제도적 기반을 수립하는 것이며, 정의된 전사아키텍처 원칙을 준수하도록 확인하고 통제하기 위한 조직과 프로세스를 정의하는 것을 포함함. 전사아키텍처 활동을 관리하며, 전사아키텍처의 정보 변경을 통제하고, IT 프로젝트가 전사아키텍처의 기본적인 원칙과 정책을 준수하도록 하기 위한 목적이 있음
- 전사아키텍처 관리 시스템 : 전사아키텍처의 정보 관리 효율성을 제고하고 전사아키텍처 정보의 공유를 활성화하기 위해 구축하는 정보시스템. 일반적으로 전사아키텍처 정보를 정의하는 모델링 도구와 전사아키텍처 정보를 저장하는 전사아키텍처 리포지터리, 전사아키텍처 정보를 사용자에게 배포하는 전사아키텍처 포털 등으로 구성됨
- 전사아키텍처 평가 : 전사아키텍처의 관리와 활용 수준의 제고를 위해서는 전사아키텍처에 대해 주기적으로 평가하고 개선점을 도출하여 반영해야 함. 이를 위해서 전사아키텍처의 수준을 객관적이고 정확하게 평가할 수 있는 전사아키텍처 성숙 모형이 필요함
아키텍처 도메인 구성
비즈니스 아키텍처
- 비즈니스 아키텍처는 기업의 경영 목표를 달성하기 위한 업무 구조를 정의한 아키텍처 영역으로, 기업의 업무와 서비스의 실체를 명확히 하는 것. 비즈니스 아키텍처는 타 아키텍처(데이터, 애플리케이션, 기술)의 방향을 정의하고 검증하는 시발점이 됨
- 전사 사업 모델(계획자 관점) : 비즈니스 아키텍처는 먼저 아키텍처 정보를 구축하는 대상인 전사의 범위를 정의하는 것에서부터 시작됨. 전사를 둘러싼 내외부의 이해 관계자를 분석하고, 외부 객체와의 가치 사슬을 분석하여 전사를 정의함
- 조직 모델(계획자 관점) : 기업의 사업 모델을 지원하기 위한 기업의 조직 구조를 정의하는 것. 비즈니스를 수행하는 지리적 위치와 내부 객체를 도출하여 기업의 조직 구조와 업무 분장을 정의함
- 업무 기능 모델(책임자 관점) : 기업의 업무 기능을 계층적으로 분할하고 기능 내용을 정의하는 것. 업무 기능을 분할할 때는 조직 기준이 아닌 업무 기능의 유사성과 연관성을 기준으로 정의함
- 프로세스 모델(설계자 관점) : 업무 기능을 상세화하여 계층적으로 프로세스를 분할하고 프로세스의 활동 내용을 정의하는 것. 데이터와 애플리케이션의 상호 비교를 통한 연관 분석이 반복적으로 이루어짐
- 업무 매뉴얼(개발자 관점) : 업무 기능이나 프로세스별 업무 내역을 상세히 기술한 자료로, 전사아키텍처에서는 목록 수준의 정보를 관리함
애플리케이션 아키텍처
- 기업의 업무를 지원하는 전체 애플리케이션을 식별하고 연관성을 정의하며, 업무와 IT 특성을 고려하여 그룹화하고 범주함으로써 전체 애플리케이션 구조를 체계화하는 것. 애플리케이션 서비스는 애플리케이션이 지원하는 업무와 데이터의 특성을 고려하여 정의되며, 서비스 간의 상호 연관관계를 분석 정의함
- 전사 애플리케이션 영역 모델(계획자 관점) : 기업의 업무를 지원하는 애플리케이션을 식별하고 애플리케이션별 특성 분석을 통해 이를 전사 수준에서 구조화하는 것. 애플리케이션의 기능과 특성에 따라 독립되어 구현되고 운영될 수 있는 애플리케이션을 정의하고, 애플리케이션과 관련된 업무, 데이터와 IT 특성을 감안하여 애플리케이션을 그룹화하여 애플리케이션 영역을 정의함
- 애플리케이션 모델(책임자 관점) : 각 애플리케이션이 지원하는 기능과 데이터 정보를 정의하고, 애플리케이션이 제공하는 서비스를 도출하며, 이들 간의 연관 관계를 정의한 것. 애플리케이션이나 서비스가 어느 업무 프로세스에서 활용되고, 어떠한 정보를 생산하고 관리하는지 연관성 분석을 함
- 컴포넌트 모델, 클래스 모델(설계자 관점) : 실제 애플리케이션 개발에 필요한 설계 정보를 관리하는 것으로, 컴포넌트 정의나 클래스 정의, 데이터 흐름도(DFD) 등이 해당되며 기업의 개발 방법론에 영향을 많이 받음. 기업이 가지고 있는 업무 영역별로 애플리케이션의 개발 환경은 상이할 수 있음
- 프로그램 목록(개발자 관점) : 애플리케이션의 최종 단위인 프로그램에 대한 정보를 관리함
데이터 아키텍처
- 기업의 업무 수행에 필요한 데이터의 구조를 체계적으로 정의하는 것. 전사의 데이터 영역을 분류하는데, 업무 데이터와 메타 데이터를 구분하거나 업무 데이터는 운영계 데이터, 정보계 데이터 등으로 구분함. 이를 기준으로 전사 수준의 주제 영역 모델, 개념 데이터 모델을 정의하고, 영역별로 논리 데이터 모델, 물리 데이터 모델을 정의함
- 전사 데이터 영역 모델(계획자 관점) : 개괄 데이터 모델이라고도 하며 상위 수준의 전사 데이터 영역을 분류하여 표현한 것으로, 상위 주제 영역 수준의 데이터 구성도가 이에 해당됨. 주제 영역은 업무 기능과 대응되는 개념으로 유사 데이터를 그룹화한 것
- 개념 데이터 모델(책임자 관점) : 전사 수준의 데이터 모델로 단위 주제 영역 또는 핵심 엔티티 정도를 표현한 데이터 모델. 전사 수준에서 사용하는 데이터를 전체적으로 표현할 수 있는 기본 틀로서, 전사 데이터아키텍처를 관리하는 데 있어 매우 유용한 모델임. 핵심 엔티티는 일반적으로 단위 주제 영역별로 한 두 개 정도가 도출됨
- 논리 데이터 모델(설계자 관점) : 개념 데이터 모델에서 정의된 주제 영역과 핵심 엔티티를 기본 정보로 하여 업무 요건을 충족시키기 위한 데이터의 상세한 구조를 논리적으로 구체화한 것. 논리 데이터 모델링은 수집된 업무 관련 데이터 정보 및 사전에 작성된 산출물을 기반으로 필요한 모든 엔티티를 도출하고, 식별자, 속성, 관계와 서브타입 등을 정의함
- 물리 데이터 모델(개발자 관점) : 기술적 환경과 특성을 고려하여 물리적 데이터 구조를 설계하고, 데이터베이스 객체를 정의한 것. 개발자는 논리 데이터 모델을 물리적인 데이터 구조로 전환하고 데이터 무결성을 보완하여 정의하고, 데이터 분산 설계에 따른 데이터 무결성 등 추가적인 무결성 규칙을 정의함. 데이터베이스 성능을 고려하여 향상을 위한 인덱스 설계, 데이터 구조에 대한 비정규화 과정을 수행함
기술 아키텍처
- 비즈니스, 데이터, 애플리케이션 아키텍처에서 정의된 요건을 지원하는 전사의 기술 인프라 체계를 정의하는 것. 기술 인프라는 하드웨어, 시스템 소프트웨어, 통신 네트워크, 시스템 개발도구, 시스템 관리도구, 최종 사용자 소프트웨어 등을 포함함. 기술 참조 모델과 표준 프로파일 구축을 통해 애플리케이션의 이식성과 확정을 강화하고, 벤더로부터의 독립성을 확보하며, 시스템 간의 상호운용성을 강화하는 등의 효과를 기대할 수 있음
- 전사 기술 영역 모델, 기술 참조 모델(계획자 관점) : 기업이 업무 활동에 필요한 정보기술의 영역을 상위 수준에서 분류한 것. 기술 참조 모델(TRM)은 기업이 업무 활동에 필요한 기능들을 수행하기 위해 요구되는 정보기술을 상위 수준에서 논리적으로 분류한 틀로, 전사 기술 영역 모델과 같은 범주로 볼 수 있음
- 표준 프로파일(책임자 관점) : 기술 참조 모델에 명시된 서비스를 지원하기 위한 정보 기술 표준들의 집합. 기업의 모든 기술 아키텍처 요소에 영향을 미치는 표준들을 포함함. 이 표준들은 시스템의 이식성, 확장성, 상호운용성, 호환성을 제고함
- 기술 아키텍처 모델(설계자 관점) : 전사 기술 영역 모델이나 기술 참조 모델에서 정의된 서비스 카테고리별로 아키텍처의 패턴을 정의하거나, 기업의 소프트웨어, 하드웨어, 네트워크 등의 구성 요소에 대한 배치도를 정의하는 것
- 기술 자원 목록, 제품 목록(개발자 관점) : 표준 프로파일이나 기술 아키텍처별로 관련된 기술 자원 목록이나 제품 목록을 기술 아키텍처 정보로 관리함