시퀀스 다이어그램 : 액터 오브젝트입니까?


12

가장 가능성이 높은 대답은 '아니요'이지만이 의심이 생겼습니다. 배우가 수업처럼 행동 할 수 있습니까?

액터가 이벤트를 트리거하고 프롬프트를 가질 수 있다는 것을 알고 있지만 액터 (예 : 사용자 클래스)를 모델링하는 클래스가있는 경우 해당 클래스를 통해 메소드를 호출 할 수 있습니까? 아니면 이것이 대표 역할과 혼동되는 배우 역할에 대한 완전한 오해입니까?

올바른 것으로 가정 :

올바른 예

올바른 경우 의심 :

여기에 이미지 설명을 입력하십시오

답변:


8

UML에서 액터는 항상 여러분이 구축하고있는 시스템 / 소프트웨어의 범위를 벗어난 것 (시스템 또는 사람)입니다 . 액터를 시스템의 액터의 특정 측면을 모델링하는 클래스의 인스턴스 / 오브젝트와 동일시하는 것은 완전히 잘못된 것입니다.

표시된 UML 다이어그램에서 액터 "사용자"(스틱 모양 아이콘이 있음)는 시스템을 운영하는 실제 인간을 나타냅니다. 이 클래스 User는 귀하와 관련된 특성을 포착하는 해당 사람의 모델을 나타냅니다. 이 클래스는 시스템 내에서만 존재합니다.
이것은 클래스와 액터가 두 개의 별개의 엔티티이며 다이어그램에도 표시되어야합니다.


"액터는 항상 여러분이 구축하고있는 시스템 / 소프트웨어의 범위를 벗어난 것입니다." 그럼에도 불구하고 액터는 호출 스택을 시작하여 일부 클래스의 객체와 직접 상호 작용합니다. 따라서 그는 든 시스템의 일부 (그 클래스 다이어그램에서 대부분 모델링되지 않은 UI 층으로부터 임의의 다른 클래스에 의해 표현된다). 이것은 처음에는 반 직관적 인 것처럼 보이며 아마도 일부 사람들에게는 혼란의 원인 일 것입니다.
dvdblk

액터는 별도의 엔티티입니다. 시스템이 없어도 액터가 존재합니다. 액터는 시스템을 시작, 종료 및 입력하지만 시스템의 작업을 수행하기 위해 소프트웨어 시스템 내부에 앉아 있지 않습니다. 시스템은 액터와 독립적으로 작동합니다. 오브젝트는 실제 액터를 시뮬레이션 할 수 있지만 직접, 간접적으로 시작, 종료 및 입력을 위해 인간 액터에 의존합니다.
user2994783
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.