툴 강좌: Rational
Software Architect를 사용하여 설계 요소 식별
목적
이 섹션은 이 툴 강좌와 관련된 추가 정보의 링크를 제공합니다.
이 툴 강좌의 단계는 활동의 단계와 일치합니다. RSA 온라인 도움말의 주제 링크에는
표시가 있습니다.
개요
이 툴 강좌에서는 현재 반복에서 유스 케이스를
설계하기 위해 다음 단계를 수행합니다.
추가 툴 정보
아키텍트 측면에서 중요한 설계 요소는 설계 요소가 식별될 때
유지보수되는 별도 논리 보기에서 설명합니다. RSA의 일반
권장사항은 <<Perspective>> 패키지를 사용하는 것입니다. 이
주제에 대한 자세한 정보는 Rational
Software Architect에 대한 모델 구조 가이드라인을 참조하십시오.
이벤트 특성(UML 2.0에서는 트리거라고 함)은 이를 처리하는
설계 요소를 식별하는 데 필요하므로 캡처해야 합니다.
이 정보는 RSA 모델의 일부가 아닌 별도
문서에서 비공식적으로 캡처할 수 있습니다.
비동기 의사소통 이벤트는 전송 데이터를 표시하거나
일반화 관계와 같이 신호 간 관계를 표시하는 신호로서
모델링할 수 있습니다. 다음 부속 단계는
신호를 모델링하는 방법에 대해 설명합니다.
- 필요에 따라 클래스 다이어그램을 작성하십시오.
모델
요소에 클래스 다이어그램 추가를 참조하십시오.
- 신호를 추가하십시오.
클래스
다이어그램 작성 및 수정을 참조하십시오.
- 각 설계 요소에 간략한 설명을 추가하십시오.
모델
요소 설명을 참조하십시오.
- 적용 가능한 경우, 신호 간 일반화 관계를 추가하십시오.
클래스 다이어그램에 대한 자세한 정보는
클래스 다이어그램으로 정적 구조 모델링을 참조하십시오.
설계 요소는 일반적으로 다음 세 가지 방법으로 작성됩니다.
이러한 방법은 다음 섹션에서 설명합니다.
패턴 확장
RSA에서 패턴은 주로 단일 메타 모델, 동일한
추상 레벨 내부 및 동일한 모델 내부에서의 세부
대화식 처리에 맞게 최적화된 변환입니다. 자세한 정보는
분석 메커니즘을 참조하십시오.
RSA 온라인 도움말의 패턴
작성 및 패턴
적용을 참조하십시오.
모델링
RSA 툴은 소프트웨어 개발을 위한 모델 구동 방법을
지원합니다(모델 구동 개발
및 모델 구동 구조와 분석
메커니즘 참조). 이 방법은 결과적으로 모델 설계를 포함하는
모델 세트를 구축하며 변환을 사용하여 모델 설계에서
구현 결과물(3GL 코드, 설명자 등)을 생성합니다. 경우에
따라 코드 생성 변환이 분석 클래스를 입력으로 사용하지만
주로 설계 요소에 의해 구동됩니다. 자세한 정보는
설계: 모델 대 모델 변환
및 설계: 모델 대 코드 변환을 참조하십시오.
종래의 개발 방법에서는 모델 설계에서 클래스 다이어그램을 작성하여
설계 요소를 캡처합니다. 분석 클래스를 유지보수하려면
분석 클래스에 대한 "추적" 종속성을 사용하여 추적성을
설정해야 합니다.
- 필요에 따라 클래스 다이어그램을 작성하십시오.
모델
요소에 클래스 다이어그램 추가를 참조하십시오.
- 서브시스템 및 클래스를 추가하십시오.
클래스
다이어그램 작성 및 수정을 참조하십시오.
- 각 설계 요소에 간략한 설명을 추가하십시오.
모델
요소 설명을 참조하십시오.
- (선택적) 설계 요소의 "추적" 종속성을
사용하여 기반이 되는 분석 클래스에 추가하십시오.
추상
관계 추가를 참조하십시오.
- 설계 요소를 서브시스템 및 패키지로 구성하십시오.
Rational Software Architect에 대한 모델 구조 가이드라인 백서를 참조하십시오.
클래스 다이어그램에 대한 자세한 정보는
클래스 다이어그램으로 정적 구조 모델링을 참조하십시오.
코딩 및 리버스 엔지니어링
다른 방법은 "코드 우선" 방법입니다. 즉, 코드가 이미
존재하거나(예: 비그린필드 개발 주기) 팀에서 복잡한 개념의
유효성을 확인하는 프로토타입을 코딩하여 일부 특정 프로젝트 위험을
처리해야 하므로 코드가 기본 드라이버가 됩니다. 구조 개발 및
복구에 대한 지원의 일부로서(아키텍트
발견, 분석 및 제어 가이드라인 참조) RSA의 코드 시각화
성능이 자동으로 패키지 구조, 클래스 내부, 상속 트리 및
협업과 같은 주제 다이어그램을 작성할 수 있습니다. 이
활동의 목적은 기존 코드를 이해하는 것뿐 아니라, 변환을 사용함으로써
새 어플리케이션 버전을 생성하기 위해 기타 특정 모델과 함께
사용할 수 있는 어플리케이션 모델을 추출하기 위해서입니다.
기존 코드의 UML 다이어그램을 생성 또는 작성하면 다음
옵션으로 코드 설명을 모델 설계의 일부로 이용할 수 있습니다.
- 코드 요소의 UML 설명을 실제 의미론 모델 요소로서 모델 설계에
추가하십시오. 추가한 코드 항목과 관련이 없는 설계
모델에 새 UML 요소가 작성됩니다. 그러나 추가한
코드 항목의 특성을 반영하는, 인스턴스 속성 및 조작에
대한 특성을 포함합니다. 이 요소는 실제 UML
의미론 요소이므로 새 코드를 생성할 수 있습니다. (이전에 설명한 그린필드 모델링 프로세스를 통해 정의된
설계 요소와 모델 설계의 상태가 동일합니다.)
-
코드 요소에 대한 시각적 참조를 모델 설계에 상주하는
다이어그램에 배치하십시오. 이 참조는 모델 설계에서는 의미론적인
의의가 없으므로 새 코드가 생성되지 않습니다. 이 참조는 이름에서
알 수 있듯이 실제 코드 요소에 대한 참조일 뿐입니다. 그러나
모델 설계의 의미론 설계 요소와 코드 참조 간의 관계를 작성할
수 있습니다. 이러한 관계는 모델 설계에서
의미론적인 의의가 없으며 코드 생성에 영향을 주지 않습니다.
자세한 정보는 RSA 온라인 도움말의 클래스
다이어그램을 사용하여 정적 구조 모델링을 참조하십시오.
다음 단계는 대형 세분화 서브시스템에 적용됩니다.
- 각 서브시스템에 대해 후보 인터페이스 세트를 식별하십시오. 이전에
분석 클래스를 작성하고 분석 레벨 유스 케이스 구현을 수행한 경우,
이제 해당 조작을 그룹화하는 방법 및 특정 컴포넌트 또는 서비스
인터페이스로서 표시하는 방법을 결정해야 합니다. 기존 문서 다이어그램에
인터페이스를 추가하거나 필요에 따라 새 컴포넌트 다이어그램을 작성하십시오.
모양
추가를 참조하십시오.
- 인터페이스 종속성을 추가하십시오.
- 서브시스템에서 인터페이스로 구현 관계를 추가하여 서브시스템을 인터페이스로
맵핑하십시오.
- 필수 동작을 포함하여 인터페이스를 설명하십시오.
모델
요소 설명을 참조하십시오.
- 인터페이스에 조작을 추가하십시오.
다이어그램의
분류자에 조작 추가를 참조하십시오.
- 각 조작에 설명을 추가하십시오.
모델
요소 설명을 참조하십시오.
- 각 조작에 매개변수를 추가하십시오.
다이어그램의
분류자에 조작 추가를 참조하십시오.
- 인터페이스를 패키지로 구성하십시오.
UML 2.0 서브시스템은 대형 컴포넌트이며 포트 및/또는 인터페이스로 구성된
클래스로 표시될 수 있습니다. 온라인 도움말 관련 UML 2.0 주제를
참조하십시오.
둘러보기:
RAS
패턴
학습:
XYZ 패턴 적용
샘플:
패턴 어플리케이션 모델
패턴
치트 시트:
설계
요소 식별
|