본문 바로가기
까망 동네/OOAD & UML

[UML] Class Diagram

by 까망 하르방 2024. 10. 17.
반응형

클래스 다이어그램 Class Diagram

클래스 내부 구성요소 및 클래스 간 관계 도식화
시스템 내 클래스 간의 의존성 파악하기 용이

Class 다이어그램 작성 방법Class 다이어그램 예시


• 보통 getter/setter는 생략하는 편
• [클래스명] → [속성, 클래스 특징과 변수] → [기능, 메서드] 순서
• 필드 변수는 접근제한자, 변수명, 반환형 순으로 표기
 + : public (default for operation)
 - : private (default for attribute)
 # : protected
 ~ : package
 / : 값을 직접 넣는게 아니라 계산되는 값 
 name : 소문자로 시작
 type : String / int / Date 등 또는 Class 이름 등
 << >> 와 같은 형태로 enum, 인터페이스나 추상 클래스 표기

 

 

[예시] Class 다이어그램

클래스 다이어그램 예시

 

Student가 여러 Professor를 가질 수 있다.

Student Class 안에 'lecturer' 속성을 표기하면 되지만

Professor 클래스 옆에 표기할 수도 있다.

(양쪽에 모두 표기할 수도 있다.)

 

클래스 다이어그램 예시

 

위와 같은 경우 Register Class가 3개의 private 속성을 가지고 있다.

일반적인 변수(id)는 박스안에 표시하고

Reference 필요할 때 대상 Class 옆에 표기하는 방식도 있다. (currentSale, location)

이 경우, 클래스 다이어그램이 복잡하면 선을 따라 분석해서 어려워질 수도 있다.


 

관계 표현

Class 다이어그램 관계 표현
Class 다이어그램 관계 예시Class 다이어그램 다중성
Class 다이어그램 관계 예시



[예시] 집약 관계

클래스 다이어그램 집약 관계 예시클래스 다이어그램 집약 관계

 

B가 A를 가지고 있다.

LabClass에서 여러 학생을 가질 수 있다. (LabClass가 없을 수도 있다.)

Study Program에 여러 Course가 존재할 수 있다.

 

 

[예시] 비행기 예약 시스템

Customers는 [비행기 검색], [예약], [탑승권 구매], [좌석 구매]를 순차적으로 해야 한다.
탑승권 구매는 은행을 통해 검증되어야 한다.

Class 다이어그램 비행기 예약시스템

반응형

'까망 동네 > OOAD & UML' 카테고리의 다른 글

[OOAD] UP Inception 단계  (1) 2024.10.20
[OOAD] UP Elaboration 단계 - OOD  (1) 2024.10.19
[OOAD] UP Elaboration 단계 - OOI  (1) 2024.10.15
[OOAD] UML이란  (1) 2024.10.14
[OOAD] UP - Elaboration 단계  (1) 2024.10.13

댓글