사용자 인터페이스 (UI, User Interface)

 사용자 인터페이스는 사용자와 시스템 간의 상호작용이 원활하게 이루어지도록 도와주는 장치나 소프트웨어를 의미

 

- 초기의 사용자 인터페이스는 단순히 사용자와 컴퓨터 간의 상호작용에만 국한되었지만 점차 사용자가 수행할 작업을 구체화 시키는 기능 위주로 변경됨. 최근에는 정보 내용을 전달하기 위한 표현 방법으로 변경됨.

 

* 사용자 인터페이스의 세 가지 분야

- 정보 제공과 전달 및 물리적 제어

- 콘테츠의 상세적인 표현 및 전체적 구성

- 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능

 

* 사용자 인터페이스의 특징

  • 사용자의 만족도에 가장 큰 영향을 미치는 요소. 소프트웨어 영역 중 변경이 가장 많이 발생됨.
  • 사용자의 편리성과 가독성을 높임으로써 작업시간을 단축시키고 업무에 대한 이해도를 높여줌.
  • 최소한의 노력으로 원하는 결과를 얻을 수 있게 한다.
  • 수행 결과의 오류를 줄임
  • 사용자에게 작업 기능에 대해 구체적인 방법을 제시함
  • 정보 제공자와 공급자 간의 매개 역할을 수행함
  • 사용자 인터페이스를 설계하기 위해서는 소프트웨어 아키텍처를 반드시 숙지해야함

 

*사용자 인터페이스의 구분

  • CLI(Command Line Interface) : 명령과 출력이 텍스트 형태로 이루어지는 인터페이스
  • GUI(Graphical User Interface) : 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 그래픽 환경 인터페이스
  • NUI(Natural User Interface): 사용자의 말이나 행동으로 기기를 조작하는 인터페이스

 

*사용자 인터페이스의 기본 원칙

  • 직관성 : 누구나 쉽게 이해하고 사용할 수 있음 
  • 유효성 : 사용자의 목적을 정확하고 완벽하게 달성해야함
  • 학습성 : 누구나 쉽게 배우고 익힐 수 있어야함
  • 유연성 : 사용자의 요구사항을 최대한 수용하고 실수를 최소화해야함

 

*사용자 인터페이스의 기본 원칙

  • 사용자 중심 : 사용자가 쉽게 이해하고 편리하게 사용할 수 있는 환경을 제공하며, 실사용자에 대한 이해가 바탕이 되어야함
  • 일관성 : 버튼이나 조작 방법 등을 일관성 있게 제공하므로 사용자가 쉽게 기억하고 습득할 수 있게 설계해야함
  • 단순성 : 조작방법을 단순화시켜 인지적 부담을 감소시켜야 함
  • 결과 예측 가능 : 작동시킬 기능만 보고도 결과를 미리 예측할 수 있게 설계해야함
  • 가시성 : 메인 화면에 주요 기능을 노출시켜 최대한 조작이 쉽도록 설계해야 한다.
  • 표준화 : 기능 구조와 디자인을 표준화하여 한 번 학습한 이후에는 쉽게 사용할 수 있도록 설계해야함
  • 접근성 : 사용자의 연령, 성별 , 인종 등 다양한 계층이 사용할 수 있도록 설계해야 한다.
  • 명확성 : 사용자가 개념적으로 쉽게 인지할 수 있도록 설계해야 한다.
  • 오류 발생 해결 : 오류가 발생하면 사용자가 쉽게 인지할 수 있도록 설계해야함.

 

UI 표준 및 지침

  UI 표준과 지침을 토대로 기술의 중립성(웹 표준), 보편적 표현 보장성(웹 접근성), 기능의 호환성(웹 호환성)이 고려되었는 지 확인해야함

 

- UI 표준 : 전체 시스템에 포함된 모든 UI에 공통적으로 적용될 내용. 화면 구성, 화면 이동등

- UI 지침 : UI 요구사항, 구현 시 제약사항 등 UI 개발 과정에서 꼭 지켜야할 공통의 조건을 의미

 

*웹의 3요소 : 웹 표준(Web Standards) , 웹 접근성(Web Accessibility), 웹 호환성(Cross Browsing)

 

 

한국형 웹 콘텐츠 접근성 지침(KWCAG; Korean Web Content Accessibility Guidelines)

 장애인과 비장애인이 동등하게 접근할 수 있는 웹콘텐츠의 제작 방법을 제시함

웹 콘텐츠 접근성(사용성) 지침 준수를 위한 고려 사항

* 내비게이션 : 사용자 중심으로 되어있으며, 사용자가 사이트에서 원하는 정보를 빠르게 찾을 수 있도록 안내하는 것.  

 

 

전자정부 웹 표준 준수 지침

  정부 기관의 홈페이지 구축 시 반영해야 할 최소한의 규약을 정의한 것. 모든 사람이 시스템 환경에 구애받지 않고 정부기관의 홈페이지를 이용할 수 있도록 하기 위한 것.

 

내용의 문법 준수 -모든 웹 문서는 적절한 문서타입을 명시해야함
-명시한 문서타입에 맞는 문법을 준수해야함
-모든 페이지는 사용할 인코딩 방식을 표기해야 함
내용과 표현의 분리 -논리적인 마크업 언어를 사용하여 웹 문서를 구조화해야 함
-사용된 스타일 언어는 표준적인 문법을 준수해야 함
동작의 기술 중립성 보장 -스크립트의 비표준 문법을 확장하는 것은 배제해야 함
-스크립트의 비사용자를 위해 대체 텍스트나 정보를 제공해야 함 
플러그인의 호환성 플러그인은 다양한 웹 브라우저에서 호환되는 것을 사용해야 함
콘텐츠의 보편적 표현 -메뉴는 다양한 브라우저에서 접근할 수 있어야 함
-웹사이트를 다양한 인터페이스로 이용할 수 있어야 함
운영체제에 독립적인
콘텐츠 제공
제공되는 미디어는 운영체제에 종속적이지 않은 범용적인 포맷을 사용해야함
부가 기능의 호환성 확보 실명인증, 전자인증 등의 부가 기능은 다양한 브라우저에서 사용할 수 있어야함
다양한 프로그램 제공 -정보를 열람하는 기능은 다양한 브라우저에서 사용할 수 있어야함
-별도의 다운로드가 필요한 프로그램은 윈도우, 리눅스, 맥킨토시 중 2개 이상의 운영체제를 지원해야함  

 

UI 설계 도구

사용자의 요구사항에 맞게 UI의 화면 구조나 화면 배치 등을 설계할 때 사용하는 도구.

종류 : 와이어프레임, 목업, 스토리보드, 프로토타입, 유스케이스 등이 있음

 

 

*와이어프레임 (Wireframe)

: 기획 단계의 초기에 제작. 페이지에 대한 개략적인 레이아웃이나 UI 요소 등에 대한 뼈대를 설계하는 단계. 개발자나 디자이너 등이 레이아웃을 협의하거나 

툴 : 손그림, 파워포인트, 키노트, 스케치, 일러스트, 포토샵 등

 

*목업(Mockup)

: 디자인, 사용 방법 설명, 평가 등을 위해 와이어프레임보다 좀 더 실제 화면과 유사하게 만든 정적인 형태의 모형. 

시각적으로 구성요소를 배치하고, 실제로 구현되지는 않음.

 

 

 

 

*스토리보드(Story Board)

: 와이어프레임에 콘텐츠에 대한 설명, 페이지 간 이동 흐름 등을 추가한 문서.

디자이너와 개발자가 최종적으로 참고하는 작업 지침서. 정책, 프로세스, 콘테츠 구성, 와이어프레임, 기능 정의 등 서비스 구축을 위한 모든 정보가 들어있음.

툴 : 파워포인트, 키노트, 스케치, Axure 등

 

https://www.itlab.co.kr/v7/?m=bbs&bid=sb&sort=score1

 

*프로토타입(Prototype)

: 와이어프레임이나 스토리보드 등에 인터랙션을 적용함으로써 실제 구현된 것처럼 테스트가 가능한 동적인 형태의 모형. 사용성 테스트나 작업자 간 서비스 이해를 위해 작성하는 샘플. 작성방법에 따라 페이퍼 프로토타입과 디지털 프로토타입으로 나뉨

툴: HTML/CSS, Axure, Flinto, 네이버 프로토나우, 카카오 오븐 등

http://imagestory.net/?p=804


*유스케이스 (Use Case)

: 사용자 측면에서의 요구사항으로, 사용자가 원하는 목표를 달성하기 위해 수행할 내용을 기술함.

  • 사용자의 요구사항을 빠르게 파악하여, 프로젝트의 초기에 시스템의 기능적인 요구를 결정하고 그 결과를 문서화할 수 있음
  • 사용자의 요구사항을 구조적으로 표현한 것으로, 일반적으로 다이어그램 형식으로 묘사.
  • 유스케이스 다이어그램이 완성되면, 각각의 유스케이스에 대해 유스케이스 명세서를 작성한다. 

https://zetawiki.com/wiki/%EC%9C%A0%EC%A6%88%EC%BC%80%EC%9D%B4%EC%8A%A4,_%EC%9C%A0%EC%A6%88%EC%BC%80%EC%9D%B4%EC%8A%A4_%EB%8B%A4%EC%9D%B4%EC%96%B4%EA%B7%B8%EB%9E%A8,_%EC%8B%9C%EB%82%98%EB%A6%AC%EC%98%A4

 

UI 요구사항 확인

새로 개발할 시스템에 적용할 UI 관련 요구사항을 조사해서 작성하는 단계로, 다양한 경로를 통해 사용자의 요구사항을 조사하고 분석한 후 작성해야함. 

1) 목표 정의

: 사용자들을 대상으로 인터뷰를 진행한 후 사용자들의 의견이 수렴된 비즈니스 요구사항을 정의한다.

- 인터뷰를 통해 사업적, 기술적인 요구사항을 명확히 이해해야함.

- 인터뷰 진행 시 유의사항

  • 인터뷰는 가급적 개별적으로 진행
  • 가능한 많은 사람을 인터뷰하여 다양한 의견을 수렴하고, 다수의 의견 말고 개인의 의견도 놓치지 말아야함
  • 인터뷰는 한 시간을 넘지 않도록 함
  • 인터뷰 진행은 반드시 사용자 리서치를 시작하기 전에 해야 함.

 

2) 활동 사항 정의 

: 조사한 요구사항을 토대로 앞으로 해야할 활동 사항을 정의함.

  • 사용자와 회사의 비전을 일치시키는 작업을 진행함.
  • 리서치 규모, 디자인 목표 등을 결정할 수 있도록 각각에 필요한 예산과 일정을 결정함
  • 사업 전력 및 목표, 프로세스의 책임자 선정, 회의 일정 및 계획 작성, 우선 순위의 선정, 개별적인 단위 업무를 구분함

3) UI 요구사항 작성

: UI 요구사항을 작성할 때는 여러 경로를 통해 수집된 사용자들의 요구사항을 검토하고 분석하여 UI 개발 목적에 맞게 작성해야함 

- 반드시 실사용자 중심으로 작성되어야함 

- 여러 사람의 인터뷰를 통해 다양한 의견을 수렴해서 작성해야함

- UI요구사항을 바탕으로 전체적인 구조를 파악 및 검토해야함

- 작성 순서 : 요구 사항 요소 확인 -> 정황 시나리오 작성 -> 요구사항 작성

 

 

 

* 요구사항 요소 확인

데이터 요구 - 사용자가 요구하는 모델과 객체들의 주요 특성을 기반으로 하여 데이터 객체들을 정리함
- 인터페이스 구성에 영향을 미치므로 반드시 초기에 확인해야함 
기능 요구 -사용자의 목적 달성을 위해 무엇을 실행해야하는 지를 동사형으로 설명함
-기능 요구 리스트는 최대할 철저하게 정리해야 함
제품 / 서비스의 품질 -데이터 및 기능 요구 외에 제품의 품질, 서비스, 감성적인 품질 등을 고려하여 작성함
제약 사항 -제품 완료 데드라인, 전체 개발 및 제작에 필요한 비용, 시스템 준수에 필요한 규제가 포함됨.
-사전에 제약 사항의 변경 가능 여부를 확인함

 

*정황 시나리오 작성

: 사용자의 요구사항을 도출하기 위해 작성하는 것. 목표를 달성하기 위해 수행하는 방법을 순차적으로 묘사함.

- 요구사항 정의에 사용되는 초기 시나리오

-사용자 관점에서 시나리오를 작성해야함 

-사용자가 사용하는 기능 위주로 작성해야함, 함께 발생되는 기능들은 하나의 시나리오에 통합함.

- 육하원칙에 따라 간결하고 명확하게 작성해야함

-작성된 시나리오는 외부 전문가 또는 경험이 풍부한 사람에게 검토를 의뢰해야함

 

 

*요구사항 작성

: 정황 시나리오를 토대로 작성함

정황 시나리오 요구사항
수정이가 핸드폰을 켜서 음성 녹음을 했다. 음성 메시지는 텍스트로 변환되어서 메모장에 텍스로 저장되었다. - 음성 녹음이 가능해야한다.
- 음성 메시지는 텍스트로 변환되어야한다
-변환된 텍스트는 메모장에 저장되어야한다.

 

+ Recent posts