🧩 객체지향 모델링
객체지향 개념은 실세계의 사물과 개념을 객체로 정의하여 표현하고자 하는 시도다.
객체 지향의 특징
클래스와 오브젝트
클래스는 실세계의 사물을 정의하기 위한 틀을 제공한다.
클래스로부터 생성되는 인스턴스가 객체(오브젝트)다.
캡슐화와 정보 은닉
클래스는 속성과 연산으로 정의, 포장된다. 이렇게 포장하는 것을 캡슐화라고 한다. 캡슐화로 인해 클래스의 속성과 연산은 감춰지고 꼭 필요한 최소한읭 정보만 외부에 공개된다.
상속
기존 클래스(부모 클래스, 슈퍼클래스)의 속성과 메서드를 자식 클래스(파생 클래스, 서브클래스)가 물려받아 재사용하고 확장한다.
다형성
클래스에 정의된 요소들은 실제 클래스의 오브젝트가 사용되는 시점에서 행위가 결정된다.
📐 UML 모델링 언어
UML은 Unified Modeling Language
의 약자로 7개의 구조 다이어그램과 7개의 행위 다이어그램으로 이루어져 있다.

출처
개발 수명 주기별 다이어그램
분석 단계
- Use Case 다이어그램: 시스템을 사용하는 사용자의 상호 작용을 표현
- Class 다이어그램: 클래스, 인터페이스의 관계를 표현
- Sequence 다이어그램: 객체들이 주고 받는 메세지들의 시간 흐름과 순서에 초점을 맞춰 상호작용을 표현
설계 단계
- package 다이어그램: 여러 객체를 그룹화한 패키지들의 관계를 표현
- Timing 다이어그램: 각 신호들이 시간별로 처리되는 과정을 표현
- Sequence 다이어그램: 객체들이 주고 받는 메세지들의 시간 흐름과 순서에 초점을 맞춰 상호작용을 표현
- Deployment 다이어그램: 결과물, 프로세스, 컴포넌트 등의 물리적인 배치와 구성을 표현