1과목 소프트웨어 설계 화면설계 015 ~ 020
015. 품질 요구사항
소프트웨어 품질 : 소프트웨어 기능, 성능, 만족도 등 소프트웨어에 대한 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 총체.
- ISO/IEC 9126 : 소프트웨어 품질 특성과 평가를 위한 국제 표준 지침.
1) 기능성 (Functionality) |
- 사용자의 요구사항 정확하게 만족하는 기능을 제공하는지 |
- 적절성/적합성 (Suitability) - 정밀성/정확성 (Accuracy) - 상호 운용성 (Interoperability) : 다른 시스템들과 어울려 작업 가능한지 - 보안성 (Security) - 준수성 (Compliance) : 기능 관련 표준, 관례, 규정을 준수할 수 있는지 |
|
2) 신뢰성 (Reliability) |
- 요구된 기능을 정확/일관되게 오류 없이 수행할 수 있는지 |
- 성숙성 (Maturity) : 결함으로 인한 고장을 피해갈 수 있는지 - 고장 허용성 (Fault Tolerance) : 결함에도 규정된 성능 수준을 유지할 수 있는지 - 회복성 (Recoverability) : 고장 시 규정 성능 수준까지 다시 회복하고 데이터 복구 가능한지 |
|
3) 사용성 (Usability) |
- 사용자와 컴퓨터 사이에 발생하는 어떤 행위에 대해 사용자가 쉽게 배우고 사용할 수 있는지 |
- 이해성 (Understandability) - 학습성 (Learnability) - 운용성 (Operability) - 친밀성 (Attractiveness) |
|
4) 효율성 (Efficiency) |
- 사용자가 요구하는 기능을 할당된 시간동안 한정된 자원으로 얼마나 빨리 처리할 수 있는지 |
- 시간 효율성 (Time behaviour) - 자원 효율성 (Resource behaviour) |
|
5) 유지 보수성 (Maintainability) |
- 환경 변화/ 새로운 요구사항이 발생시 개선하거나 확장할 수 있는 정도 |
- 분석성 (Analyzability) - 변경성 (Changeability) - 안정성 (Stability) - 시험성 (Testability) |
|
6) 이식성 (Portability) |
- 다른 환경에서도 얼마나 쉽게 적용할 수 있는지 |
- 적용성 (Adaptability) - 설치성 (Installability) - 대체성 (Replaceability) - 공존성 (Co-existence) |
- ISO/IEC 25010 : 소프트웨어 제품에 대한 국제표준 (9126 개정)
- ISO/IEC 12119 : 9126 준수. 테스트 절차 포함
- ISO/IEC 14598 : 제품 평가 활동 규정
016. UI 프로토타입 제작 및 검토
: 사용자 요구사항을 기반으로 실제 동작하는 것처럼 만든 동적인 형태의 모형. (테스트 가능!!!)
- 장점 : 사용자 설득/이해가 쉬움, 요구사항과 기능의 불일치 등으로 인한 혼선 예방 가능, 사전에 오류 발견 가능
- 단점 : 프로토타입에 요구사항 반영을 위한 반복적 개선 및 보완 작업으로 인한 작업 시간 증가, 필요 이상의 자원 소모, 부분적으로 프로토타입한다면 중요한 작업 생략될 가능성
- 종류
1) 페이퍼 프로토타입
2) 디지털 프로토타입
017. UI 설계서 작성
: 사용자의 요구사항을 바탕으로 UI 설계를 구체화하여 작성하는 문서.
1) UI 설계서 표지 작성
: 프로젝트명 / 시스템명 포함
2) UI 설계서 개정 이력 작성
: UI 설계서 수정될 때마다 어떤 부분이 어떻게 수정되었는지 정리. (버전 0.1씩 높이며 적기)
3) UI 요구사항 정의서 작성
: 사용자 요구사항 확인하고 정리. 적용 여부를 표시
4) 시스템 구조 작성
: 전체 시스템의 구조를 설계한 것으로 사용자 요구사항이 어떻게 시스템에 적용되는지 알 수 있음.
5) 사이트 맵 작성
: 시스템 구조를 바탕으로 사이트에 표시할 콘텐츠를 메뉴별로 구분하여 설계
6) 프로세스 정의서 작성
: 사용자 관점에서 사용자가 요구하는 프로세스들을 작업 진행 순서에 맞게 정리한 것. (UI 전체 흐름 파악 가능)
7) 화면 설계
: UI 프로토타입과 UI 프로세스를 참고하여 필요한 화면을 페이지별로 설계.
- 와이어프레임으로 대략적 스케치
- 주요 흐름을 스토리보드 형태로 작성. (시스템 정보, 인터랙션, 로직, 정책 등 필요한 사항 정리)
018. 유용성 평가
: 사용자 측면에서 복잡한 시스템을 얼마나 편리하게 사용할 수 있는지 평가.
실행 차 : 사용자가 원하는 목적과 실행 기능이 다르기 때문
- 줄이기 위한 UI 설계 원리 검토
- 사용 의도 파악
- 행위 순서 규정
- 행위의 순서대로 실행
평가 차 : 사용자가 원하는 목적과 실행 결과가 다르기 때문
- 줄이기 위한 UI 설계 원리 검토
- 수행한 키 조작의 결과를 사용자가 빠르게 지각하도록 유도
- 키 조작으로 변화된 시스템의 상태를 사용자가 쉽게 인지하도록 유도
- 사용자가 가진 원래 의도와 시스템 결과 간의 유사 정도를 사용자가 쉽게 파악하도록 유도
019. UI 상세 설계
: UI 설계서를 바탕으로 실제 설계 및 구현을 위해 모든 화면에 대한 자세한 설계를 진행하는 단계. >> 반드시 시나리오 작성.
1) UI 시나리오 문서 작성 원칙
- UI 기능과 작동방식 한눈에 이해가능하도록 구체적으로 작성
- 계층(tree) or 플로차트(flow chart) 표기법
- 공통 UI요소와 인터랙션 (일반 규칙) 정의
- 대표화면 레이아웃, 화면에 속할 기능 정의
- 인터랙션 흐름 정의 (순서, 분기, 조건, 루프)
- 예외 상황 대비한 다양한 케이스 정의
- 기능별 상세 기능 시나리오 정의
- UI 시나리오 규칙 지정
2) 시나리오 문서 요건
- 완전성
- 일관성
- 이해성
- 가독성
- 수정 용이성
- 추적 용이성
020. HCI/ UX / 감성공학
1) HCI (Human Computer Interaction or Interface)
: 사람이 시스템을 보다 편리하고 안전하게 사용하도록 연구/개발하는 학문. 최적의 사용자 경험(UX)을 만드는 것.
2) UX (User Experience)
: 사용자가 시스템/서비스를 이용하면서 느끼고 생각하게 되는 총체적 경험. (사용자가 느끼는 만족이나 감정 중시)
- 주관성
- 정황성
- 총체성
3) 감성공학
: 제품이나 작업환경을 사용자의 감성에 알맞게 설계/제작하는 기술.
- 기반 기술 : 제품 설계에 적용할 인간의 특성 파악
- 구현 기술 : 인간의 특성에 맞는 인터페이스 구현
- 응용 기술 : 인간에 맞는지 파악하여 새로운 감성 만듦.