[ Keyword(키워드) ]
▪ 심볼이 너무 많으면 사용자가 모든 심볼의 의미를 기억하기가 아주 힘들다.
▪ UML을 사용할 때는 종종 심볼의 개수를 줄이고 대신 keyword를 사용한다.
▪ 비슷하지만 다른 요소들을 구분할 때 사용된다.
[ Aggregation(집합) : has a ]
▪ ‘일 부분이 되는’ 관계
▪ 집합 클래스는 여러 개의 part를 가질 수 있다.
[ Composition(합성) : is a ]
▪ 집합과 비슷 하지만 한 part는 오직 하나의 composite에만 속한다.
▪ ‘공유 불가’의 규칙이 합성의 핵심이다.
▪ 만약 composite가 삭제되면 그것의 부품도 삭제된다.
[ Abstract Class(추상 클래스) ]
▪ 직접 인스턴스화 될 수 없는 클래스이다. 대신 하위 클래스의 인스턴스를 생성한다. 전형적으로 추상 클래스는 한 개 이상의 추상 오퍼레이션을 가진다.
▪ 추상 오퍼레이션은 구현을 가지고 잇지 않다. 이것은 클라이언트와 추상 클래스를 연결하는 순수한 정의다.
▪ 이텔릭체로 사용한다.
[ Interface(인터페이스) ]
▪ 구현이 없는 클래스이다. 즉, 모든 기능이 추상이다.
▪ 인터페이스는 C#과 JAVA의 인터페이스와 직접 대응되며 다른 typedef language에서도 흔한 용어이다.
▪ 클래스는 인터페이스에 대해서 Providing(제공하는)과 Requiring(필요로 하는) 두 가지 관계를 가진다.
- 클래스가 인터페이스를 대신할 수 있는 경우, 그것은 인터페이스를 제공하는 클래스이다. 클래스가 인터페이스를 구현하거나 인터페이스의 하위 타입을 구현하는 경우 클래스가 인터페이스를 대신할 수 있다.
- 작동을 하기 위해서 인터페이스의 인스턴스가 필요하다면 그것은 인터페이스를 필요로 하는 클래스이다. 필수적으로 이 클래스는 인터페이스에 종속된다.
- 인터페이스를 사용함으로써 나중에 필요할 때에 구현을 더 쉽게 바꿀 수 있는 장점이 있다.
[ Visibility(가시성) ]
▪ 클래스요소들의 접근도를 표현한 것
- private(-) : 클래스 내에서만 가능
- public(+) : 시스템 내에서 사용 가능
- Protected(#) : 상속 트리 내에서만 사용 가능
- Package(~) : 같은 패키지 내에서만 사용 가능
댓글이나 공감 남겨주는 사람 착한사람
'학사 그리고 석사 > 소프트웨어공학' 카테고리의 다른 글
Deployment Diagram(배치다이어그램) (0) | 2019.11.06 |
---|---|
Package Diagrams (패키지 다이어그램) (0) | 2019.11.06 |
UML 이란 (0) | 2019.11.06 |
Test-Driven Development(TDD) (0) | 2019.11.06 |
Software Testing (0) | 2019.11.06 |