- 사용자 인터페이스(UI)는 사용자와 시스템 간의 상호작용이 원활하게 이뤄지도록 도 와주는 장치나 소프트웨어를 의미
- 초기의 사용자 인터페이스는 단순히 사용자와 컴퓨터 간의 상호작용에만 국한되었지만 점차 사용자가 수행할 작업을 구체화시키는 기능 위주로 변경되었고, 최근에는 정보 내용을 전달하기 위한 표현 방법으로 변경
- 사용자 인터페이스의 세 가지 분야
- 정보 제공과 전달을 위한 물리적 제어에 관한 분야
- 콘텐츠의 상세적인 표현과 전체적인 구성에 관한 분야
- 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능에 관한 분야
- 사용자의 만족도에 가장 큰 영향을 미치는 중요한 요소로 소프트웨어 영역 중 변경이 가장 많이 발생
- 사용자의 편리성과 가독성을 높임으로써 작업 시간을 단축시키고 업무에 대한 이해도를 높여준다.
- 최소한의 노력으로 원하는 결과를 얻을 수 있게 한다.
- 사용자 중심으로 설계되어 사용자 중심의 상호 작용이 되도록 한다.
- 수행 결과의 오류를 줄인다.
- 사용자의 막연한 작업 기능에 대해 구체적인 방법을 제시해 준다.
- 정보 제공자와 정보 이용자 간의 매개 역할을 수행한다.
- 사용자 인터페이스를 설계하기 위해서는 소프트웨어 아키텍처를 반드시 숙지해야 한다.
- 사용자 인터페이스는 상호작용의 수단 및 방식에 따라 다음과 같이 구분된다.
- CLI(Command Line Interface): 명령과 출력이 텍스트 형태로 이뤄지는 인터페이스
- GUI(Graphical User Interface): 아이콘이나 메뉴를 마우스로 선택하여 작업을 수행하는 그래픽 환경의 인터페이스
- NUI(Natural User Interface): 사용자의 말이나 행동으로 기기를 조작하는 인터페이스
- VUI(Voice User Interface): 사람의 음성으로 기기를 조작하는 인터페이스
- OUI(Organic User Interface): 모든 사물과 사용자 간의 상호작용을 위한 인터페이스로, 소프트웨어가 아닌 하드웨어 분야에서 사물 인터넷(Internet of Things), 가상현실(Virtual Reality), 증강현실(Augmented Reality), 혼합현실(Mixed Reality) 등과 함께 대두되고 있음
- 직관성: 누구나 쉽게 이해하고 사용할 수 있어야 한다.
- 유효성: 사용자의 목적을 정확하고 완벽하게 달성해야 한다.
- 학습성: 누구나 쉽게 배우고 익힐 수 있어야 한다.
- 유연성: 사용자의 요구사항을 최대한 수용하고 실수를 최소화해야 한다.
- 사용자 중심: 사용자가 쉽게 이해하고 편리하게 사용할 수 있는 환경을 제공하며, 실사용자에 대한 이해가 바탕이 되어야 한다.
- 사용성: 사용자가 소프트웨어를 얼마나 빠르고 쉽게 이해할 수 있는지, 얼마나 편리하고 효율적으로 사용할 수 있는지를 말하는 것으로, 사용자 인터페이스 설계시 가장 우선적으로 고려해야 한다.
- 일관성: 버튼이나 조작 방법 등을 일관성 있게 제공하므로 사용자가 쉽게 기억하고 습득할 수 있게 설계해야 한다.
- 단순성: 조작 방법을 단순화시켜 인지적 부담을 감소시켜야 한다.
- 결과 예측 가능: 작동시킬 기능만 보고도 결과를 미리 예측할 수 있게 설계해야 한다.
- 가시성: 메인 화면에 주요 기능을 노출시켜 최대한 조작이 쉽도록 설계해야 한다.
- 심미성: 디자인적으로 완성도 높게 글꼴이나 색상을 적용하고 그래픽 요소를 배치하여 가독성을 높일 수 있도록 설계해야 한다.
- 표준화: 기능 구조와 디자인을 표준화하여 한 번 학습한 이후에는 쉽게 사용할 수 있도록 설계해야 한다.
- 접근성: 사용자의 연령, 성별, 인종 등 다양한 계층이 사용할 수 있도록 설계해야한다.
- 명확성: 사용자가 개념적으로 쉽게 인지할 수 있도록 설계해야 한다.
- 오류 발생 해결: 오류가 발생하면 사용자가 쉽게 인지할 수 있도록 설계해야 한다.
- 사용자의 입력을 검증할 수 있어야 한다.
- 에러 처리와 그와 관련된 에러 메시지를 표시할 수 있어야 한다.
- 도움과 프롬프트(Prompt)를 제공해야 한다.
출처: 2024 시나공 정보처리기사 필기 기본서