2010-05-06 3 views
1

계약 클래스가 있습니다. 계약은 2010 년 1 월 1 일부터 2010 년 12 월 31 일까지 유효합니다.상태가 함수에 종속적 일 때 모델의 상태는 어떻게됩니까?

상태에 대해 인스턴스에 요청한 날짜에 따라 활성 상태 또는 수동적 상태가 될 수 있습니다. 예. 2010 년 7 월 4 일에 물으면 액티브 상태가되지만, 2011 년 1 월 1 일 요청하면 상태 패시브 상태가됩니다.

상태 기도 : 그것은 다음에 가야 상태를 시작 상태에서

? 나는 다음 상태로 갈 진위를 결정한 진입 함수로 의사 상태를 "기본"으로 생각하고, 능동태와 수동형의 하위 상태 머신, 그리고 제거시 종료 상태를 생각하고있다.

하지만이 같은 사소한 문제는 복잡해 보입니다.

어떻게 할 수 있습니까?

답변

0

흠, 누군가가 이전 날짜 이벤트없이 연락처를 사용하려고 시도 할 때 계약이 무효 (시작/종료) 상태가 될 수 있도록 설명하는 것을 원하거나 통화를 추가하려고 할 수 있습니다. 그 생성자에서 함수, 그래서 귀하의 계약은 적절한 상태에 있습니다. 다른 해결책이있을 수 있지만, 계약서에서 날짜보다 다른 이벤트 (메시지/메소드 호출)가 발생할 수 있는지 생각해야합니다. 일부는 스테이에도 영향을 줄 수 있습니다. BTW. 상태 시스템을 포함시키지 않고 시작과 끝만 활성 및 비활성 상태로 연결하는 경우 솔루션이 복잡하지 않습니다.

+0

당신이 제안한 것은 "생성 된 상태"(검은 색 점)와 생성 된 상태에서 나온 화살표 2 개 (액티브 1 개, 패시브 1 개) (컨트 리뷰러에 어떤 상태를 주입 했느냐에 따라 다름)를 의미합니다. – user77115

+0

@ hjo1620 당신은 초기 상태에서 하나의 전환만을 가질 수 있지만 choice 요소를 사용할 수 있습니다. –

+0

나는 초기 상태가 하나 뿐이라고 생각했지만, Jude/Astah에서는 도구로 할 수 있습니다. 언어에 대한 도구 지원이 좋지 않습니까? 아니면 어딘가에 UML 사양의 표준 참조를 알고 있습니까? – user77115

관련 문제