ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • UML 모델 (Unified Modeling Language)
    정보처리기사/개념 2024. 5. 13. 12:37

    ▤ 목차

       

       

      ✔ UML

      ⌨ UML 이란?

      요구분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서 개발자간의 의사소통을 원할하게 하기 위해 표준화한 모델링 언어를 말한다.

       

      💻 특징

      • 가시화 언어
      • 구축 언어
      • 명세화 언어
      • 문서화 언어

      개념 모델을 작성함에 있어서 오류없이 전달하며 의사소통을 원활하게 하기 위한 언어

      다양한 언어와 연결되어 구현 단계에서 자바와 같은 언어로 구현이 가능하다.

      정확한 모델을 제시하고 분석, 설계의 결정을 표현한다. "완전한 모델"을 작성하여 명세화한다.

      시스템에 대한 통제, 평가, 의사소통에 대한 내용을 문서화해야한다.

       

       

      👏 구성요소

       

      [ 사물 things ]

      추상적인 개념으로 주제를 나타내는 요소이다.

      단어 관점에서 명사 또는 동사를 의미한다.

       

       

      [ 관계 Relationships ]

      사물의 의미를 확장하고 명확히 하는 요소이다.

      사물 사물을 연결하여 관계를 표현하는 요소이다.

      단어 관점에서 형용사 또는 부사를 의미한다.

      연관, 집합, 포함, 일반화, 의존, 실체화 관계 등이 있다.

       

      연관 (Association Relationship) 소유의 관계
      사람은 사물의 존재를 알고 접근이 가능하지만 사물은 사람의 존재를 모른다.
      사람은 Heap 메모리 주소를 참조변수로 갖고 있어 접근이 가능하다.
      두 클래스 간의 연결과 호작용을 한다.
      집합 (Aggreagation Relationship ) 독립적인 사물이 독립적인 다른 사물을 포함하는 관계.
      컴퓨터와 프린터
      컴퓨터가 다양하게 바뀌어도 프린터는 어디든 포함 가
      포함 (Composition Relationship ) 두 사물이 종속적인 관계
      문과 열쇠
      문이 바뀌면 열쇠도 필요없다.
      일반화 (Generalization Relationship) 상위 개념과 하위개념이다.
      옷과 상의, 하의
      상속의 관계를 나타낸다.
      의존 (Dependency Relationship) 한 사물이 다른 사물에게 필요할 때만 영향을 주는 관계
      등급과 할인
      한 사물의 명세가 바뀌면 다른 사물에도 영향을 준다.
      일반적으로 한 클래스가 다른 클래스를 오퍼레이션의 매개변수로 사용하는 경우.
      실체화 (Realization Relationship) 공통된 기능을 그룹화하는 관계
      '울수있다' 와 사람, 동물
      인터페이스 구현 관계를 나타낸다.

       

       

      [ 다이어그램 Diagrams ]

      사물과 관계를 모아 그림, 도형으로 표현한다.

       

       

       


       

       

       

       

      ✔ 다이어그램(Diagram)

      다이어그램이란 사물하고 관계를 도형으로 표현하는 것을 말한다.

      소트프웨어를 개발할 때, 요구사항을 명확하게 하기 위해서 다이어그램을 그리는게 유리하다.

      구조적 다이어그램 행위적 다이어그램, 상호작용 다이어그램
      정적 모델링 동적 모델링
      컴포넌트, 복합체구조, 클래스, 패키지, 객체 유스케이스, 스테이트, 액티비티, 시퀀스 ..

       

       

      구조 다이어그램(Steuctural)

      1. class : 시스템 내 클래스들을 정적 구조로 표현한다.
      2. object : 클래스의여러 객체 인스턴스를 나타내는 대신 실제 클래스를 사용한다.
      3. component : 코드 컴포넌트에 바탕을 둔 코드의 물리적 구조 표현
      4. depolyment : 시스템 H/W와 S/W간의 물리적 구조를 표현한다. 
      5. package : 시스템 계층적으로 구조를 표현한다.
      6. composite structure : 전체 클래스 안에 각 컴포넌트 클래스 표현

       

       

      💻 행위 다이어그램(Behavioral)

       

      1. use case : 사용자 입장에서 본 시스템의 행동 표현
      2. state : 클래스 객체가 가질 수 있는 모든 가능한 상태와 상태간의 전이 표현(상태 변환을 나타낸다.)
      3. activity : 행위의 순서적 흐름을 표시

       

       

       상호작용 다이어그램

      1. sequence : 객체와 객체간의 상호작용을 메세지 흐름으로 표시
      2. communication : 상호작용에 참여하는 객체/컴포넌트 간의 관계를 명시적으로 표현
      3. interaction overbiew : 활동 다이어그램과 시퀀스다이어그램을 혼합
      4. timing : 시간적 제약과 객체상태 변화를 표현한다.

       

       

    Designed by Tistory.