아티팩트: 프로토콜
이 아티팩트는 캡슐 간 사용되는 통신 패턴을 지정합니다. 캡슐의 포트에 메시지를 보내서 캡슐 간 통신을 수행합니다. 프로토콜 클래스는 캡슐 포트에서 보내거나 받을 수 있는 메시지를 정의합니다.
중간 산출물 유형: 모델 요소
관계
컨테이너 아티팩트
역할책임이 있음: 수정자:
타스크입력 대상: 산출 지점:
프로세스 사용법
설명
기본 설명

프로토콜을 사용하여 중간 산출물: 캡슐 포트 세트에 대한 스펙을 정의하고 재사용할 수 있습니다. 프로토콜은 입력 및 출력 메시지 유형(예: 조작, 신호)의 세트 및 선택적으로 협업(대개 시퀀스 다이어그램 세트로 구성, 가이드라인: 시퀀스 다이어그램 참조)을 정의하며, 협업은 필수 메시지 순서 지정 및 프로토콜의 참가자가 제공해야 하는 추상 동작을 지정하는 상태 머신(상태 차트 다이어그램으로 설명됨, 가이드라인: 상태 차트 다이어그램 참조)을 정의합니다.

프로토콜은 커넥터에서 발생할 수 있는 원하는 동작의 스펙이며, 프로토콜의 참가자 간 계약상의 동의의 명시적 스펙입니다. 이 스펙은 순수한 동작이고 구조적 요소를 지정하지 않습니다. 프로토콜은 각각 프로토콜에서 특정 역할을 수행하는 참가자 세트로 구성됩니다.

각 해당 프로토콜 역할은 해당 역할 뿐만 아니라 해당 역할이 보내는 신호 세트에 의해 수신되는 신호 세트 및 고유 이름으로 지정됩니다(각 세트는 비어 있을 수 있음). 옵션으로 프로토콜에는 올바른 통신 시퀀스의 스펙이 있을 수도 있고 상태 머신이 이 옵션을 지정할 수 있습니다. 마지막으로 프로토콜에는 프로토타입 상호작용 시퀀스 세트가 있을 수도 있습니다(이 시퀀스는 시퀀스 다이어그램으로 표시될 수 있음). 이러한 시퀀스는 정의된 경우 프로토콜 상태 머신을 따라야 합니다.

단 두 참가자만 관련된 2진 프로토콜은 가장 공통적이고 단순하게 지정할 수 있습니다. 이러한 프로토콜의 하나의 장점은 기본 역할이라는 하나의 역할만 지정해야 한다는 점입니다. 활용이라는 다른 역할은 기본 역할에서 단순히 입력 및 출력 신호 세트를 변환하여 파생될 수 있습니다. 이 반전 조작을 활용이라고 합니다.

프로토콜 클래스의 컴포지션

<<프로토콜>> 클래스의 컴포지션.

위 그림에서 설명한 대로 일반적으로 프로토콜에는 프로토콜이 지정하는 올바른 메시지 교환 시퀀스를 보여주는 하나 이상의 시퀀스 다이어그램이 포함됩니다. 프로토콜은 입력(요청) 메시지 세트 및 출력(응답) 메시지 세트로도 구성됩니다. 선택적 상태 머신을 사용하여 프로토콜의 참가자가 지원해야 하는 동작을 지정할 수 있습니다.

사용자 조정
표시 옵션UML 표시: <<protocol>>로 스테레오타입화된 클래스. 이 표시법은 UML 1.5 표기법을 기준으로 합니다. 대부분은 개념: 구조화된 클래스를 사용하여 UML 2.0으로 표시될 수 있습니다. 자세한 정보는 UML 1.x와 UML 2.0의 차이점을 참조하십시오.
자세한 정보
체크리스트