개발이글스
[정처기 실기] 2-2 UI 설계 본문
📚UI 설계
📙UI 설계를 위한 UML
🏷️UML개념
➡️ UML은 객체지향 소프트웨어 개발 과정에서 산출물을 명세화, 시각화, 문서화할 때 사용되는 모델링 기술과 방법론을 통합해서 만든 표준화된 범용 모델링 언어이다.
🏷️UML특징
1️⃣ 가시화 언어: 개념 모델 작성 시 오류가 적고 의사소통 용이
2️⃣ 구축 언어: 다양한 프로그래밍 언어로 실행시스템의 예측 가능
3️⃣ 명세화 언어: 정확한 모델 제시, 완전한 모델 작성 가능
4️⃣ 문서화 언어: 시스템에 대한 평가 및 의사소통의 문서
🏷️UML의 구성요소
1️⃣ 사물: 추상적인개념, 주제를 나타내는 요소
2️⃣ 관계: 사물의 의미를 확장하고 명확히 하는 요소
3️⃣ 다이어그램: 사물과 관계를 모아 그림으로 표현한 형태
🏷️UML 다이어그램
🥕구조적 다이어그램(정적) Static Diagram -- 클객 컴배 복패
1️⃣클래스(class)
2️⃣객체(Object)
3️⃣컴포넌트(Component)
4️⃣배치(Deployment)
5️⃣복합체구조(Composite Structure)
6️⃣패키지(Package)
🥕행위적 다이어그램(동적) Dynamic Diagram
1️⃣유스케이스(Usecase)
2️⃣시퀀스(Sequence)
3️⃣커뮤니케이션(Communication)
4️⃣상태(Status)
5️⃣활동(Activity)
6️⃣타이밍(Timing)
🏷️UML 확장모델의 스테레오 타입
1️⃣ <<include>> 하나의 유스케이스가 어떤시점에 다른 유스케이스를 실행하는 포함관계
2️⃣ <<extend>> 하나의 유스케이스가 어떤 시점에 다른 유스케이스를 실행할 수도 있고, 아닐수도 있는 확장관계
3️⃣ <<interface>> 모든 메서드가 추상메서드이며 바로 인스턴스를 만들 수 없는 클래스, 추상메서드와 상수만으로 구성된 클래스
4️⃣ <<entity>> 일반적으로 정보 또는 오래 지속되는 연관된 행위를 형상화하는 클래스, 유스케이스 처리흐름이 수행되는 과정에서 기억장치에 저장되어야할 정보를 표현하는 클래스
5️⃣ <<boundary>> 시스템과 외부엑터와의 상호작용을 담당하는 클래스
6️⃣ <<control>> 시스템이 제공하는 기능의 로직 및 제어를 담당하는 클래스
🏷️클래스 다이어그램
🌍개념: 클래스다이어그램은 객체지향 모델링 시 클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현한 다이어그램이다.
🌍구성요소: 클래스 이름, 속성, 연산, 접근제어자
🌍관계:
1️⃣연관관계(Association): 2개 이상의 사물이 서로 관련되어 있는 상태를 표현. ex) 축구팀과 공격수,수비수, 골키퍼의 관계
2️⃣집합관계(Aggregation): 하나의 객체에 여러개의 독립적인 객체들이 구성되는 관계. ex) 차 <- 엔진, 바퀴, 운전대
3️⃣포함관계(Composition): 포함되는 쪽에서 포함하는 쪽으로 속이 채워진 마름모를 연결해서 표현 엔진 <-(마름모) 피스톤과 플러그
4️⃣일반화관계(Generalization): 하나의 사물이 다른사물에 비해 더 일반적인지 구체적인지를 표현, 일반-상위, 구체-하위. ex) 차와 자가용,택시,버스
5️⃣의존관계(Dependency): 하나의 클래스가 또다른 클래스를 사용하는 관계. ex) 교수와 수업
6️⃣실체화관계(Realization): 추상클래스나 인터페이스를 상속받아 자식클래스가 추상메서드를 구현할 때 사용 ex) dog <- extends Collie
🏷️유스케이스 다이어그램
🌍개념: 시스템이 제공하고있는 기능 및 그와 관련된 외부요소를 사용자의 관점에서 표현하는 다이어그램
🌍구성요소: 유스케이스, 엑터, 시스템, 시나리오, 이벤트의 흐름
🌍관계:
1️⃣포함관계(Include): 한 유스케이스를 실행할 때 다른 유스케이스가 반드시 같이 수행되는관계. ex) 대여 -> 고객확인, 도서번호입력
2️⃣확장관계(Extend): 특정조건에서 한 유스케이스로만 확장되는 관계.
3️⃣ 일반화관계(Generalization): 추상적인 엑터와 좀 더 구체적인 액터 사이에 맺어주는 관계
🏷️시퀀스 다이어그램
🌍개념: 객체 간 상호작용을 메시지 흐름으로 표현한 다이어그램
🌍구성요소: 객체, 생명선, 실행, 메시지
🏷️패키지 다이어그램
🌍개념: 시스템의 서로다른 패키지들 사이의 의존관계를 표현하기 위한 다이어그램
🌍구성요소: 패키지, 의존관계
🏷️활동 다이어그램
🌍개념: 시스템이 어떤 기능을 수행하는지를 객체의 처리 로직이나 조건에 따른 처리의 흐름을 순서대로 표현하는 다이어그램이다.
🌍구성요소: 시작점, 전이, 액션, 조건노드, 병합노드, 포크노드, 조인노드, 구획면
🏷️상태 다이어그램
🌍개념: 하나의 객체가 자신이 속한 클래스의 상태변화 혹은 다른 객체와의 상호작용에 따라 상태가 어떻게 변화하는지 표현하는 다이어그램
🌍구성요소: 상태, 시작상태, 종료상태, 전이, 이벤트, 전이조건
🏷️커뮤니케이션 다이어그램
🌍개념: 시퀀스다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하고 메시지뿐만아니라 객체간의 연관까지 표현하는 다이어그램
🌍구성요소: 액터, 객체, 링크, 메시지
🏷️컴포넌트 다이어그램
🌍개념: 시스템을 구성하는 물리적인 컴포넌트와 그들 사이의 의존관계를 나타내는 다이어그램이다.
🌍구성요소: 액터, 객체, 링크, 메시지
'Others > 정보처리기사' 카테고리의 다른 글
[정처기 실기] 3-2 물리 데이터 저장소 설계 (1) | 2024.10.11 |
---|---|
[정처기 실기] 3-1 논리 데이터 저장소 확인 (0) | 2024.10.11 |
[정처기 실기] 2-1 UI 요구사항 확인 (1) | 2024.09.29 |
[정처기 실기]1-3 요구사항 분석 (3) | 2024.09.29 |
[정처기 실기] 1-2 현행 시스템 분석 (6) | 2024.09.29 |