성공과 실패를 결정하는 1%의 객체 지향 원리(Akira Hirasawa 저, 이길섭, 신동완 역, 성안당)를

바탕으로 기억해두고 싶은 내용 정리한 것임.


  • 프로그램을 표현하는 기술
  • 형태가 없는 소프트웨어를 보는 도구
  • 프로그램의 구조와 동작을 표현하기 위해 사용되는 대표적인 다이어그램 - 클래스 다이어그램, 시퀀스 다이어그램, 커뮤니케이션 다이어그램
  • 클래스 다이어그램
    • 집합론으로 분류, 정리된 현실 세계 사물의 관계를 표현
    • 정적인 정보를 표현한다.
    • 프로그램이 실행될 때의 구조 표현(클래스의 정의 정보와 클래스 간의 관계 표현)
  • 시퀀스 다이어그램, 커뮤케이션 다이어그램
    • 역할 분담 표현, 프로그램의 움직임을 표현한다.
    • 동적인 정보를 표현한다.
    • 상위 공정에서 '정해진 역할을 갖는 복수의 사람과 조직이 협조해서 전체의 일을 달성하는 모습'의 표현에 사용 가능
    • 시퀀스 다이어그램

사진 출처

      • 실행될 경우에 인스턴스 간의 메소드 호출을 시계열로 표현한다.
      • 역할 분담된 사람과 조직이 협력해서 전체의 일을 달성하는 모습을 시계열로 표현한다.
      • 시퀀스 다이어그램 모델링 하기
    • 커뮤니케이션 다이어그램
      • 실행될 경우에 인스턴스 간의 메소드 호출을 인스턴스의 관계 중심으로 표현한다.
      • 역할 분담된 사람과 조직이 협력해서 전체의 일을 달성하는 모습을 구조 중심으로 표현한다.
  • 유스케이스 다이어그램
    • 컴퓨터가 수행하는 일의 범위를 명확하게 표현한다.
    • 즉, 시스템의 전체 모습을 개략적으로 파악하는 데 유용한 다이어그램이다.
  • 액티비티 다이어그램
    • 프로그램의 논리를 기술하기 위해 사용한다.
    • 현실 세계의 업무 흐름을 표현할 목적으로 종종 사용한다. 
    • 시퀀스 다이어그램과 커뮤티케이션 다이어그램으로 표현 가능하지만, 실제로 일의 모습을 분석할 때는 통상 등장 인물의 역할 분담보다도 전체의 흐름을 이해하는 데 중점을 두기 때문에 직감적으로 표현 가능한 액티비티 다이어그램을 이용한다.
  • 스테이트 머신 다이어그램
    • 외부로부터의 이벤트에 의해 사물의 상태가 변화해 가는 모습을 표현한다.

언어

자연언어

컴퓨터용 언어

(프로그래밍 언어, 식자 언어)

모델링 언어(UML)

목적

인간끼리의 의사 소통

컴퓨터에 일을 지시

인간끼리의 의사 소통

형식

음성, 문자

문자

그림

특징

기본적인 문법은 있지만 상세함은 느슨함. 같은 언어에도 방언이 허락된다.

상당히 엄격

직감적으로 이해하기 쉬움을 중시


+ Recent posts