UML

모델: 대상물을 알기 쉽게 표현하는 것. 다이어그램 모델링: 많은 정보를 간결한 형태로 전달할 수 있고, 오해를 줄일 수 있음.

  1. 유즈 케이스: 시스템과 이용자 그리고 서비스간의 관련성과 규모 확인으로 개발기간 파악이 가능하며 기능 누락 방지.
    • 액터의 일반화(Generalization): 일반 회원 자격에 특별 서비스를 이용할 수 있는 특별 회원 자격을 추가.
    • 포함 관계: 어떤 유즈케이스가 다은 유즈 케이스를 이용하는 경우. ex) 차량 렌탈시 회원 여부 조회.
    • 확장 관계: 서비스 이용료를 지불을 카드 혹은 현금등으로 방법이 확장할 수 있음.
    • include: 베이스가 되는 유즈케이스가 서브 루틴을 호출. ex) 서비스전에 회원여부 확인
    • exclude: 베이스 유즈케이스에 부가하는 서비스. ex) 서비스이용을 위한 지불방법 선택
    • 일반화 관계: 기능을 추가하는 것이 아니라 개념만 공유할 뿐, 완전히 새로운 유즈케이스를 정의.
  2. 클래스 다이어그램
    • 클래스: 오브젝트의 사양 = 개념(인식 단위)
    • 인스턴스: 클래스로 부터 생성된 오브젝트 실체
    • 관련: 의미가 있는 클래스를 연결(속성과 동일하게 취급). 어떤 상점과 사람간에 관련(회원이 됨)이 존재할 때 회원 가입 약관이 존재.
    • 집약: 다이아몬드가 붙어 있는 쪽이 전체를 나타내고 반대가 전체의 일부분. 전체를 나타내는 오브젝트와 부분을 나타내는 오브젝트의 라이브 사이클은 일치하지 않고 부부능ㄹ 나타내는 오브젝트가 전체를 나타내는 오브젝트로부터 복수로 공유 가능.
    • 일반화(계슨): 삼각형이 붙은 쪽이 슈퍼 클래스(일반, 인터페이스, 템플릿), 반대가 서브 클래스(특수)
    • 개념도: 지금부터 만들려고 하는 시스템과 영역에 어떤 개념이 존재하는지와 어떤 구조를 갖는지 나타냄.
    • 분석 모델: 요건으로 정의된 시스템을 구현하기 위해 무엇이 필요한가를 나타냄.
    • 설계 모델: 시스템 구축방법을 나타냄.
  • 속성의 초기값: =으로 값 지정
  • 가시성: +: public, # protected, -: private, ~: package
  • 의존 관계(dependencies): 화살표가 가리키는 쪽이 기능 제공, 화살표 시작점이 이용측. 어떤 조작 내에서만 유효함(일시적 이용)
  • 제한자: hashtable처럼 key로 value를 특정지음
  • 유도 가능성: a->b a에서 b로 메시지를 보낼 수 있지만, 반대는 불가.
  • 콤포지션: 닫힌 다이아몬드가 표시된 쪽이 전체. 집약보다 강력. 전체를 나타내는 오브젝트와 부분을 나타내는 오브젝트의 라이프 사이클이 일치. 부분을 나타내는 오브젝트가 전체를 나타내는 오브젝트로부터 복수로 공유 불가.
  • 추상 클래스: 정의로는 존재하지만(일부 재정의 필요) 인스턴스는 생성 불가.
  • boundary: 시스템과 외부 연결부, 데이터 입출력, 장치 제어
  • control: 처리 순서를 주관, 업무나 데이터 흐름 제어, 화면 이동 처리
  • entity: 정보 표시, 데이터 처리

Comments

  Write a comment ...
-->