System Engineering/SysML

SysML Reference Guide: 블록 정의 다이어그램(Block Definition Diagram) - 인터페이스 표현

habana4 2024. 11. 19. 00:06
728x90
반응형

1. SysML::Interface Block Node - 인터페이스 블록 정의

Interface Block Nodes는 블록 간의 데이터, 신호, 물리적 상호작용을 모델링하는 강력한 도구입니다. Compartment를 사용하여 흐름 속성, 작업, 신호 등의 세부 사항을 구체적으로 표현함으로써 설계의 명확성과 일관성을 높입니다. 또한 Interface Block Node는SysML 1.3에서 도입된 개념으로, Proxy Port 및 Full Port와 함께 사용됩니다.

 

1-1. 블록 간 상호작용 모델링

  • 블록 간 교환되는 데이터와 신호를 정의하여 상호작용의 표준화된 인터페이스를 제공합니다.

1-2. 구조 및 동작 정의

  • Interface Block은 Flow Properties, Operations, Signals 등을 포함하여 시스템 간 상호작용의 세부 사항을 정의합니다.

1-3. Proxy Port와의 연계

  • Proxy Port는 Interface Block으로 정의된 인터페이스를 노출하여 외부와의 상호작용을 제공합니다.

1-4. 재사용 가능

  • Interface Block은 여러 블록에서 재사용 가능하여 설계의 일관성과 효율성을 향상합니다.

1-5. Block Definition Diagram에서의 역할

  • 구성 요소 간 상호작용 정의: Interface Block은 블록 간 교환되는 데이터를 명확히 정의하여 상호작용의 표준을 제공합니다.
  • 설계 재사용: 동일한 Interface Block을 여러 블록에서 재사용하여 설계를 단순화하고 일관성을 유지합니다.
  • 구획을 통한 상세 정보 제공: Compartment를 사용해 인터페이스의 흐름 속성, 작업, 신호를 명확히 정의합니다.
  • Proxy Port와 Full Port 지원: Interface Block은 포트를 통해 시스템 외부와 내부 간의 상호작용을 연결합니다.

1-6. Compartment 

  • Flow Properties (흐름 속성): 데이터, 신호, 또는 물질의 입출력 흐름을 정의하며, 방향(Direction)은 in, out, inout 중 하나로 지정됩니다.
  • Operations (작업): 인터페이스를 통해 수행되는 동작(작업)을 정의합니다. (예: sendData(), receiveCommand())
  • Signals (신호): 블록 간 교환되는 신호를 정의합니다. (예: statusUpdate, errorSignal)

2. SysML::Interface Node - 동작 및 서비스 집합 

Interface Node는 블록 간의 제공 및 요구되는 서비스를 정의하고, 시스템 간 통신을 표준화하는 데 핵심적인 역할을 합니다. Compartment를 통해 동작, 속성, 신호 등의 세부 정보를 계층적으로 표현함으로써, 복잡한 시스템 간의 상호작용을 명확히 모델링할 수 있습니다. Interface는 시스템 설계의 유연성과 재사용성을 높이는 강력한 도구입니다.

 

2-1. 제공 및 요구 분리

  • 인터페이스는 시스템이 제공(Provides)하는 서비스와 요구(Requires)하는 서비스를 분리하여 정의합니다.
  • 제공 인터페이스는 “ball” 기호로, 요구 인터페이스는 “socket” 기호로 표현됩니다.

2-2. 서비스 기반 정의

  • 인터페이스는 동작(Operation)을 중심으로 정의되며, 서비스 제공 및 소비의 표준을 설정합니다.

2-3. 포트와 연계

  • 인터페이스는 블록의 포트(Ports)를 통해 연결되며, 포트의 특성을 정의합니다.

2-4. 재사용 가능

  • 정의된 인터페이스는 여러 블록에서 공유 및 재사용할 수 있습니다.

2-5. Block Definition Diagram에서의 역할

  • 구성 요소 간 통신 정의: Interface는 블록 간의 제공 및 요구되는 서비스를 명확히 정의합니다.
  • 표준화된 서비스 제공: 동일한 Interface를 여러 블록에서 사용하여 시스템 간 통신을 표준화합니다.
  • 구획을 통한 세부 정보 제공: Compartment를 사용해 서비스, 속성, 신호 등을 명확히 나눠 기술할 수 있습니다.
  • 포트와의 통합: Interface는 블록의 포트에 연결되어 블록 간 상호작용의 구조를 체계적으로 설계합니다.

3. SysML::Signal Node - 입출력 신호

Signal Nodes는 시스템 또는 블록 간 이벤트 기반 메시지를 모델링하는 핵심 도구입니다. Signal은 비동기적 데이터 전송과 상태 변화 트리거를 효과적으로 표현하며, 시스템 간의 동적 상호작용을 체계적으로 설계할 수 있도록 지원합니다. Signal Nodes를 활용하면 시스템 간 통신을 명확히 정의하고, 이벤트 중심 시스템의 설계를 더욱 정교하게 할 수 있습니다.

3-1. 비동기식 통신

  • Signal은 비동기적(asynchronous)으로 전달되며, 이를 수신하는 블록은 즉시 처리하거나 큐(queue)에 저장할 수 있습니다.

3-2. 속성 포함

  • Signal은 메시지에 포함되는 데이터를 나타내는 속성(Properties)을 정의합니다.
  • 예: 신호 이름, 송신 시간, 상태 정보 등.

3-3. 재사용 가능

  • Signal은 여러 블록 간의 통신에서 재사용될 수 있습니다.

3-4. 이벤트 기반 동작

  • Signal은 시스템 내 특정 이벤트를 트리거하거나 다른 블록에서 상태를 변경하는 역할을 합니다.

3-5. Block Definition Diagram에서 Signal의 역할

  • 시스템 간 메시지 전달: Signal은 시스템 또는 블록 간 데이터를 메시지로 전달하여 상호작용을 가능하게 합니다.
  • 상태 변화 트리거: 특정 Signal은 다른 블록의 상태를 변경하거나 이벤트를 트리거하는 데 사용됩니다.
  • 구조적 설계와 통합: Signal은 포트를 통해 블록 간 연결되며, 이벤트 기반 시스템 설계를 체계화합니다.

3-6. Signal과 다른 모델 요소와의 관계

  • 블록(Block)과의 관계: Signal은 블록 간 이벤트와 데이터를 전달하고, 포트를 통해 Signal의 흐름을 모델링합니다.
  • State Machine Diagram과의 통합: Signal은 상태 전환을 트리거하는 이벤트로 사용될 수 있습니다.

3-7. Signal의 주요 용도

  • 에러 및 상태 보고: ErrorSignal과 같은 신호를 사용하여 시스템 오류 또는 상태 변경을 알림.
  • 이벤트 트리거: 특정 조건에서 다른 블록의 상태 전환 또는 동작을 유발.
  • 데이터 교환: 메시지 기반 데이터 전송을 구현.

4. SysML::Interface Compartment Block Node - 명시적 인터페이스

Interface Compartment는 블록 간의 상호작용과 의존성을 명확히 나타내는 중요한 도구입니다. Compartment를 사용하여 제공 및 요구되는 인터페이스를 체계적으로 표현함으로써, 시스템 설계의 명확성, 재사용성, 및 표준화를 강화할 수 있습니다. Interface Compartment는 특히 서비스 중심 설계(Service-Oriented Design)와 상호작용 모델링에 필수적입니다.

 

4-1. 포트와 연계

  • 블록의 포트가 사용하는 인터페이스를 정의하고, 블록이 제공하거나 요구하는 기능을 나타냅니다.

4-2. 제공 및 요구 분리

  • 제공(Provides) 인터페이스는 prov 키워드로, 요구(Requires) 인터페이스는 reqd 키워드로 표시됩니다.

4-3. 재사용 가능

  • 여러 블록 간 동일한 인터페이스를 재사용하여 모델링의 일관성을 높입니다.

4-4. 서비스 중심 설계

  • 블록이 시스템 내에서 수행하는 역할 및 외부 요소와의 상호작용을 명확히 정의합니다.

4-5. Block Definition Diagram에서 Interface Compartment의 역할

  • 시스템 경계 명확화: Interface Compartment는 블록과 외부 시스템 간의 경계를 명확히 정의합니다.
  • 블록 간 상호작용 모델링: 각 블록이 제공하거나 요구하는 서비스를 나타냄으로써 블록 간의 의존성을 체계적으로 표현합니다.
  • 구조적 설계 강화: 시스템의 구조적 요소와 상호작용 관계를 더욱 명확히 나타낼 수 있습니다.
  • 서비스 재사용 및 표준화: 동일한 인터페이스를 여러 블록에서 공유하여 설계의 재사용성을 높이고, 서비스 정의를 표준화합니다.
728x90
반응형