본문 바로가기
기본 지식

화면 설계

by HJINHA 2021. 7. 1.

01 UI 요구사항 확인

1. UI

- 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적, 가상의 맥개체

- 유형

- CLI: 정적인 텍스트 기반

- GUI: 그래픽 반응 기반

- NUI: 직관적 사용자 반응 기반. 신체 부위, 음성 이용 (natural user interface)

- OUI: 유기적 상호작용 기반. 현실의 모든 사물이 입출력장치로 변화할 수 있는. (organic)

- UI 설계 원칙 *

1) 직관성: 누구나 쉽게 이해하고 사용

2) 유효성: 정확하게 사용자의 목표 달성

3) 학습성: 쉽게 배우고 사용

4) 유연성: 사용자의 인터랙션을 최대한 포용하고, 실수 방지

- UI 품질 요구사항

: 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성

 

02 UI 설계

1. UML

- 모델링 기술과 방법론을 통합해 만든 표준화된 범용 모델링 언어(Unified Modeling Language)

- 특징: 가시화, 구축, 명세화, 문서화

- 구성 요소: 사물, 관계, 다이어그램

- UML 다이어그램

1) 정적(구조적) 다이어그램

: 클래스, 객체, 컴포넌트, 배치, 복합체 구조, 패키지

2) 동적(행위적) 다이어그램

: 유스케이스, 시퀀스, 커뮤니케이션, 상태, 활동, 타이밍

- 스테레오 타입

: 기존의 UML 요소를 그대로 사용하지만 내부 의미는 다른 목적으로 사용하도록 확장

- <<include>>: 하나의 유스케이스가 다른 유스케이스를 실행

- <<extend>>: 하나의 유스케이스가 다른 유스케이스를 실행할 수도 있고, 않을 수도 있음

- <<interface>>: 모든 메서드가 추상 메서드

- <<entity>>: 기억 장치에 저장되어야 할 정보 표현

- <<boundary>>: 시스템과 외부 액터와의 상호작용

- <<control>>: 시스템이 제공하는 기능의 로직 및 제어

 

2. UML 유형

1) 클래스 다이어그램

- 개념: 클래스의 속성 및 연산과 클래스 간 정적인 관계를 표현

- 구성 요소: 클래스, 속성, 연산, 접근 제어자

- 클래스 간 관계

(1) 연관: 여러 사물이 서로 개념적으로 연결. 양방향일 경우 화살표 생략하고 실선. 다중표현ex) 1..*

(2) 집합: 독립. 하나의 사물이 다른 사물에 포함됨. [엔진]◇[]

(3) 복합(포함): 종속. 포함하는 사물의 변화가 포함되는 사물에 영향. [피스톤][엔진]

(4) 일반화: 한 사물이 다른 사물에 비해 더 일반적/구체적. [택시][]

(5) 의존: 영향을 주는 짧은 시간에만 연관을 유지. [수업]·····>[교수]    (점선 화살표)

(6) 실체화: 추상 클래스나 인터페이스를 상속받아 자식클래스가 추상 메서드를 구현할 때.

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

- 개념: 기능, 외부 요소를 사용자의 관점에서 표현

- 구성 요소: 유스케이스, 액터, 시스템, 시나리오, 이벤트의 흐름

- 관계: 포함, 확장, 일반화

3) 시퀀스 다이어그램

- 개념: 객체 간 상호작용을 메시지 흐름으로 표현. 동적 상호작용을 시간 개념 중심으로 모델링.

- 구성 요소: 객체(), 생명선(---), 실행(----), 메시지(->)

4) 패키지 다이어그램

- 개념: 서로 다른 패키지들 사이의 의존 관계를 표현

- 구성 요소: 패키지(폴더 모양), 의존관계(-->)

5) 활동 다이어그램

- 개념: 처리의 흐름을 단계적으로 표현

- 구성 요소: 시작점(), 전이(->), 액션, 종료점(◎), 조건노드, 병합노드, 포크노드, 조인노드, 구획면

6) 상태 다이어그램

- 개념: 클래스의 상태변화 or 다른 객체와의 상호작용에 따른 객체의 상태변화를 표현

- 구성 요소: 상태, 시작 상태, 종료 상태, 전이, 이벤트, 전이 조건

7) 커뮤니케이션 다이어그램

- 개념: 객체들이 주고받는 메시지, 객체간의 연관 표현

- 구성 요소: 액터, 객체, 링크, 메시지

8) 컴포넌트 다이어그램

- 개념: 물리적인 컴포넌트와 그들 사이의 의존 관계를 표현. 실질적 프로그래밍 작업에 사용.

- 구성 요소: 컴포넌트, 인터페이스, 의존 관계

'기본 지식' 카테고리의 다른 글

물리 데이터 저장소  (0) 2021.07.01
논리 데이터 저장소  (0) 2021.07.01
요구사항  (0) 2021.07.01
현행 시스템 분석  (0) 2021.06.29
소프트웨어 개발방법론  (0) 2021.06.29

댓글