사전과 같은 도메인 모델

A "도메인 모델" 시각적으로 누가 당신의 제품을 설명하는 대표. 도메인 모델은 사람과 시스템과 추상적 인 아이디어 사이의 관계를 보여주는 사전입니다. 이 패턴을 발견 할 수있는 유용한 방법을 제공합니다, 오류 및 누락.

도메인 모델은 브레이크 다운 모호성을하는 데 도움이. 그들은 우리가 더 복잡한 아이디어를 표현하기 위해 사용하는 사전이 될, 이러한 워크 플로로.

도메인 모델을 보여줍니다 누구 우리의 새로운 제품의; 이들은 우리가 확인 된 물리적, 추상 명사 우리의 의식 운동의 흐름.

[기술 노트: 도메인 모델링은 또한 객체 지향 프로그래밍에서 클래스 간의 관계를 나타내는 데 사용. 여기에 설명 된 도메인 모델링은 실제와 추상 개체 사이의 일반적인 관계, 또는 최종 코드의 클래스로 표시되지 않을 수있다.]

우리는 사용 "에게 있습니다" 집계를 보여 관계, 한 부분은 서로에 속함; 과, an "인가" 일반화를 보여 관계, 한 부분은 서로의 전문입니다. 이와 같이, 우리는 시각적 박스 및 라인을 통해 기입의 페이지 (10S)에 존재 동일한 정보를 나타낼 수. 당신은 아래의 다이어그램에서 이러한 관계를 볼 수 있습니다, 어디에서 "에게 있습니다" 다이아몬드 종단 선으로 표시된다 "인가" 화살표.

당신은 그냥 시작하는 경우 연필과 종이는 단순한 도메인 모델을 만들 수있는 좋은 방법입니다. 귀하의 요구에보다 정교한 해짐에 따라, 이러한 Sparx 시스템에서 엔터프라이즈 설계자 등 전문 UML 소프트웨어는 유용한됩니다 (하지만 복잡한 이상) 수단.

의 사용 몇 가지 예를 살펴 보자 SOFIns, 나의 가장 최근의 벤처.

간단한 예제

내 SOFIns 서비스의, a 제어 에이전트 원격 컴퓨터에 특별한 액세스 할 수 있도록 소프트웨어의 조각이다. SOFIns은 복잡한 소프트웨어 시스템. 내가 일관성있는 용어를 사용하여 설명하는이 용어는 내 개발자들이 이해하기 쉬운 것이 매우 중요합니다. 여기의 한 부분이 작동하는 방법입니다, 입에서 작성:

A 사용자 에게 있습니다 제어 에이전트. 두 가지 유형이 있습니다 사용자: a 받는 사람송신기 또는 소유자. A 받는 사람제어 에이전트 즉 호출 외부 에이전트. An 소유자 / 보낸 사람제어 에이전트 즉 호출 공유 에이전트.


이 같은 설계는 것을 보여줍니다 대칭 도메인 모델을 통해 시각적으로 표현 될 수있다 공유외국의 에이전트의 전문입니다 제어 에이전트받는 사람, 소유자 및 보낸 사람 이다의 모든 전문 사용자. 모델 읽기, 우리는 볼 수 있습니다:

  • 사용자가 제어 에이전트가
  • 받는 사람은 사용자입니다
  • 받는 사람은 외부 에이전트가; 과, 외국 에이전트는 제어 에이전트입니다.
SOFIns Domain Model for Agents and Users.

에이전트 및 사용자를위한 SOFIns 도메인 모델.

무엇을 이해하기 간단합니다, 사용자 및 제어 에이전트의 텍스트 표현은 위의 노란색 상자 또는 대칭 그림에 설명? 당신은 내가 만든 기술 시스템을 이해하지 않을 수 있습니다, 하지만 당신은 동일한의 간단한 표현을 식별 할 수 있습니다 누구 관계.

현실적인 예

내 SOFIns 서비스는 원격 컴퓨터를 제어 할 수있다, 그 컴퓨터는 운영체제를 설치 또는 하드 디스크 드라이브가 작동이되지 않는 경우에도. 이 기술 위업을 달성에 관련된 많은 부분이 있습니다. 내가 설명하는 것이 매우 중요합니다 워크 플로 일치를 사용하여, 잘 정의 된 용어. 내 개발자는 이러한 용어를 이해하는 것이 똑같이 중요.

여기에 물리적 및 추상 개체를 정의하는 방법입니다 (the 누구 내 서비스). 이 그림은 네 개의 주요 구성 요소 사이의 단순한 관계로 시작하고보다 전문적인 개체가 워크 플로를 정제하는 과정에서 확인 된로 진화.

아래 그림은 모호하지만 아무것도입니다. 복잡한? 예. 모호한, 아니.

SOFIns Subsystem Showing "Component A" Objects

SOFIns 서브 시스템 개 표시 "부품" 사물

10 월 30 일, 2013 에 의해 게시 됨 존 Jaroker 에 출원: DomainModeling, UML

의견을 가장 먼저 만나보세요. 코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드는 표시됩니다 *