chapter 02 Class UML graphic Class Diagram Object
chapter 02 : Class 다이아그램
UML 다이아그램 개요 구성요소들의 graphic 표현. 종류 Class Diagram ( 클래스도 ) Object Diagram ( 객체도 ) Use Case Diagram ( 쓰임새도 ) Sequence Diagram ( 순서도 ) Collaboration Diagram ( 협력도 ) State Diagram ( 상태도 ) Activity Diagram ( 활동도 ) Component Diagram ( 컴포넌트도 ) Deployment Diagram ( 배치도 ) 시스템을 여러 관점( view )에서 표현할 수 있다.
Class Diagram Class 명 모든 Class는 다른 Class들과 구별되는 유일한 이름을 갖는다. 단순명 ( Simple Name ) : Class 이름만을 표현. 경로명( Path Name ) : Package명을 포함하여 표현. Simple Name String Student Path Name java : : lang : : String test : : Student
Class Diagram 속성 ( attribute ) 의미 있는 명사형으로 표현. Visibility Name : Type = Default Value Attribute Type Attribute Default Value Attribute Name + : public - : private ( 생략 ) # : protection My. Date - day : int - month : int - year : int = 2007 static
Class Diagram 동작 ( operation ) 의미 있는 동사형으로 표현. Visibility Name (Parameter-List) : Return-Type-Expression {Property-String} Rectangle add ( ) grow ( ) move ( ) is. Empty ( ) My. Date + get. Day ( ) + set. Day (d : int) … My. Date <<constructor>> + My. Date( ) << getter >> + get. Day() <<setter>> + set. Day( d : int ) Stereotype * 스테레오 타입 ( stereotype ) • UML의 한정된 모델요소를 가지고 새로운 어휘를 표현하는 방법.
Class Diagram Nested Class Outer: : Inner Outer + Inner ( ) + get. Inner() + set. Inner() + Outer( ) + get. Inner ( ) + set. Inner( ) Active Class 독자적인 제어흐름을 갖고 프로그램의 실행을 주도하는 클래스. 반대의 클래스를 Passive Class 라고 한다. Test + main( ) Active class
Relation. Ships Abstract class Abstract method Concrete class * Abstract 는 이탤릭체로 표현한다.
Relation. Ships Role name Bidirectional Association Multiplicity
Class Diagram 예시 : 클래스의 관계를 표현함으로써 전체 시스템을 구성하는 구조를 표 현. College name : String address : String phone : String set. Student () get. Student ( ) remove. Student() get. All. Student ( ) set. Department ( ) get. All. Department ( ) remove. Department() Department has 1 1. . * name : String 0. . 1 set. Instructor ( ) remove. Instructor ( ) get. Instructor ( ) 1. . * assigned to 1 member 1. . * Course * Student name : String student. SSN : attends * name : String * course. SSN : String * 1. . * Instructor teaches 1. . * name : String chairperson 0. . 1
공부한 내용 Class Diagram
- Slides: 24