개념: 경쟁 이해 당사자 우선순위 밸런스 조절
이 원리는 이해 당사자(stakeholder) 요구 밸런스 조절의 중요성을 명확히 표명합니다.
기본 설명

소개

이 원리는 자주 충돌하는 비즈니스와 이해 당사자 요구의 밸런스 조절 및 이 요구를 충족시키기 위한 사용자 정의 개발 대 자산 재사용 사이의 밸런스 조절의 중요성을 명확히 표명합니다.

    
이점
  • 비즈니스 및 사용자 요구에 따라 응용프로그램 맞추기
  • 사용자 정의 개발 축소
  • 비즈니스 가치 최적화
패턴
  1. 비즈니스 및 사용자 요구 정의, 이해 및 우선순위 결정
  2. 프로젝트와 요구사항의 우선순위 결정 및 요구에 소프트웨어 기능 결합
  3. 이용할 수 있는 자산 이해
  4. 사용자 요구에 따라 자산 재사용 밸런스 조절
안티패턴
  • 프로젝트 시작 시 정확한 요구사항을 완전히 문서화하여, 이해 당사자가 요구사항을 승인하도록 합니다.
    • 요구사항에 대한 모든 변경사항을 협상합니다. 각 변경사항은 프로젝트의 비용 또는 지속 기간을 늘릴 수 있습니다.
    • 중요한 요구사항을 엄중히 잠그고, 이에 따라 기존 자산을 이용하는 능력을 축소합니다.
    • 주로 사용자 정의 개발을 수행합니다.
  • 가장 영향력이 큰 이해 당사자의 요구를 충족시키는 시스템만 설계합니다.

논의

예를 들어, 대부분의 이해 당사자는 수행해야 할 작업을 정확히 수행하는 응용프로그램을 가지고 해당 응용프로그램의 개발 비용 및 스케줄 시간을 최소화하기를 바랍니다. 그러나 이 우선순위가 충돌하는 경우가 있습니다. 다른 예제로, 패키지된 응용프로그램을 이용하는 경우 솔루션을 보다 더 빨리 적은 비용으로 전달할 수 있지만 많은 요구사항을 절충해야 할 수 있습니다. 그 대신 새로 응용프로그램을 빌드할 경우, 관심 목록의 모든 요구사항을 처리할 수 있지만 예산 및 프로젝트 완료 날짜가 모두 실현 가능한 한계를 넘어설 수 있습니다.

컴포넌트를 사용하여 특정 기능성 세트를 전달하기 위한 비용 및 스케줄을 현저하게 줄일 수 있습니다. 많은 경우 플랫폼 지원, 성능 또는 차지하는 공간(실제 응용프로그램 크기)과 같은 일부 기능 또는 기술적 요구사항에 대해서도 협의해야 합니다.

요구에 대한 밸런스를 조절하려면 먼저 지원 자료: 요구사항 관리에 설명된 대로 요구사항을 효과적으로 관리해야 합니다. 프로그래밍 팀을 파견하여 요구사항 목록의 각 요소에 착수하기 보다는 오히려 비즈니스 및 이해 당사자 요구를 이해하고 우선순위를 결정해야 합니다. 즉, 비즈니스 프로세스를 캡처하여 프로젝트 및 소프트웨어 기능에 링크하면, 프로젝트 및 요구사항 우선순위를 효과적으로 결정할 수 있고 응용프로그램에 대한 이해가 늘고 이해 당사자 요구가 전개됨에 따라 우선순위를 수정할 수 있습니다. 또한 요구사항을 확실히 이해하기 위해 고객 또는 고객 대표를 프로젝트에 참여시켜야 합니다.

그와 동시에 이해 당사자 요구에 개발 활동의 중심을 두어야 합니다. 예를 들어, 유스 케이스 기반 개발 및 사용자 중심 디자인을 이용하면 개발 프로세스에서 비즈니스 변경 및 비즈니스와 일반 사용자에게 실제로 중요한 기능에 대한 이해 증진에 따라 프로젝트 과정 중에 전개되는 이해 당사자 요구를 수용할 수 있습니다.  

마지막으로 사용 가능한 자산을 파악하고 이해 당사자 요구에 맞게 자산 재사용 밸런스를 조절해야 합니다. 자산의 예제에는 레거시 응용프로그램, 서비스, 재사용가능 컴포넌트 및 패턴이 있습니다. 자산을 재사용하면 많은 경우 프로젝트 비용이 절감됩니다. 증명된 자산을 재사용하면 대개는 새 응용프로그램의 품질이 향상됩니다. 단점은 대부분의 경우 자산 재사용과 사용자 요구 사이에서 절충해야 한다는 것입니다. 컴포넌트를 재사용하면 기능 개발 비용을 80%까지 낮출 수 있지만 요구사항의 75% 밖에 처리할 수 없습니다. 따라서 효과적인 재사용을 위해서는 이해 당사자 요구의 전개에 따라 끊임없이 자산 재사용에 대한 밸런스를 조절해야 합니다.