본문 바로가기
백엔드/Java

자바 객체 지향 디자인 패턴 맛보기 1탄

by david100gom 2019. 10. 3.

 

chapter 1. 객체 지향 모델링

1. 모델링

  • 모델의 역할
    1. 서로의 해석을 공유해 합의를 이루거나 해석의 타당성을 검토한다
    2. 현재 시스템 또는 앞으로 개발할 시스템의 원하는 모습을 가시화한다
    3. 시스템의 구조와 행위를 명세할 수 있으며 시승템을 구축하는 틀을 제공한다.
  • 모델은 추상화에 바탕을 두고 만들어져야 한다. 추상화는 대상을 표현할 때 대상의 상세한 면을 있는 그대로 다 표현해 주지는 않는다. 특정 관점에서 관련이 있는 점은 부각시키고, 관련이 없는 면은 무시하는것이 필요하다. 

2. UML

  1. UML은 요구분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서 개발자 사이의 의사 소통이 원활하게 이루어지도록 표준화한 통합 모델링 언어이다.
  2. 종류
    1. 구조 다이어그램(structure diagram)
      1. 클래스 다이어그램 (class diagram)
        • 시스템을 구성하는 클래스들 사이의 관계를 표현한다.
      2. 객체 다이어그램 (object diagram)
        • 객체 정보를 보여준다.
      3. 복합체 구조 다이어그램 (composite structure diagram)
        • 복합 구조의 클래스와 컴포넌트 내부 구조를 표현한다
      4. 배치 다이어그램 (deployment diagram)
        • 소프트웨어 , 하드웨어, 네트워크를 포함한 실행 시스템의 물리 구조를 표현한다
      5. 컴포넌트 다이어그램(component diagram)
        • 컴포넌트 구조 사이의 관계를 표현한다.
      6. 패키지 다이어그램 (package diagram) 
        • 클래스나 유즈 케이스등을 포함한 여러 모델 요소들을 그룹화해 패키지를 구성하고 패키지들 사이의 관계를 표현한다.
    2. 행위 다이어그램 (behavior diagram)
      1. 활동 다이어그램 (activity diagram)
        • 업무 처리 과정이나 연산이 수행되는 과정을 표현한다.
      2. 상태 머신 다이어그램 (state machine diagram)
        • 객체의 생명주기를 표현한다
      3. 유즈 케이스 다이어그램 (use case diagram)
        • 사용자 관점에서 시스템 행위를 표현한다.
      4. 상호작용 다이어그램 (interaction diagram)
        1. 순차 다이어그램 (sequence diagram)
          • 시간 흐름에 따른 객체 사이의 상호작용을 표현한다
        2. 상호작용 개요 다이어그램(interaction overview diagram)
          • 여러 상호작용 다이어그램 사이의 제어 흐름을 표현한다
        3. 통신 다이어그램 (communication diagram)
          • 객체 사이의 관계를 중심으로 상호작용을 표현한다
        4. 타이밍 다이어그램(timing diagram)
          • 객체 상태 변화와 시간 제약을 명시적으로 표현한다.

 

참고서적 : 객체지향 디자인 패턴 (http://www.yes24.com/Product/Goods/12501269))

댓글