본문 바로가기

정보처리

사용자 인터페이스에 대해 알아보자

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

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

  • 초기의 사용자 인터페이스는 단순히 사용자와 컴퓨터 간의 상호작용에만 국한되었지만 점차 사용자가 수행할 작업을 구체화시키는 기능 위주로 변경되었고, 최근에는 정보 내용을 전달하기 위한 표현 방법으로 변경되었다. 
  • 사용자 인터페이스의 세 가지 분야 (정보 제공과 전달을 위한 물리적 제어에 관한 분야, 콘텐츠의 상세적인 표현과 전체적인 구성에 관한 분야, 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능에 관한 분야

사용자 인터페이스(UI)의 특징

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

사용자 인터페이스의 구분

사용자 인터페이스는 상호작용의 수단 및 방식에 따라 다음과 같이 구분된다.

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

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

사용자 인터페이스의 기본 원칙에는 직관성, 유효성, 학습성, 유연성이 있다. 

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

사용자 인터페이스의 설계지침

사용자 인터페이스를 설계할 때 고려할 사항은 사용자 중심, 일관성, 단순성, 결과 예측 가능, 가시성, 표준화, 접근성, 정확성, 명확성, 오류 발생 해결 등이 있다. 

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

스마트 폰을 사용할 때 화면을 손가락으로 터치하고 TV 채널을 변경할 때는 리모컨을 누르시죠? 터치 화면과 리모컨이 바로 인터페이스라고 할 수 있습니다. 

이처럼 인터페이스는 사람이 기계나 프로그램을 편리하게 사용할 수 있도록 연결해주는 연결점이라고 생각하시면 됩니다. 

 

'정보처리' 카테고리의 다른 글

소프트웨어 아키텍처  (0) 2020.04.30
UI표준 및 지침  (0) 2020.04.29
UML(Unified Modeling Language)이란?  (0) 2020.04.28
요구사항 분석 기법  (0) 2020.04.27
요구사항 정의  (0) 2020.04.26