① 클래스 다이어그램
클래스 다이어그램은 객체 지향 모델링 간 시클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현한 다이어그램이다.
즉, 클래스 간의 관계와클래스의 속성을 표현한다.
◼︎ 클래스 다이어그램 구성 요소
구성 요소 4가지
- 이름
- 속성
- 연산
- 접근 제어자
구성요소 | 설명 |
클래스 이름 (Class Name) | - 클래스의 이름 |
속성 (Attribute) | - 클래스의 특징에 이름을 부여 |
연산 (Operation) | - 클래스에 속하는 객체에 적용될 메서드를 정의 - 클래스가 수행하는 책임 - 클래스의 동작을 의미하여, UML에서는 동작에 대한 인터페이스를 지칭 |
접근 제어자 (Access Modifier) | 클래스에 접근할 수있는 정도를 표현 |
- : 클래스 내부 접근만 허용 (private) | |
+ : 클래스 외부 접근을 혀용 (public) | |
# : 동일 패키지 및 파생 클래스에서 접근 가능 (protected) | |
~ : 동일 패키지 클래스에서 접근 가능 (default) |

1. Animal (부모 클래스)
- 속성 (Attributes):
- age: Int
동물의 나이를 나타내는 정수형 속성. - gender: String
동물의 성별을 나타내는 문자열 속성.
- age: Int
- 메서드 (Methods):
- isMammal(): void
동물이 포유류인지 확인하는 메서드. 반환값은 없으며, 동작은 구체적으로 정의되지 않음. - introduce(String): void
전달받은 문자열을 사용하여 동물을 소개하는 메서드. 반환값은 없음.
- isMammal(): void
2. Duck (Animal을 상속받은 클래스)
- 속성 (Attributes):
- beakColor: String = "yellow"
부리의 색을 나타내는 속성으로, 기본값은 "yellow"로 설정됨.
- beakColor: String = "yellow"
- 메서드 (Methods):
- swim(): void
오리가 수영하는 동작을 구현하는 메서드. 반환값은 없음. - quak(): void
오리가 울음소리("꽥꽥")를 내는 동작을 구현하는 메서드. 반환값은 없음.
- swim(): void
3. Fish (Animal을 상속받은 클래스)
- 속성 (Attributes):
- sizeInFt: Int
물고기의 크기를 나타내는 속성으로, 단위는 피트(ft).
- sizeInFt: Int
- 메서드 (Methods):
- swim(): void
물고기가 수영하는 동작을 구현하는 메서드. 반환값은 없음.
- swim(): void
② 유스케이스 다이어그램
유스케이스 다이어그램은 시스템이 제공하고 있는 기능 및 그와 관련된 외부 요소를 사용자의 관점에서 표현하는 다이어그램이다.
(개발자의 요구를 추출하고 분석하기 위한 것이 아니다 !!!)
◼︎ 유스케이스 다이어그램 구성 요소
구성요소 3가지
- 유스케이스
- 액터
- 시스템

◼︎ 유스케이스 다이어그램 구성 요소 간의 관계
구성요소 간의 관계 4가지
- 연관 관계 (Association)
- 포함 관계 (Include)
- 확장 관계 (Exclude)
- 일반화 관계 (Generalization)

이를 모두 적용한 결과를 보면 아래와 같은 예시가 생긴다.

'CS' 카테고리의 다른 글
[CS] 소프트웨어 설계 - 애자일 방법론 (0) | 2025.01.19 |
---|---|
[CS] 소프트웨어 설계 - UML 다이어그램(시퀀스/상태) (0) | 2025.01.19 |
[CS] 소프트웨어 설계 - UML 기본 개념 (0) | 2025.01.18 |
[CS] 요구사항 분석 기법 - 자료 사전 (DD) (0) | 2025.01.18 |
[CS] 요구사항 분석 기법 - 기본 개념과 DFD (0) | 2025.01.18 |