주제

소개 페이지 맨 위

설계는 명백하게 구현될 수 있도록 충분히 시스템을 정의해야 합니다. 충분한 정도는 프로젝트별로, 회사별로 다릅니다.

일부 경우에, 설계는 구현자가 진행할 수 있을 정도로 충분히 구현된 초안과 유사합니다("초안 및 코드" 방법). 스펙의 정도는 구현자의 전문성, 설계 복잡도 및 설계가 잘못 구축될 수 있는 위험에 따라 다릅니다.

다른 경우에, 설계는 설계가 자동으로 코드로 변환될 수 있는 지점으로 구현됩니다. 여기에는 일반적으로 언어 및/또는 환경 특정 의미론을 표시하기 위해 표준 UML 확장이 포함됩니다.

설계는 다음과 같은 계층 구조일 수도 있습니다.

  • 전체 시스템의 개요를 기술하는 상위 레벨 설계 모델
  • 시스템 내의 주요 서브시스템에 필요한 인터페이스 및 작동을 정확하게 지정하는 서브시스템 스펙 모델
  • 서브시스템 내부에 대한 세부 설계 모델

../../artifact/ar_devcs.htm -- This hyperlink in not present in this generated website개발 케이스는 설계 모델이 프로젝트의 특정 프로세스에 구현되는 방법 및 모델이 다른 모델과 구현에 연관되는 방법/연관되는지 여부를 정의해야 합니다. 세부사항은 ../../artifact/ar_projspecgls.htm -- This hyperlink in not present in this generated website프로젝트 특정 가이드라인에서 캡처되어야 합니다.

아래 섹션에서는 설계 및 구현을 관계시키기 위한 몇 가지 다른 옵션과 이러한 방법의 장점 및 약점을 설명합니다.

초안 및 코드 페이지 맨 위

공통적인 설계 방법 중 하나는 아주 추상적인 레벨로 설계의 초안을 잡은 후 직접 코드로 옮기는 것입니다. 설계 모델의 유지보수는 수동입니다.

이 방법에서는 설계 클래스가 여러 코드 레벨 클래스의 요약이 되도록 합니다. 각 설계 클래스를 작동을 수행하기 위해 차례로 여러 개의 "헬퍼" 클래스를 사용할 수 있는 "헤드" 클래스로 맵핑하도록 권장합니다. "헬퍼" 클래스를 사용하여 조작 구현에 필요한 복합 속성을 구현하거나 데이터 구조를 빌드할 수 있습니다. 설계에서는 "헬퍼" 클래스를 모델링하지 않고 헤드 클래스에서 정의된 주요 속성, 관계 및 조작만을 모델링합니다. 이러한 모델의 목적은 구현자가 구현할 수 있는 세부사항을 추상화하는 것입니다.

이 방법이 확장되어 다른 설계 모델 요소에 적용됩니다. 코드 레벨 인터페이스보다 더 추상적인 설계 인터페이스를 가지게 될 수 있습니다.

라운드 트립 엔지니어링 페이지 맨 위

라운드 트립 엔지니어링에서 설계 모델은 코드의 시각적 표시가 되는 세부사항 레벨로 전개됩니다. 코드 및 코드의 시각적 표시가 동기화됩니다(툴 지원과 함께).

다음은 라운드 트립 엔지니어링 컨텍스트에서 설계 모델을 표시하기 위한 몇 가지 옵션입니다.

상위 레벨 설계 모델 및 설계 모델 세부사항페이지 맨 위

이 방법에는 유지보수되는 두 가지 설계 모델 레벨이 있습니다. 각각의 상위 레벨 설계 요소는 라운드 트립 모델에서 하나 이상의 요소 세부사항에 대한 요약입니다. 예를 들어, 설계 클래스는 이전에 설명된 "초안 및 코드" 방법에서와 같이 하나의 "헤드" 클래스 및 여러 개의 "헬퍼" 클래스로 맵핑될 수 있습니다. 상위 레벨 설계 모델 요소에서 라운드 트립 모델 요소까지의 추적성은 두 모델 사이의 일관성을 유지하는 데 도움을 줄 수 있습니다.

이 방법이 덜 중요한 세부사항을 제외하고 추상화하는 데 도움을 줄 수는 있지만 이 장점은 모델 사이의 일관성을 유지하기 위해 필요한 노력과 비교되어야 합니다.

단일 전개 설계 모델페이지  맨 위

이 방법에는 단일 설계 모델이 있습니다. 설계 요소의 초안은 코드와 동기화될 수 있는 지점으로 전개됩니다. 설계 유스 케이스 구현을 설명하는 데 사용될 수 있는 다이어그램은 초기에는 설계 클래스 초안을 참조하지만 결국에는 언어 특정 클래스를 참조합니다. 다음과 같은 상위 레벨 설계 설명이 필요에 따라 유지보수됩니다.

  • 시스템의 논리적 구조 다이어그램
  • 서브시스템/컴포넌트 스펙
  • 설계 패턴/메커니즘

이러한 모델은 구현과 일관되게 유지보수하기 쉽습니다.

스펙 및 구현 모델페이지 맨 위

연관된 방법은 클라이언트 구현이 컴파일될 수 있는 지점에 대해 세부적으로 설명된, 주요 서브시스템의 스펙에 따라 설계를 정의하는 것입니다.

서브 시스템 설계 세부사항은 이 스펙 모델과 독립적으로 모델링되고 유지보수될 수 있습니다.

서브시스템 스펙 및 구현에 관련된 가이드라인 및 이러한 가이드라인이 사용되어야 하는 시기는 가이드라인: 서브시스템 설계를 참조하십시오.



Rational Unified Process   2003.06.15