[정보처리기사] UI 요구사항 확인

junjun·2023년 9월 23일
0

정보처리기사

목록 보기
5/21

👨‍💻 UI(User Interface) 개념

  • UI(사용자 인터페이스)는 넓은 의미에서 사용자와 시스템 사이에서 의사소통할 수 있도록 고안된 물리적, 가상의 매개체
  • 좁은 의미로는 정보 기기나 소프트웨어의 화면 등에서 사람이 접하게 되는 화면
  • UX(사용자 경험)은 UI(사용자 인터페이스)를 포함하고 있다.

UI 유형

  • CLI ( Command Line Interface )
    - 정적인 텍스트 기반 인터페이스
    - 명령어를 텍스트로 입력하여 조작하는 사용자 인터페이스
  • GUI ( Graphical User Interface )
    - 그래픽 반응 기반 인터페이스
    - 그래픽 환경을 기반으로 한 마우스나 전자펜을 이용하는 사용자 인터페이스
  • NUI ( Natural User Interface )
    - 직관적 사용자 반응 기반 인터페이스
    - 키보드나 마우스 없이 신체 부위를 이용하는 사용자 인터페이스
    - 터치, 음성 포함
  • OUI ( Organic User Interface )
    - 유기적 상호작용 기반 인터페이스
    - 현실에 존재하는 모든 사물이 입출력장치로 변화할 수 있는 사용자 인터페이스

🛣 UI 분야

  • 물리적 제어 분야
    - 정보 제공과 기능 전달을 위한 하드웨어 기반
  • 디자인적 분야
    - 콘텐츠의 정확하고 상세한 표현과 전체적 구성
  • 기능적 분야
    - 사용자의 편의성에 맞춰 쉽고 간편하게 사용 가능

🤔 UI 설계 원칙

  • 직관성 ( Intuitiveness )
    - 누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 함.
    - 쉬운 검색 / 쉬운 사용성 / 일관성
  • 유효성 ( Efficiency )
    - 정확하고 완벽하게 사용자의 목표가 달성될 수 있도록 제작
    - 쉬운 오류 처리 및 복구
  • 학습성 ( Learnability )
    - 초보와 숙련자 모두가 쉽게 배우고 사용할 수 있게 제작
    - 쉽게 학습 / 쉬운 접근 / 쉽게 기억
  • 유연성 ( Flexibility )
    - 사용자의 요구사항을 최대한 수용하고 실수를 방지할 수 있도록 제작
    - 오류 예방, 실수포용, 오류 감지

UI 설계 지침

  • 사용자 중심, 일관성, 단순성, 결과 예측 가능, 가시성, 표준화, 접근성, 명확성, 오류 발생 해결

UI 요구사항 확인

  • UI 요구사항은 사용자가 정보시스템을 구축하여 얻고자 하는 최종 목적의 기준
  • 요구사항은 시스템 개발과정 전체에 대한 기준이 되며,
    시스템 개발 종류 및 검수의 기준

UI 요구사항 구분

  • 기능적 요구사항 / 비기능적 요구사항
  • 시스템이 무엇을 하여야 하는지를 설명하는
    기능적 요구사항
  • 개발과정에서 지켜져야 할 제약조건들을 설명하는
    비기능적 요구사항

기능적 요구사항

  • 시스템이 제공하는 기능, 서비스에 대한 요구사항
  • 시스템의 입출력, 데이터, 연산에 관한 요구사항

비기능적 요구사항

  • 사용성, 효율성, 신뢰성, 유지보수성, 재사용성 등 품질에 관한 요구사항
  • 플랫폼, 사용 기술 등 시스템 환경에 관한 요구사항
  • 비용, 일정 등 프로젝트 계획에 관한 요구사항

UI 요구사항 확인

  • 응용 소프트웨어 개발을 위한 UI 표준 및 지침에 따라,
    기능 및 비기능 요구사항의 도출을 통해
    개발하고자 하는 응용 SW에 적용될 UI 요구사항을 확인 가능

UI 표준 및 지침 -> 기능적 요구사항 / 비기능적 요구사항 -> UI 요구사항 확인

UI 품질 요구사항 ( ISO/IEC 9126 기반 )

  • 기능성 / 신뢰성 / 사용성 / 효율성 / 유지보수성 / 이식성

1. 기능성 ( Functionality )

  • 실제 수행 결과와 품질 요구사항과의 차이를 분석하고,
    실제 사용 시 정확하지 않은 결과가 발생할 확률과 관련하여 시스템의 동작을 관찰하기 위한 품질 기준.

기능성 상세 품질 요구사항

  • 적절성(Suitability)
    소프트웨어 제품이 주어직 작업과 사용자의 목표에 필요 적절한 기능들을 제공해줄 수 있는 소프트웨어의 능력
  • 정밀성(Accuracy)
    소프트웨어 제품이 요구되는 정확도로 올바른 결과를 산출할 수 있는 능력
  • 상호 운용성(Interoperability)
    소프트웨어 제품이 특정 시스템과 상호작용하여 운영될 수 있는 능력
  • 보안성(Security)
    비인가된 접근을 차단하고, 우연 또는 고의적인 접근을 인지하여 대처할 수 있는 능력
  • 호환성(Compliance)
    소프트웨어 제품이 비슷한 환경에서 연관된 표준, 관례 및 규정을 준수하는 능력

2. 신뢰성 (Reliability)

  • 시스템이 일정한 시간 또는 작동되는 시간 동안 의도하는 기능을 수행함을 보증하는 품질 기준

신뢰성 상세 품질 요구사항

  • 성숙성(Maturity)
    소프트웨어 결함으로 인한 고장을 회피할 수 있는 소프트웨어의 능력
  • 고장 허용성(Fault tolerance)
    소프트웨어 결함이나 인터페이스 오류 시에도 특정 수준 이상의 성능을 유지할 수 있는 능력
  • 회복성(Recoverability)
    소프트웨어 고장 발생 시 영향을 받은 데이터를 복구하고 성능의 수준을 다시 확보할 수 있는 능력

3. 사용성(Usability)

  • 사용자와 컴퓨터 사이에 발생하는 어떠한 행위를 정확하고 쉽게 인지할 수 있는 품질 기준

사용성 상세 품질 요구사항

  • 이해성(Understandability)
    소프트웨어의 논리적인 개념과 적용 가능성(응용 가능성)을 구분하는 데 필요한 사용자의 노력 정도에 따른 소프트웨어 특성
  • 학습성(Learnability)
    소프트웨어 애플리케이션 학습에 필요한 사용자의 노력 정도에 따른 특성
  • 운용성(Operability)
    소프트웨어의 운용과 운용 통제에 필요한 사용자의 노력 정도에 따른 특성

4. 효율성(Efficiency)

  • 할당된 시간에 한정된 자원으로 얼마나 빨리 처리할 수 있는가에 대한 품질 기준

효율성 상세 품질 요구사항

  • 시간 효율성(Time Behaviour)
    소프트웨어의 기능을 수행하는 데 있어서 반응 시간, 처리 시간 및 처리율에 따른 소프트웨어 특성
  • 자원 효율성(Resource Behaviour)
    소프트웨어 기능을 수행하는 데 있어서 상요되는 자원의 양과 그 지속 시간에 따른 특성

5. 유지보수성(Maintainability)

  • 요구사항을 개선하고 확장하는 데 있어 얼마나 용이한가에 대한 품질 기준

유지보수성 상세 품질 요구사항

  • 분석성(Analyzability)
    소프트웨어 고장의 원인이나 결함 진단 또는 수정이 요구되는 부분의 확인에 필요한 노력 정도에 따른 소프트웨어 특성
  • 변경성(Changeability)
    결함 제거 또는 환경 변화에 따른 수정에 필요한 노력 정도에 따른 특성
  • 안정성(Stability)
    소프트웨어의 변경으로 발생하는 예상치 못한 영향에 의한 위험 요소에 따른 특성
  • 시험성(Testability)
    소프트웨어가 변경되어 검증에 필요한 노력의 정도에 따른 특성

6. 이식성

  • 다른 플랫폼(운영체제)에서도 많은 추가 작업 없이 얼마나 쉽게 적용이 가능한가에 대한 품질 기준

이식성 상세 품질 요구사항

  • 적용성(Adaptability)
    고려된 소프트웨어의 목적을 위해 제공된 수단이나 다른 조치 없이 특정 환경으로 전환되는 능력에 따른 소프트웨어 특성
  • 설치성(Installablity)
    특정 환경에 소프트웨어를 설치하는 데 필요한 노력의 정도에 따른 특성
  • 대체성(Replaceability)
    특정 운용 환경하에서 동일한 목적 달성을 위해 다른 소프트웨어를 대신 사용할 수 있는 능력

0개의 댓글