Interactive System Design and Usability Engineering Notes
Core Concepts of Usability
Usability Definition: The ease with which users can effectively and efficiently complete tasks within a system.
Key Dimensions of Usability:
Effective: The ability of users to accomplish tasks using the system.
Efficiency: The speed and ease with which users can complete tasks once they are familiar with the system.
Learnability: The easiness for new users to learn how to use the system to achieve their goals.
Memorability: The capability of users to remember how to use the system after a period of time has elapsed.
Error Handling: The degree to which a system helps users prevent errors, recover from errors, and provides clear, meaningful error messages.
Satisfaction: The level of comfort and positive feelings experienced by users as a result of interacting with the system.

Usability Engineering Life Cycle (UELC)
Definition: A structured methodology used for the development of software and systems to ensure they are efficient for end-users.
Core Approach:
Represents a step-by-step framework applied at each phase of the design process.
Initiates with understanding and identifying user needs.
Concludes with maintaining system functionality over time, fulfilling usability standards, and satisfying user requirements.
Detailed Life Cycle Workflow Elements:
Design Sprint:
User Research
Application of UX Principles
Finalization of User Flow
Information Architecture definition
Wireframing
Development:
Development Sprints
Sprint Retrospectives (Sprint Retro)
Agile Methodology implementation
Weekly status updates
Testing & QA:
Code Review (e.g., using tools like Codegrip)
Product Demos with Stakeholders
Sharing builds with clients for User Acceptance Testing (UAT)
Launch and Support:
Deployment to Beta live environment
Launch Optimization
Bug fixing
Infusion of user feedback
Final Launch
Incorporation of feedback and bug fixes into subsequent delivery plans

Sequential Phases of the Usability Engineering Life Cycle
Phase 1: User Research and Requirement Analysis:
Observation of users within their natural environment.
Execution of user interviews, surveys, and task analysis.
Creation of user personas and definition of explicit requirements.
Phase 2: Design and Prototyping:
Development of low-fidelity prototypes (wireframes) and high-fidelity prototypes.
Execution of usability testing to refine designs based on direct feedback.
Phase 3: Testing and Evaluation:
Utilization of evaluation methods, including:
Moderated testing
Unmoderated testing
A/B testing
Identification of critical usability issues and collection of user feedback.
Phase 4: Iterative Redesign:
Continuous refinement and enhancement of the system based on empirical testing results and user feedback.
Phase 5: Implementation and Deployment:
Delivery of the fully refined system for operational, real-world deployment.
Phase 6: Post-Release Monitoring and Maintenance:
Ongoing collection of user feedback via surveys and analytics platforms.
Monitoring of Key Performance Indicators (KPIs), such as system error rates and user behavioral metrics.
User-Centered Design (UCD)
Definition: A design approach that strictly prioritizes user needs, goals, and behaviors. The system must adapt to user preferences rather than forcing users to alter their behavior to adapt to the system.
The Five-Step Process of User-Centered Design:
Step 1: Understand the Context of Use:
Conduct user interviews, surveys, and contextual inquiries.
Identify distinct user groups and analyze their operational workflows.
Step 2: Specify User Requirements:
Gather comprehensive user needs through empirical research.
Create detailed personas and scenarios, and define quantifiable usability goals.
Step 3: Designing Solutions:
Develop structural low-fidelity prototypes (wireframes) through to interactive high-fidelity prototypes.
Apply foundational UI/UX design principles, such as consistency, visibility, and system feedback.
Step 4: Evaluating Designs:
Conduct direct usability tests with real target users.
Analyze test outcomes and refine design solutions based on user feedback.
Step 5: Iteration Process:
Ensure each evaluation phase leads directly into iterative design refinements.
Guarantee that the finalized product aligns with user requirements, expectations, and goals.
