SysML
IT위키
더 많은 작업
- SysML; Systems Modeling Language; 시스템 모델링 언어
- 하드웨어·소프트웨어·데이터·사람·설비를 포함한 복잡한 시스템을 명세·분석·설계·검증하기 위한 OMG의 범용 모델링 언어
SysML은 OMG(Object Management Group)가 관리하는 표준으로, 모델 기반 시스템 공학(MBSE, Model-Based Systems Engineering)의 핵심 언어이다. 소프트웨어 중심의 UML로는 요구사항, 물리적 구조, 공학 제약식 같은 시스템 공학 관심사를 표현하기 어려워 만들어졌다. SysML v1은 2007년 9월 1.0이 발행되었고, 마지막 v1 버전은 2024년 6월 채택된 SysML 1.7이다. 차세대 언어인 SysML v2.0은 2025년 6월 OMG에서 채택되었고, 2025년 9월 정식(Formal) 규격이 발행되었다.
| 분류 | 다이어그램 | 약어 | UML 대비 | 용도 |
|---|---|---|---|---|
| 요구사항 | 요구사항 다이어그램 | req | 신규 | 텍스트 요구사항과 그 관계(파생, 만족, 검증, 정제, 추적) 표현 |
| 구조 | 블록 정의 다이어그램 | bdd | 클래스 다이어그램 수정 | 블록과 그 속성·연관·일반화 등 시스템 계층 구조 정의 |
| 내부 블록 다이어그램 | ibd | 복합 구조 다이어그램 수정 | 블록 내부 부품 간 연결, 포트, 흐름(항목 흐름) 표현 | |
| 파라메트릭 다이어그램 | par | 신규 | 제약 블록으로 성능·질량·전력 등 공학 수식과 매개변수 관계 표현 | |
| 패키지 다이어그램 | pkg | 재사용 | 모델 요소를 패키지로 조직 | |
| 행위 | 활동 다이어그램 | act | 수정 | 입력·출력·제어 흐름 기반 행위, 연속 흐름 표현 |
| 시퀀스 다이어그램 | sd | 재사용 | 메시지 교환 순서로 상호작용 표현 | |
| 상태 기계 다이어그램 | stm | 재사용 | 이벤트에 따른 상태 전이 표현 | |
| 유스케이스 다이어그램 | uc | 재사용 | 액터와 시스템이 제공하는 기능 표현 |
요구사항 다이어그램은 구조·행위와 별도의 범주로 분류되며, 다른 다이어그램의 모델 요소와 추적 관계를 맺는다.
요구사항 다이어그램(req)은 글로 쓴 요구사항을 모델 요소로 다룬다. 이 다이어그램이 표현하는 정보는 세 가지이다.
- 개별 요구사항 - «requirement» 사각형 하나가 요구사항 하나이며, 식별자(id)와 본문(text)을 속성으로 적는다
- 요구사항의 계층 구조 - 포함(containment, 원 안에 십자를 그린 끝 기호) 관계로 상위 요구사항을 하위 요구사항으로 쪼갠 트리를 그린다
- 다른 모델 요소와의 관계 - 블록이 요구사항을 만족하는 만족(satisfy), 테스트 케이스가 요구사항을 확인하는 검증(verify), 요구사항끼리의 파생(deriveReqt)·복사(copy), 다른 모델로 구체화하는 정제(refine), 일반 추적(trace)
입력·출력·처리의 흐름은 활동 다이어그램이, 성능·질량·전력 같은 제약 수식은 파라메트릭 다이어그램의 제약 블록이 표현한다. 요구사항 다이어그램은 흐름이나 수식을 그리지 않는다. 파라메트릭 다이어그램은 내부 블록 다이어그램의 특수한 형태로 설명되기도 한다.
- SysML v2는 UML 프로파일이 아니라 KerML(Kernel Modeling Language)을 기반으로 새로 정의된 언어이다. KerML 1.0도 2025년 9월 OMG에서 정식 채택되었다.
- 그래픽 표기와 함께 텍스트 표기를 제공하여 모델을 코드처럼 작성·비교·버전 관리할 수 있다.
- 요구사항, 구조, 행위, 분석, 검증 사례(verification case)를 하나의 모델에서 다룬다.
- OMG는 산업계·학계·정부가 v1에서 v2로 옮겨 가는 동안 SysML v1이 몇 년 더 쓰일 것으로 본다.
- SysML v1의 9개 다이어그램과 UML 대비 신규 2개(요구사항, 파라메트릭)
- 블록 정의(bdd)는 클래스, 내부 블록(ibd)은 복합 구조 다이어그램에서 확장되었다는 점
- SysML v1은 UML 2 프로파일, SysML v2는 KerML 기반이라는 차이
- 요구사항 관계(만족, 검증, 파생, 정제, 추적)
- SysML – OMG
- OMG Systems Modeling Language Version 2.0 – OMG