UML (Unified Markup Language)
- 소프트웨어를 개발하는 과정에서 데이터와 업무처리를 모델링하기 위한 표준
- 80년대와 90년대 초 출현한 객체지향 분석설계(OOAD) 방법론의 통합안
UML의 목적
- 의사소통
- 객체지향 시스템의 이점을 살려 디자인
- 도메인 전문가와 대화
쓰임새도
행위자
- 쓰임새를 수행 또는 시스템과 상호작용하는 것
- 시스템 사용자의 역할
- 시스템의 사용자 또는 외부 시스템
쓰임새
쓰임새들간의 관계
- 포함: 동일한 행동을 다수의 쓰임새에서 공유하여 사용
- 일반화: 한 쓰임새가 다른 쓰임새와 유사하나 그 이상의 일을 수행하는 경우 사용
- 확장: 기본 쓰임새의 행동에 추가(확장점 필요)
활동도
구성요소
활동
전이
분기 (↔ 병합)
- 경제조건에 따라 서로 배타적인 전이들 중 하나를 따라 수행
분할
합류
활동도의 활용
- 병렬 행동을 표현 또는 업무를 병렬 행동화하기에 유리
- 활동과 객체간의 연결이 불명확
- 활동도의 좋은 응용
- 쓰임새 분석
- 워크플로우 이해
- 알고리즘 순차설명
- 다중 쓰레드 기술
- 활동도가 부적합한 경우
- 객체간 교류
- 객체의 생명주기
- 복잡한 조건 로직
구획면
순차도
- 생명선(점선) 위에 사각형으로 활성 표시
- 메시지는 활성간의 화살표로 표시
- 메시지 발생순서는 위에서 아래
- 자체호출
- 조건
- 반복표시자
- 리턴
- 전달된 메시지로부터 리턴되는 정보
순차도 - 동시 프로세스
- 순차도는 동시 프로세스를 기술하기 유리
- 비동기 메시지
- 반쪽 화살표로 표시
- 호출자는 return을 대기하지 않음
- 새로운 쓰레드 생성
- 새로운 객체 생성
- 이미 실행중인 쓰레드와 대화