UML(Unified Modeling Language) 이란 ?

통합 모델링 언어를 사용해 시스템 상호작용, 업무흐름, 시스템 구조 등을 그린 도면이다.
시스템 자체의 산출물의 역할을 시각화한다.
이 과정을 통해 반드시 필요한 행위를 기반으로 한 객체지향 모델링이 가능해진다.
이해 당사자가 서로 커뮤니케이션 할 수 있는 소프트웨어 시스템의 구조와 행위를 정의하고 기술함으로써 보다 빠르고 정확한 플랫폼을 구현할 수 있다. 이런 방식을 MDD(Model-Driven Development) 즉 모델 주도적 개발이라 한다.

* UML 모델링의 이점

  1. 시각화
  2. 이해도
  3. 정확성
  4. 의사전달
  5. 일관성

➡️ 이는 모두 성공적 플랫폼을 구축하기 위함이다.

* UML의 종류

* Usecase diagram

시스템의 행위를 모델링 하며 시스템의 요구 사항을 표현하는데 사용됩니다.
시스템의 상위 레벨 기능과 범위를 기술하며, 시스템이 기능을 어떻게(HOW) 구현할 것인지 기술하지 않는다.
시스템이 어떤 “WHAT”기능이 필요한지에 대해서만 표현한다.

  • 구성 요소
1. 시스템 : 현재 개발할 프로그램.
		  프라이머리 액터(시스템을 사용하는 주체)와 세컨더리 엑터(프라이머리 액터로 시작되어 시스템과 상호작용하는 다른 시스템) 사이의 사각형으로 표시.
          
2. 액터 : 시스템 외부에 존재하며 시스템과 상호작용하는 모든 것.
		 대게 시스템을 사용하는 유저와, 이 때 상호작용되는 다른 시스템이 액터가 될 수 있다.

3. 유즈케이스 : 사용자의 입장에서 바라본 시스템의 추상적인 기능.
			 시스템의 요구사항을 나타내며 타원형으로 표기. 
         
4. 연관관계 : 액터와 유즈케이스 간의 상호작용을 실선으로 표현.

5. 포함관계 : 포함하는 유스케이스에서 포함 되는 유스케이스 방향으로 화살표를 점선으로 연결하고 << include>>라고 표기한다.

6. 확장관계 : 해당 유즈케이스에 부가적인 유즈케이스를 실행 할 수 있을 때의 관계.
            확장하는 유스케이스에서 대상 유스케이스 방향을 점선으로 연결하고 << extend>>로 표기한다.
         

* Activity diagram (활동 다이어그램)

활동 다이어그램은 시스템의 실행과 행위의 흐름을 표현.
비즈니스 프로세스 또는 작업에서 이용하는 고객의 흐름을 표현하는데 적합하다.

  • 과제 : Activity diagram 만들기
  • 후기
    사실 기획자에게 전달 받은 기획안대로 프로그래밍하면 내 역할을 다한 거라고 생각했는데, 직접 다이어그램을 만들고 생각해보니 고려해야할 부분이 더 많았다.
    아직 draw.io에 익숙치 않아서 그냥 손으로 작성해보는게 편하긴 하지만, 직접 마인드맵, 다이어그램으로 만들어보는 것과 무지성으로 코딩하는 것이 퀄이 다른 결과를 만들 것이라는 걸 확실히 깨닫게 되었다 !
    혼자서 프로젝트를 진행할 때에도 다이어그램을 만들어보며 가시화하는 습관을 가져야겠다..!
profile
hi there~!

0개의 댓글