PE Notes · SW
UML 다이어그램
구조와 행위로 UML 다이어그램을 가르고, 클래스 관계의 강도·유스케이스 include/extend, 시퀀스·활동·상태의 쓰임을 비교합니다.
화면 하나와 모듈 열이 같이 움직이면, 말로만 경계를 합의하기 어렵습니다. 은 그 경계를 그림으로 고정하는 표준 모델링 언어입니다. OMG가 관리하고 2.x가 현행입니다. Booch·OMT·OOSE가 1997년 전후로 한 표기법으로 모였습니다. 의 아키텍처 뷰를 그릴 때도 같은 선을 씁니다.
구조와 행위
구조 다이어그램은 시간이 멈춰 있을 때의 부품입니다. 클래스·컴포넌트·배포가 대표입니다. 행위 다이어그램은 시간이 흐를 때의 상호작용입니다. 유스케이스·시퀀스·활동·상태가 대표입니다.
의 칸은 이름·속성·연산입니다. 가시성은 + 공개, - 비공개, # 보호, ~ 패키지입니다. 다중성은 1, 0..1, 0..*, 1..*입니다.
관계는 세기가 다릅니다. 의존은 잠시 빌려 쓰는 화살, 연관은 알고 지내는 실선입니다. 은 빈 마름모로 그리는 전체-부분이고, 부분은 전체 없이도 살아 있습니다. 은 채운 마름모이고 전체와 부분의 수명을 같이 둡니다. 는 빈 삼각형의 is-a, 실체화는 점선 삼각형의 인터페이스 구현입니다. 강도는 의존, 연관, 집합, 합성 순으로 세집니다. 코드의 상속 대 조합 선택과 같은 축입니다.
유스케이스와 시간 그림
는 액터와 타원, 시스템 경계입니다. «include»는 반드시 끼는 공통 조각, «extend»는 조건이 맞을 때만 붙는 확장입니다. 요구 범위를 합의할 때 먼저 그립니다.
는 생명선과 활성화 상자, 메시지 순서입니다. 동기·비동기·반환·자기 호출을 화살 모양으로 가릅니다. 화면 패턴의 컨트롤러가 모델·뷰를 부르는 순서를 여기 올립니다.
활동은 업무 흐름입니다. 시작점, 결정 마름모, 갈림·합류 막대, 종료입니다. 수영 레인은 누가 그 일을 맡는지를 가로로 나눕니다. 상태는 한 객체의 자리 이동입니다. 전이는 이벤트 [가드] / 액션입니다. 주문 대기→결제→배송처럼 객체가 머무는 칸을 그립니다.
| 목적 | 다이어그램 |
|---|---|
| 사용자와 기능 범위 | 유스케이스 |
| 타입·관계 | 클래스 |
| 메시지 순서 | 시퀀스 |
| 업무 절차 | 활동 |
| 객체 상태 | 상태 |
| 모듈·배포 | 컴포넌트·배포 |
답안은 구조/행위 이분, 관계 네 단계 세기, include는 의무·extend는 선택, 시퀀스는 시간 축을 한 장에 고정합니다.