3/26/2015 CENG 394 Introduction to Human-Computer Interaction CENG 394 HCI The process of interaction design 1 2 Overview What is involved in Interaction Design? What is involved in Interaction Design? Importance of involving users Degrees of user involvement What is a user-centered approach? Four basic activities It is a process: a goal-directed problem solving activity informed by intended use, target domain, materials, cost, and feasibility a creative activity a decision-making activity to balance trade-offs Some practical issues Who are the users? What are ‘needs’? Where do alternatives come from? How do you choose among alternatives? 4 3 Degrees of user involvement Importance of involving users Expectation management Member of the design team Realistic expectations No surprises, no disappointments Communication, but no hype Newsletters and other dissemination devices Ownership Make the users active stakeholders More likely to forgive or accept problems Can make a big difference to acceptance success of product 5 Full time: constant input Part time: patchy input Short term: inconsistent across project life Long term: consistent Reach wider selection of users Need communication both ways User involvement after product is released Combination of these approaches and 6 1 3/26/2015 What is a user-centered approach? Four basic activities in Interaction Design User-centered approach is based on: Early focus on users and tasks: directly studying cognitive, 1. Establishing requirements 2. Designing alternatives 3. Prototyping 4. Evaluating behavioral, anthropomorphic & attitudinal characteristics Empirical measurement: users’ reactions and performance to scenarios, manuals, simulations & prototypes are observed, recorded and analysed Iterative design: when problems are found in user testing, fix them and carry out more tests 7 8 Some practical issues Who are the users/stakeholders? Who are the users? What do we mean by ‘needs’? How to generate alternatives How to choose among alternatives How to integrate interaction design activities with other models? Not as obvious as you think: those who interact directly with the product those who manage direct users those who receive output from the product those who make the purchasing decision those who use competitor’s products Three categories of user (Eason, 1987): primary: frequent hands-on secondary: occasional or via someone else tertiary: affected by its introduction, or will influence its purchase 9 10 Who are the stakeholders? Check-out operators • Suppliers • Local shop owners What do we mean by ‘needs’? • Users rarely know what is possible • Users can’t tell you what they ‘need’ to help them achieve their goals • Instead, look at existing tasks: – their context – what information do they require? – who collaborates to achieve the task? – why is the task achieved the way it is? • Envisioned tasks: – can be rooted in existing behaviour Customers Managers and owners 11 – can be described as future scenarios 12 2 3/26/2015 How to generate alternatives IDEO TechBox Humans stick to what they know works But considering alternatives is important to ‘break out of the box’ Designers are trained to consider alternatives, software people generally are not How do you generate alternatives? — ‘Flair and creativity’: research and synthesis — Seek inspiration: look at similar products or look at very different products Library, database, website - all-in-one Contains physical gizmos for inspiration From: www.ideo.com/ 13 14 How to choose among alternatives The TechBox Evaluation with users or with peers, e.g. prototypes Technical feasibility: some not possible Quality thresholds: Usability goals lead to usability criteria set early on and check regularly — — safety: how safe? utility: which functions are superfluous? effectiveness: appropriate support? task coverage, information available — efficiency: performance measurements — 15 Testing prototypes to choose among alternatives 16 How to integrate interaction design in other models Lifecycle models from other disciplines Agile software development promising have development and design running in separate tracks maintain a coherent vision of the interface architecture 17 18 3 3/26/2015 HCI in the software process HCI in the software process Software engineering and the design process for interactive systems Usability engineering Iterative design and prototyping Design rationale 19 Activities in the life cycle The waterfall model Requirements specification Requirements specification designer and customer try to capture what the system is expected to provide can be expressed in natural language or more precise languages Validation: satisfies requirements Architectural design Verification: complete and internallyconsistent Detailed design Coding and unit testing Architectural design high-level description of how the system will provide the services required factor system into major components of the system and how they are interrelated needs to satisfy both functional and non-functional requirements Detailed design refinement of architectural components and interrelations to identify modules to be implemented separately the refinement is governed by the non-functional requirements Integration and testing Operation and maintenance 21 Verification and validation Real-world requirements and constraints The waterfall model Why doesn’t it work for UIs? People are insanely complicated – models cannot fully predict how they will use systems (especially early). Requirements specification The formality gap Verification Architectural design Cannot determine all" requirements from the start designing the product right Validation Detailed design designing the right product The formality gap Coding and unit testing validation will always rely to some extent on subjective means of proof Integration and testing Management and contractual issues design in commercial and legal contexts (which results in 50% designer’s" time spent on code for UI)! Operation and maintenance 24 4 3/26/2015 The life cycle for interactive systems User-Centered Design cannot assume a linear sequence of activities as in the waterfall model Requirements specification Architectural design Detailed design Try lots of ideas. See how users respond. – Involve representative users in all stages of the development process. – Minimize the cost of and commitment to prototypes. – Users often can’t tell you which alternative is “better” – have to test, measure & observe. Coding and unit testing lots of feedback! Integration and testing Operation and maintenance 25 Usability engineering 26 Usability engineering Usability is: ‘……the effectiveness, efficiency and satisfaction with which specified users can achieve specified goals in particular environments’ (ISO DIS 9241 -part 11) The ultimate test of usability based on measurement of user experience Usability engineering demands that specific usability measures be made explicit as requirements Usability specification usability attribute/principle measuring concept measuring method now level/ worst case/ planned level/ best case Example attributes (measures?) – Learnability – Efficiency – Memorability – Low error rate – Subjectively pleasing Problems usability specification requires level of detail that may not be possible early in design satisfying a usability specification does not necessarily satisfy usability 27 ISO usability standard 9241 some metrics from ISO 9241 adopts traditional usability categories: effectiveness can you achieve what you want to? efficiency Usability objective Effectiveness measures Efficiency measures Satisfaction measures Suitability for the task Percentage of goals achieved Time to complete a task Rating scale for satisfaction Appropriate for trained users Number of power features used Relative efficiency compared with an expert user Rating scale for satisfaction with power features Learnability Percentage of functions learned Time to learn criterion Rating scale for ease of learning Error tolerance Percentage of errors corrected successfully Time spent on correcting errors Rating scale for error handling can you do it without wasting effort? satisfaction 28 do you enjoy the process? 29 30 5 3/26/2015 Iterative design and prototyping Iterative design and prototyping Iterative design overcomes inherent problems of incomplete requirements Evolutionary Prototype Prototypes simulate or animate some features of intended system different types of prototypes throw-away Incremental Evolutionary Management issues time planning non-functional features contracts The evolutionary approach aims to develop a mature system through a series of prototype iterations. The prototype will undergo a series of refinements, and should eventually become the solution. This can be likened to the first draft, second draft, third draft ... final version. This approach is particularly useful when the exact requirements of the solution cannot be set out in advance, or are considered to be vague. The client and/or end-users can become closely involved in the development, playing a key role as each iteration moves further from prototype and closer to a useable solution that does what it is needed to do, and does it well. The problem with a vague specification is that it can be difficult to verify and control. Uncertainty can cause frustration through lack of direction and wasted time, effort and money. 31 32 Iterative design and prototyping Techniques for prototyping Incremental Prototype Storyboards The incremental approach can be likened to 'building blocks'; incrementing each time a new component is added or integrated, based on an overall design solution. When all of the components are in place, the solution is complete. An advantage of this method is that the client and/or end-users have the opportunity to test the developed components and their functionality. They also have opportunities to provide feedback while other components are still in development, and can thus influence the outcome of further development. need not be computer-based can be animated Limited functionality simulations some part of system functionality provided by designers tools like HyperCard are common for these Wizard of Oz technique Warning about iterative design design inertia – early bad decisions stay bad diagnosing real usability problems in prototypes…. …. and not just the symptoms Example: in a new word processing application a user may be able to work with the interface to open and save documents, but may not be able to print those documents or make changes fonts or styles because these components have yet to be delivered. The client and/or end-users are able to provide feedback on the components developed so far. This may influence also how further components are implemented. 33 34 Design rationale Design space analysis Design rationale is information that explains why a computer system is the way it is. structure-oriented QOC – hierarchical structure: questions (and sub-questions) Benefits of design rationale – represent major issues of a design communication throughout life cycle reuse of design knowledge across products enforces design discipline presents arguments for design trade-offs organizes potentially large design space capturing contextual information options – provide alternative solutions to the question criteria – the means to assess the options in order to make a choice DRL – similar to QOC with a larger language and more formal semantics 35 6 3/26/2015 the QOC notation Option Summary Criterion The software engineering life cycle Question Option Criterion Usability engineering Option distinct activities and the consequences for interactive system design making usability measurements explicit as requirements Iterative design and prototyping Criterion limited functionality simulations and animations Design rationale Question … Consequent Question … recording design knowledge process vs. structure 38 7
© Copyright 2024