SW개발 지식 쌓기

[ UML ] 클래스 다이어그램(Class Diagram) 이론 본문

Enterprise Architect/UML 이론

[ UML ] 클래스 다이어그램(Class Diagram) 이론

bykitty 2019. 2. 26. 22:08
반응형

n  Class Diagram

클래스 다이어그램은 모델을 구성하는 시스템과 사물의 논리 구조를 작성한다

클래스 수행하는 방법보다, 어떤 것이 존재하고 어떤 속성과 동작 설명을 하는 정적 모델이다

클래스 다이어그램에 각각 상속, 구성 또는 동작의 가치가 일반화, 연관 및 관계 그리고 연결을 사용하는 클래스와 인터페이스 사이의 관계를 설명 할 수 있다.

 

도구 상자의 클래스 페이지에서 클래스 다이어그램 요소 및 커넥터를 생성한다.

 

l  Example Diagram

 

   이 예제의 클래스 다이어그램에서, 연관 관계의 두 가지 형태가 있다.

 

u  평범한 형태는 클래스 AccountAddress Book을 사용하는 것이지만, 반드시 Address Book을 포함하지 않는다.

 

u  검정 복합 관계 양식 소스 클래스의(다이아몬드 끝) 대상 클래스에 의해 소유권 또는 포함을 나타낸다.

 

 

  • 클래스 다이어그램은 모델을 구성하는 시스템과 사물의 논리 구조를 작성한다.

  • 각 클래스의 속성과 동작 설명을 하는 정적 모델이다.

  • 클래스 다이어그램에 각각 상속, 구성 또는 동작의 연관 관계 그리고 클래스와 인터페이스 사이의 관계를 설명할 수 있다. 

 

  • 클래스는 클래스의 이름과 선택적으로 함수 및 변수의 이름을 나타내는 직사각형으로 표시된다.

  • 구분선은 클래스 이름, 함수 및 변수를 나누는 데 사용된다.

  • 함수 또는 변수 이름 앞에 오는 표기법은 가시성을 나타낸다. (+: public, -: private, #: protected, ~: package)

 

  • 인터페이스는 구현자가 충족하기로 하는 행동의 명세이다.

  • 시스템에서 비 관련 요소를 동일한 방식으로 처리 할 수 있다.

  • 인터페이스는 클래스와 비슷한 스타일로 그려 질 수 있고, 명시적인 작업이 상세화 되지 않은 원으로 그려질 수 있다.

 

  • 이 커넥터에는 각 끝의 명명된 역할, 방향 및 제약 조건이 포함될 수 있다.

  • 연관은 요소 간의 일반적인 관계 유형이다.

  • 클래스 아이ㅓ그램에 대한 코드가 생성되면 명명된 연관 끝은 대상 클래스의 인스턴스 변수가 된다.

  • 위의 예제에서 "playsFor"는 "Player" 클래스의 인스턴스 변수가 된다.

 

  • 상속을 나타내기 위해 일반화가 사용된다.

  • 특정 분류자로 부터 일반적인 분류자로 그려지는 일반화된 추상화는 대상의 특성을 상속 받는다.

  • "Shape" 클래스는 추상이며 이텔릭체로 표시된는 이름으로 표시된다.

  • 위의 다이어그램은 동일한 정보를 다른 방법으로 보여준다.

 

  • 집합은 더 작은 구성 요소로 구성된 요소를 묘사하는 데 사용된다.

  • 집합 관계는 대상 또는 상위 클래스를 가리키는 흰색의 다이아몬드 모양의 화살촉으로 표시된다.

  • 더 강력한 형태의 응집은 검은색 다이아몬드 모양의 화살촉으로 표시되며 구성 요소가 한 번에 최대 하나의 구성에 포함될 수 있는 곳에서 사용된다.

  • 복합 집계의 상위 클래스가 삭제되면 일반적으로 모든 연결이 함께 삭제된다.

  • 위의 그림에서 "AddressBook"을 삭제하면 모든 "Contract"와 "ContractGroup"도 삭제된다.

  • "ContractGroup"을 삭제하면 "Contact"는 삭제되지 않는다.

 

l  Class Diagram Element Toolbox Items

Icon

Description

 

패키지는 사업 내용을 구성하는 데 사용되지만, 도면 상에 첨가 할 때 또는 구조적 관계 묘사를 위해 사용될 수 있다.

 

클래스는 시스템 내의 구조와 같은 개체의 동작을 반영하는 개체 유형의 표시이다.

 

인터페이스는 구현한 것이 만나는 것에 동의하는 동작 (또는 계약)의 사양이다.

 

데이터 유형은 데이터 종류가 없는 자신의 하위 데이터 유형 및 데이터 유형의 인스턴스가 자신의 값에 의해서만 식별될 수 있다는 점을 제외하고 클래스와 비슷한 분류의 특정 유형이다.

 

열거는, 사용자 정의 열거 리터럴의 숫자 중 하나가 될 수 있는 데이터 타입이다.

 

모든 관련 하위 구조 없이 미리 정의된 데이터 타입을 식별한다

 

테이블은 일반적으로 데이터 모델링에 사용되는 박힌 클래스이다.

 

신호 요청 인스턴스는 일반적으로 클래스 또는 패키지 다이어그램, 객체 간의 통신 전송의 사양이다.

 

N 차 관계 요소는 일반적으로 클래스 다이어그램에서, 셋 이상의 요소 간의 복잡한 관계를 모델링 하는데 사용된다.

 

l  Class Diagram Connector Toolbox Items

Icon

Description

 

연관은 두 모델 요소의 관계가 일반적으로 하나 또는 두 클래스의 인스턴스 변수로서 구현을 의미한다.

 

일반화는 상속을 나타내는 데 사용된다.

 

일반적으로 클래스 또는 패키지 도면에서 작은 구성 요소로 구성하는 요소를 묘사하기 위해 사용된다.

 

연관 커넥터는 연관의 구성되는 요소 또는 다른 요소의 구성을 보여주는 타입이다.

 

연관 클래스는 조작(기능)을 가지고 연결을 가능하게 하는 UML 구조이다.

 

어셈블리 커넥터는 일반적인 구성 요소 다이어그램에서, 또 다른 구성 요소의 제공 인터페이스 구성 요소의 필수 인터페이스를 연결한다.

 

소스 객체가 구현 또는 대상 객체를 실현한다.

 

바인딩 클래스 및 매개 변수가 있는 클래스 사이의 커넥터를 바인딩 하여 템플릿을 만들 수 있다.

 

중첩 커넥터 봉쇄를 표현하거나 다른 요소 내의 요소의 중첩에 대한 대안 그래픽 표기법이다.

 

패키지 도면에서, 패키지 병합 대상 패키지의 콘텐츠 소스 패키지들과 병합함으로써 두 패키지들 사이의 관계를 나타낸다.

 

소스패키지에서 내용이 포함된 패키지까지 그려진다.

 

다른 수준 또는 다른 관점에서 다른 개념을 대표하는 두 요소 사이의 관계이다.

 

대체 분류가 계약 분류에 의해 지정된 계약을 준수 함을 의미하는 두 개의 분류기 사이의 관계이다.

 

하나의 요소가 작업의 전체 구현을 위한 다른 요소를 필요로 하는 클래스 다이어그램의 관계이다.

 

 

 

반응형