TIL(Today I Learned)_230913

Aspyn Choi·2023년 9월 13일
0

TIL

목록 보기
37/37

☝🏻오늘 배운 것

1. UML

모델링

: 모델을 만드는 작업을 뜻함. 즉, 현실 세계를 단순화 시켜 표현하는 기법

모델링의 필요성

  1. 의사소통 하기 좋다
    다양한 형태들의 모델을 가시화 시켜 고객-개발자, 개발자-개발자 간의 의사소통을 원활히 하며
    요구사항에 부합한 시스템을 개발할 수 있도록 해줌

  2. 대규모 프로젝트 구조의 로드맵(길잡이)을 만들 때 유용하다
    로드맵을 통해 클래스와 클래스 간에 의존하는 관계 등을 개발자가 빨리 파악 가능

  3. 개발할 시스템 구축에 대한 기초를 마련할 수 있다
    프로세스 과정 상 분석/설계 후 구현단계로 진행하게 되는데
    모델링 단계에서 만들어낸 산출물을 통해 CASE도구에서 소스코드 생성 기능 같은 것들 제공

  4. 백엔드 문서용으로 제격이다
    프로젝트를 다른 팀에게 넘기거나 이어서 맡는 경우 그 팀에게 유용

UML

통합 모델링 언어(UML, Unified Modeling Language)
소프트웨어 공학에서 사용되는 표준화된 범용 모델링 언어로, 소프트웨어 개념을 다이어그램으로 그리기 위해 사용하는 시각적인 표기법이다.

정적 다이어그램 : 형태나 상태를 나타냄
동적 다이어그램 : 흐름을 나타냄(데이터가 왔다갔다하는 것을 표시할 수 있음)

클래스 다이어그램

: 클래스 프로그램 안의 주요 클래스와 주요 관계를 보여줌

유스케이스(UseCase) 다이어그램

: 시스템과 사용자가 상호작용하는 경우를 나타내는 기능 위주의 다이어그램
: 동적(행위) 다이어그램으로 사용자 관점에서 바라본 시스템 동작 요구사항을 표현한 다이어그램.
여러 업무 프로세스를 설명하는데 자주 활용

시퀀스 다이어그램

: 시간 흐름에 따른 객체 사이의 상호작용 표현 (코드의 흐름을 나타내줄 수 있음)

모델링 시 주의할 점

  1. 핵심적인 기능 위주로 작업하라.
    모든 기능을 상세히 표현하기 위하여 모델링 작업을 진행하면 작성자도 힘들고, 상대방도 알아보기 어려워짐 -> 시간 낭비!

**2. 모델링 작업은 개발 프로세스 분석/설계 단계에서만 하는 것이 아니다.
반복적으로 모델을 수정하여 다듬어 나가는 것이 중요

  1. 모델을 보고 개발하려는 기능의 코드를 떠올릴 수 있어야 한다.
    모델링된 산출물을 보고 코드가 떠오르지 않으면 모델링 과정에 문제가 있을 가능성이 높음

2. 유스케이스 다이어그램

액터

시스템과 상호작용을 하는 시스템 외부의 존재로 개발 대상에 따라 달라질 수 있음
시스템 관점에서 바라본 사용자, 타 시스템의 역할을 뜻해야 함

유스케이스

개발 대상이 되는 시스템이 제공하는 개별적인 기능(액터가 사용할 수 있는 기능)
사용자가 인지할 수 있는(눈에 보이는) 하나의 기능 단위

관계의 종류


**연관관계(실선)는 액터와 유스케이스 간만 사용 가능

0개의 댓글