1. UML(Unified Modeling Language)
: 시스템이나 소프트웨어의 개발을 위해 사용되는 시각적 모델링 언어. 일반적으로 객체지향형 소프트웨어 개발에 사용되며 시스템의 구조및 동작, 상호작용등을 모델링하고 문서화 하는 데 사용된다.
2. UML(Unified Modeling Language) 다이어그램
: UML에서 사용되는 시각적 그래픽 표기법. 시스템의 다양한 측면을 나타내는데 사용된다. 소프트웨어 시스템의 아키텍처, 클레스 구조, 객체간의 상호작용, 시퀀스 흐름등을 표현 할 수 있다. 정적인 구조 다이어그램과 동적인 행위 다이어그램이 있다.
2.1. 클래스 다이어그램
: 클래스의 구조와 관계 표현에 사용된다. 클래스, 속성, 매서드 및 클래스간의 관계를 보여준다. 구조다이어그램이다.
- 클래스(Class) : 객체의 탬플릿으로 속성(Attributes)과 매서드 (Methods)로 구성된다. 클래스는 사각형으로 표시되며 이름 위에 위치한다.
- 속성(Attribustes) : 클래스의 특징이나 상태를 나타내는 변수. 속성은 클래스 내부에서 선언되며, 클래스의 이름 아래에 표시된다. 속성은 이름과 타입으로 표시된다.
- 관계(Relationships) : 클래스 간의 관계를 표현한다. 다음과 같은 것들이 있다.
- 연관관계 : 클래스간의 연결을 나타냄. 이는 선으로 표현되며, 연결된 클래스간의 연관이름과 관계다중성을 표시할 수 있음.
- 일반화 관계 : 상속관계를 나타낸다. 빈 화살표로 나타내며 상위 클래스와 하위 클래스간의 구현관계를 표현한다.
- 인터페이스 : 클래스가 구현해야하는 메서드 집합을 나타낸다. 점선으로 표시되며 클래스와 인터페이스간의 구현관계를 표현한다.
2.2. 순서 다이어그램(Sequence Diagram)
: 객체간 상호작용과 메시지 흐름을 순차적으로 표현한다. 시간의 흐름에 따라 객체가 메시지를 주고받는 상호작용을 표현하여 시스템의 동적인 동작을 분석한다. 행위 다이어그램이다.
- 객체(Object) : 시스템 내의 객체를 나타낸다.
- 메시지(Massage) : 객체간의 상호작용을 나타낸다. 메시지는 객체간의 전달되는 요청이나 응답을 의미한다. 메시지는 객체간의 수평선으로 표현되며 화살표로 표시하여 메시지의 방향을 나타낸다.
- 생명선(Lifeline) : 객체의 수명을 나타낸다. 이는 객체의 수직선으로 표현되며, 객체가 생성되어 사용되는 시간을 표시한다.
- 반환 메시지 (Return Message) : 메서드 호출 되 반환되는 값을 나타낸다. 메서드 호출 위치에 점선으로 표현되며 반횐되는 값의 표현이 포함 될 수 있다.
2.3. 활동 다이어그램(Activity Diagram)
: 시간적 흐름과 제어 흐름을 시각적으로 표현한다. 작업의 흐름이나 의서결정, 병렬 처리 등을 표현할 수 있다. 상태 다이어그램과 차이점으로는 시스템의 전체 흐름을 표현한다는 점으로 상태 다이어그램은 하나의 객체의 흐름을 나타낸다.
2.4. 상태 다이어그램 (State Diagram)
: 객체의 생명주기와 상태전이를 나타낸다. 객체의 상태, 이벤트, 상태전이조건 등을 표시한다.
2.5. 컴포넌트 다이어그램 (Component Diagram)
: 컴포넌트간의 의존성을 표현하는데 사용됨. 주로 시스템의 구성요소, 모듈, 라이브러리, 패키지 등을 시각적으로 표현하여 시스템의 구조를 모델링 하고 분석하는데 활용된다.
2.6. 배치 다이어그램 (Deployment Diagram)
: 시스템의 물리적인 배치구조를 표현하는데 사용된다. 하드웨어, 소프트웨어 컴포넌트, 네트워크 등을 표현한다.
2.7 유즈케이스 (Use Case Diagram)
: 사용자(액터)와 시스템 간의 상호작용을 표현하여 시스템이 어떻게 사용되는지를 보여준다. 소프트웨어 개발의 초기 단계에서 요구사항을 모델링하고 설계하는 데 유용하게 활용된다.
유스케이스 다이어그램은 다음과 같은 요소로 구성된다
- 액터(Actor): 시스템과 상호작용하는 외부 역할이나 사용자를 나타낸다. 액터는 주로 사람, 다른 시스템, 외부 장치 등으로 표현된다.
- 유스케이스(Use Case): 시스템이 제공하는 기능이나 작업을 나타낸다. 각 유스케이스는 시스템과 액터 간의 상호작용을 표현하며, 시나리오라고도 불리는 특정한 동작의 시퀀스를 포함할 수 있다.
- 관계(Relationship): 액터와 유스케이스 간의 관계를 나타낸다. 주요한 관계 유형으로는 포함(Include), 확장(Extend), 일반화(Generalization) 등이 있다. 포함 관계는 한 유스케이스가 다른 유스케이스를 포함하는 관계를 의미하고, 확장 관계는 유스케이스의 확장 기능을 나타낸다. 일반화 관계는 유스케이스 간의 계층 구조를 표현한다.
2.8. 패키지 다이어그램(Package Diagram)
: 소프트 웨어 시스템의 구성요소를 패키지로 표현하는 다이어그램. 소프트웨어의 모듈화, 구성요소 관계, 의존성 등을 시각적으로 표현한다.
'study' 카테고리의 다른 글
정보공학 개발 방법론, Entity-Relationship Diagram(ERD) (0) | 2023.06.22 |
---|---|
Extreme Programming (XP. eXtreme Programming) (0) | 2023.06.22 |
메시지 지향 미들웨어(message-oriented middleware. MOM) (0) | 2023.06.22 |
해시 기초 (0) | 2023.04.25 |
IQ Spoofing페이지 로그인 취약점 찾기1_쿠키 변조 (0) | 2023.04.12 |