📌 UML 작성
UML Unifid Modeling Language
프로젝트를 의뢰하는 고객과 개발자 간에 구축하고자하는 프로젝트의 전체적인 이해를 도와 서로 같은 생각과 목표를 향하도록 하는 유용한 도구이다.
고객의 요구사항과 분석 설계에서 나올 수 있는 다양한 의견을 사전에 미리 '요약된 키워드'로 정의하고 부족한 부분을 다같이 모여 점검하고 얘기할 수 있는 방법론이 제시된 도구
📌 UML의 기능
- 시각화
- 명세화
- 구축
- 문서화
💡 객체지향적 설계는?
객체는 정체성=유일성
- 추상화 abstraction : 중요하거나 필수적인 사항만을 집중적으로 정리
- 캡슐화 encapsulation : 중요 기능을 감추고 외부에 노출하변서, 이용자의 요구사항에 적절한 대응이 가능하도록 설계
- 모듈화 modulartiy : 각각의 중요한 객체 단위의 기능을 자유롭게 규합, 분해하여 독립적으로 새로운 비즈니스가 가능
- 계층화 hierarchy : 보편적인 사항을 가장 위에 두고 그것에 따라 군집화, 세분화시켜 계층적으로 나열하며, 그 객체의 특수한 사항을 하위로 배치
💡 UML 도구는?
UML 도구는 세계의 많은 기업이 프로젝트에서 요구, 분석 설계, 구현의 최적화된 도구로 사용하고 있으며
각 솔루션 기업마다 사용성을 강화한 제작 도구르 만들어 배포하고 있다.
💡 UML 구성요소 이해하기
📓 구성요소 설명
❥ 클래스 Class
비슷한 속성과 공통적인 행동을 가지는 사물의 범주 혹은 그룹으로 객체를 생성하는 템플릿 역할
❥ 유스케이스 Use case
시스템이 사용하는 시나리오의 모음으로 유스케이스는 시스템이 사용자에게 어떻게 비추어질지 나타냄
❥ 행위자 Actor
유스케이스를 시작하게 하거나 유스케이스의 결과를 얻는 개체(시스템 혹은 사람)
❥ 연관 Association
두 클래스 사이의 관계
❥ 집합연관 Aggregation
한 클래스가 다른 전체의 부분인 형태를 가지는 연관으로서, 집합체 클래스는 한개 이상의 클래스로 구성된다.
(전체 클래스 쪽에 부착)
❥ 복합연관 Composite
강한 집합연관에 의해 만들어진 클래스로 각각의 컴포넌트 클래스가 오직하나의 전체 클래스만 속할 수 있다.
❥ 스테레오타입 Sterotype
기존의 UML 요소를 취하여 해당 상황에 맞는 요소를 새로 만들 수 있게하는 구조로 거듭인용표(<< >>)를 사용
❥ 제약 Constriction
UML 요소가 가지는 의미를 확장하느 수단으로서, UML 다이어그램에 직접 추가하는 규칙을 말한다.
중괄호({})로 감싸서 나타냄
❥ 도메인 Domain
어떤 분야의 실무자가 이해할 수 있는 개념이나 용어들이 그 특성을 형성하여 시스템이 동작하는 개념적인 공간
❥ 상속 Inheritance
한 클래스가 자동으로 다른 클래스가 가진 속성과 오퍼레이션을 가지게 되는 형태를 나타내는 특수한 연관을 말하며,
클래스의 인스턴스에도 이 연관을 적용할 수 있다.
(인스턴스: 일반적으로 어떤 집합에 대해서 그 집합의 개별적인 요소)
❥ 다중성 Multiplicity
연관에 붙일 수 있는 지시 정보로써 한 클래스의 인스턴스가 다른 클래스의 인스턴스와 몇대 몇으로 연관될 수 있는 지 보여줌
❥ 객체 Object
클래스의 속성에 대해 특정한 값을 가지는 클래스의 인스턴스를 말한다.
❥ 오퍼레이션 Operation
클래스가 할 수 있는 일로 오퍼레이션은 클래스의 행동을 명시하며 규정한 특성 뒤에는 괄호를 붙인다.
❥ 속성 Attribute
클래스가 가지는 속성에 이름을 부여한 것으로 속성이 가질 수 있는 값의 범위를 나타냄
📓 UML 표기법 규칙
클래스는 대문자로 시작
속성, 오퍼레이션은 소문자로 시작
📌 UML다이어그램의 간의 관계
위에 도표는 UML이 제작되는 처음에서 끝까지를 단계적으로 정리한 흐름도.
📌 기획자가 진행해야 할 다이어그램
📑 유스케이스 다이어그램
유스케이스 다이어그램: 사용자의 요구사항을 파악하고 키워드로 표현하는 것
① 정의
- 사용자 관점에서 SW 시스템의 범위와 기능 정의
- 시스템이 해야 할 무엇을 작성
- 어떻게는 서술하지 않습니다.
② 목적
- 업무 범위 정의
- 사용자정의
- 업무기능 정의
- 사용자 요구사항 정의
- 사용자와 개발자 간 의사소통 도구
- 분석, 설계 작업 기준
- 테스트 기준
③ 구성요소
- Association: 액터와 유스케이스 간 관계
- Generalization: 액터끼리, 유스케이스끼리의 관계로 일반화 관계 정의
- Include: 한 유스케이스가 다른 유스케이스에게 서비스를 요청하는 관계로 서비스는 반드시 수행되어야한다.
- Extend: 한 유스케이스가 다른 유스케이스에게 서비스를 요청하는 관계로 서비스는 조건에 따라 수행될 수도 안될수도 있다
📑 액티비티 다이어그램
Activity Diagram: 시스템의 처리 흐름을 규정하여 작업자가 작업의 흐름을 손쉽게 알아볼 수 있는 가이드문서, 유스케이스 다음에 정의해야 할 단계
① 정의
처리 로직이나 조건에 따른 처리 흐름을 순서에 따라 정의한 모델(=플로우차트)
② 목적
- 처리 순서 표현(업무 프로세스 정의 시점)
- 비즈니스 프로세스 정의: As-is, To-be 분석
- 프로그램 로직 정의
- 유스케이스 실현
③ 작성순서
- 작성 대상 선정: 업무 프로세스 모델링, 오퍼레이션 사양정의
- Swim lane 정의: 대상 영역에 명확한 역할을 정의해야할 때
- 처리 절차 모델링: 시작점, 끝점 반드시 표현
④ 구성요소
- Activity: 행위나 작업
- Transition: 액티비티가 행위를 완료하고 다른 액티비티로 처리 순서 이동
- Synchronizition bar: 병렬처리 절차가 시작되거나 모이는 지점
📌 UML 요약
UML은 수행하고 있는 프로젝트를 작은 객체로 단위화하고 객체를 하나씩 완성해 나가며 수행의 성과를 높일 수 있는 방법이다.
'✎ STUDY > #5 웹기획' 카테고리의 다른 글
[웹 기획]제품 관리자와 서비스 기획자를 위한 실전 노하우 #1 제품 관리자 업무 구분 (0) | 2024.10.15 |
---|---|
[웹 기획] 처음부터 다시 배우는 웹 기획 #5 웹사이트 구축하기_ 페르소나 (0) | 2024.08.26 |
[웹 기획] 처음부터 다시 배우는 웹 기획 #3 웹사이트 구축 워밍업 ③ (0) | 2024.06.06 |
[웹 기획] 처음부터 다시 배우는 웹 기획 #3 웹사이트 구축 워밍업 ② (2) | 2024.06.06 |
[웹 기획] 처음부터 다시 배우는 웹 기획 #3 웹사이트 구축 워밍업 ① (0) | 2024.06.06 |