개념: 통합 메소드 아키텍처(UMA)의 주요 기능
통합 메소드 아키텍처(UMA)는 메소드 컨텐츠 및 프로세스로 구성되는 메소드를 표시하기 위한 스키마 및 용어를 정의하는 프로세스 엔지니어링 메타 모델입니다.
기본 설명

통합 메소드 아키텍처(UMA) 메타 모델은 소프트웨어 프로세스 엔지니어링용 UML의 SPEM 확장, RUP v2003에 사용되는 언어, 유니파이드 프로세스, IBM Global Services Method, IBM Rational Summit Ascendant와 같은 프로세스 엔지니어링 언어 및 기타 메소드의 단일화로 개발되었습니다. 이 메타 모델은 일관된 방법으로 단일화하여 이와 같은 모든 소스 모델의 개념 및 기능을 제공하면서도 각각의 소스 메소드를 고유 특성으로 표시할 수 있도록 합니다. 이 개념은 UMA 기능에 대한 일반적인 개요를 제공합니다.

메소드 컨텐츠 및 프로세스의 분리

UMA은 메소드 컨텐츠 정의와 프로세스에서의 해당 적용을 명확히 분리합니다. 이는 다음을 개별적으로 분리하여 수행됩니다.

  • 역할, 타스크, 중간 산출물 및 안내와 같은 일반적인 컨텐츠 설명 양식으로 재사용가능한 핵심 메소드 컨텐츠 분리
  • 메소드 컨텐츠를 참조하는 프로세스 설명 양식으로 컨텍스트에서 메소드 컨텐츠의 프로젝트 유형 특정 적용 분리

메소드 컨텐츠는 개발 라이프사이클 내에서 해당 단계의 배치와 관계없이 특정의 개발 목적을 달성하는 방법에 대한 단계별 설명을 제공합니다. 프로세스는 이 메소드 컨텐츠 요소를 취하여 특정 유형의 프로젝트에 맞게 사용자 정의할 수 있는 시퀀스로 구성합니다. 예를 들어, 처음부터 응용프로그램을 개발하는 소프트웨어 개발 프로젝트는 기존의 소프트웨어 시스템을 확장하는 프로젝트와 유사한 개발 단계를 수행합니다. 그러나 두 프로젝트는 서로 다른 시점에서 다른 강조 및 개별 변형을 사용하여 유사한 단계를 수행합니다.

컨텐츠 재사용

UMA에서는 각 프로세스가 공통적인 메소드 컨텐츠 풀에서 공통적인 메소드 컨텐츠를 참조할 수 있습니다. 이와 같은 참조로 인해, 메소드 컨텐츠의 변경사항은 자동으로 이 메소드 컨텐츠를 사용하는 모든 프로세스에 반영됩니다. 그러나 UMA에서는 여전히 프로세스에서 특정의 메소드 관련 컨텐츠를 겹쳐쓰고, 각 프로세스 요소의 개별적인 프로세스 특정 관계를 정의할 수 있습니다(예: 타스크에 추가적인 입력 중간 산출물 추가, 역할 이름 바꾸기 또는 타스크에서 수행할 수 없는 단계 제거).

프로세스 계열

UMA의 목적은 하나의 특정 개발 프로세스 또는 몇 가지의 관련되지 않은 프로세스의 유지보수를 표시할 뿐만 아니라 관련 프로세스의 전체 계열을 일관성 있고 효율적으로 관리하기 위한 도구 세트를 프로세스 엔지니어에게 제공하는 것입니다. UMA는 기능 패턴 및 전달 프로세스의 개념과 프로세스 유형 사이의 특정 재사용 관계를 정의하여 도구 세트 제공을 실현합니다. 이와 같은 개념을 사용하여 프로세스 엔지니어는 프로젝트 유형에 고유하고 동일한 기본 메소드 컨텐츠 및 기능 패턴의 변형인 일관된 전달 프로세스 계열을 유지보수할 수 있습니다. 결과는 동일한 메소드 컨텐츠 및 패턴을 동적으로 재사용하여 빌드되었지만 다른 세부사항 및 규모 레벨로 적용된 특정 프로세스의 다른 변형입니다(예: 소규모 개발 프로젝트 대 대규모 개발 프로젝트의 프로세스 변형).

다중 라이프사이클

일반적인 메소드 아키텍처는 프로세스 정의에 대해 다른 다양성과 라이프사이클 모델 조합을 지원해야 합니다. 여기에는 폭포수형, 반복적, 점진적, 발전적 등이 포함됩니다. UMA 메타 모델은 여러 가지의 접근 방식을 수용하도록 디자인되었습니다. 단계, 반복, 종속성, 계속적 또는 이벤트 기반 작업 등과 같은 프로세스 요소의 임시 시맨틱을 지정하기 위한 풍부한 개념 및 사용자 정의 속성 세트를 제공합니다.

융통성 있는 확장성 및 플러그인 메커니즘

UMA의 메소드 플러그인은 원래 컨텐츠를 직접 수정하지 않고도 메소드 컨텐츠 및 프로세스를 사용자 정의하는 고유한 방식을 제공합니다. 대신, 플러그인은 단지 원래 컨텐츠와 비교하여 차이점(컨트리뷰션 및 대체사항이라고도 하는 추가사항)을 설명합니다. 이 플러그인 개념으로 인해 사용자는 자신의 사용자 정의 부분을 빠뜨리지 않으면서 메소드 컨텐츠의 최근 버전으로 쉽게 업그레이드할 수 있습니다.

다중 프로세스 '보기'

UMA는 프로세스에 대해 일관성 있게 유지보수되는 여러 개의 보기를 정의합니다. 이 보기를 사용하여 프로세스 엔지니어는 개인 환경 설정에 따라 프로세스 작성에 접근할 수 있습니다. 프로세스 엔지니어는 다음 중 하나에 초점을 맞추고 프로세스를 정의하도록 선택할 수 있습니다.

  • 작업분류 - 특정의 상위 레벨 활동과 연관되는 타스크를 정의하는 작업 중심 보기입니다.
  • 중간 산출물 사용법 - 다양한 프로세스 지점에서의 특정 인도물과 아티팩트의 상태를 정의하는 결과 기반 보기입니다.
  • 팀 할당 - 필요한 역할과 역할의 중간 산출물 책임을 정의하는 책임 기반 보기입니다.

UMA는 위의 모든 보기 사이의 일관성을 제공합니다. 보기는 모두 하나의 통합 오브젝트 구조를 기반으로 하기 때문입니다. 하나의 보기에서 수행된 변경사항은 즉시 다른 보기에서 반영됩니다.

재사용가능 프로세스 패턴

UMA의 기능 패턴은 새 개발 프로세스를 작성하기 위한 재사용가능 빌딩 블록입니다. 기능 패턴 선택 및 적용은 두 가지의 융통성 있는 방식 중 하나로 수행할 수 있습니다.

  • 패턴은 정교한 복사 및 수정 오퍼레이션으로 적용할 수 있습니다. 이 오퍼레이션으로 프로세스 엔지니어는 패턴 적용 중 필요성에 맞게 패턴 컨텐츠를 개별적으로 사용자 정의할 수 있습니다.
  • 패턴은 동적 바인딩을 통해 적용할 수 있습니다. 이와 같이 프로세스 지식을 재사용하는 고유한 새 방식을 통해, 공통적으로 다시 발생하는 활동의 요인을 분리하여 프로세스에서 다시 반복적으로 적용될 수 있는 패턴에 넣을 수 있습니다. 패턴을 수정하거나 갱신할 경우 모든 변경사항은 자동으로 해당 패턴에 적용된 모든 프로세스에 반영됩니다.