Notes Topic 2 The Design Process PDF
Document Details
Tags
Summary
These notes cover the design process, specifically focusing on the elements of software engineering and interaction design. The document explores various aspects, from the fundamentals of interaction design to design rationale.
Full Transcript
The Design Process Chapter 2 DFP 30033 CONTENTS In this topics you are going to : 1. Understand the software engineering and basics design of interaction 2. Understand design rules for interactive system Software engineering and basics design...
The Design Process Chapter 2 DFP 30033 CONTENTS In this topics you are going to : 1. Understand the software engineering and basics design of interaction 2. Understand design rules for interactive system Software engineering and basics design of interaction 2.1 Learning Outcomes: Explain the concept of iterative design Explain the concept of usability engineering Describe the software development process. Define interaction design. What is Interaction Design? Interaction Design (IxD) is the design of interactive products and services in which a designer’s focus goes beyond the item in development to include the way users will interact with it. It is the design of the interaction between users and products. Interaction Design Words (1D) 1. Time (4D) relates to 1. encompass text, such as button 4. media that changes with labels, which help give users the time, such as right amount of information. animations, videos and sounds. Visual representations (2D) 2. are graphical elements such as images, typography and icons that aid in user 5. Behavior (5D) is interaction. concerned with how the previous four dimensions Physical objects/space (3D) 3. refers to the medium through which users define the interactions a product affords interact with the product or service Software Development Process A number of different theories and methods are developed to describe the methods. In HCI, these are called design lifecycles, and all lifecycle theories and models include SIX basic components. REQUIREMENT DETAILED INTEGRATION AND SPECIFICATION SPECIFICATION TESTING 1 2 3 4 5 6 ARCHITECTURAL IMPLEMENTATION AND OPERATION AND DESIGN UNIT TESTING MAINTENANCE How HCI Fits Into Software Development Process 1 REQUIREMENT SPECIFICATION Requirement specification begins at the start of product development. Requirements are usually initially expressed in the native language of the customer. In requirement specification , the designer and customer try to capture of description of what the eventual system will be expected to provide. How HCI Fits Into Software Development Process 1 REQUIREMENT SPECIFICATION This contrasts with determining how the system will provide the expected services, which is the concern of later activities. This activity involves eliciting information from the customer about the work environment, or domain, in which the final product will function. How HCI Fits Into Software Development Process 2 ARCHITECTURAL DESIGN An architectural design is concerned with the functional decomposition of the system. Determining which component provide which services. Describe the interdependencies between separate components. Sharing of resources that will arise between components. How HCI Fits Into Software Development Process 3 DETAILED SPECIFICATION The detailed design is a refinement of the component description provided by the architectural design. Choosing the best refinement is often a matter of to satisfy as many of the non-functional requirements of the system as possible. How HCI Fits Into Software Development Process 4 IMPLEMENTATION AND UNIT TESTING After coding, the component can be tested to verify that performs correctly, according to some test criteria that were determined in earlier activities. How HCI Fits Into Software Development Process 5 INTEGRATION AND TESTING Perform some acceptance testing with the customers to ensure that the system meets their requirements. It is only after acceptance of the integrated system that the product is finally released to the customer. * The health and safety regulations and ISO 9241 provide imputes for designers to take seriously the HCI implication of their design. How HCI Fits Into Software Development Process 6 OPERATION AND MAINTENANCE Maintenance involves the correction of errors in the system which are discovered after release and the revision of the system services to satisfy requirements that were not realized during previous development. Design Lifecycles A number of different theories and methods are developed to describe the methods. In HCI, these are called design lifecycles. WATERFALL SPIRAL MODEL THE STAR MODEL ITERATIVE USER- USABILITY SCENARIO-BASED CENTRE MODEL ENGINEERING SYSTEM LIFECYCLE Design Lifecycles 1. USABILITI ENGINEERING LIFECYCLE Measures the quality of a user's experience when interacting with a product or system-whether a Web site, a software application, mobile technology, or any user-operated device. Requirement Analysis USABILITY ENGINEERING LIFECYLE Design/Testing/ Installation Development Design Lifecycles 1. USABILITI ENGINEERING LIFECYCLE 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 Design Lifecycles 1. USABILITI ENGINEERING LIFECYCLE ISO usability standard 9241 Adopts traditional usability categories: effectiveness can you achieve what you want to? efficiency can you do it without wasting effort? satisfaction do you enjoy the process? Design Lifecycles 2. ITERATIVE DESIGN Iterative design is a design methodology based on a cyclic process of prototyping, testing, analyzing, and refining a product or process. Based on the results of testing the most recent iteration of a design, changes and refinements are made. Design Lifecycles 2. ITERATIVE DESIGN Iterative design overcomes inherent problems of incomplete requirements Prototypes Management issues simulate or animate some time features of intended system planning different types of prototypes non-functional features Throw away-discard contracts Incremental-features added Evolutionary-receiving initial feedback EXERCISE 1. You have been assigned by a lecturer to create a database system for Company XYZ. Based on software design process and software life cycle, identify FIVE activities that you have to make sure during planning phase. (5m) 2. Explain TWO components of usability engineering.(3m) 3. Explain the following concept: (4m) i. Usability engineering ii. Iterative design 4. List THREE (3) examples of Software Development Life Cycle (SDLC) model. (3m) Software engineering and basics design of interaction 2.2 Learning Outcomes: Identify the standards and guidelines of design rules. Explain the principles to support usability in interactive system design Describe Schneiderman’s Eight Golden Rules of Interface Design Explain the following design rationale Apply the design rules to improve the interface design of given examples: Principles to Support Usability The principles to support Learnability usability in Flexibility interactive system design Robustness 27 27 The principles to support usability in interactive system design Principles of Learnability Principles of Learnability Principles of Learnability Principles of Flexibility Principles of Flexibility Principles of Flexibility Principles of Flexibility Principles of Robustness Principles of Robustness Principles of Robustness Principles of Robustness EXERCISE 1. Describe TWO principles of robustness that support usability in interactive system design.(3m) 8 Golden Rules 1. Strive for consistency SHNEIDERMAN’S 8 2. Enable frequent users to use shortcuts GOLDEN RULES 3. Offer informative feedback 4. Design dialogs to yield closure 5. Offer error prevention and simple error handling 6. Permit easy reversal of actions 7. Support internal locus of control 8. Reduce short-term memory load 43 43 1. Strive for consistency Consistent sequences of actions should be required in similar situations Identical terminology should be used in prompts, menus, and help screens Consistent color, layout, capitalization, fonts, and so on should be employed throughout. 2. Enable frequent users to use shortcuts To increase the pace of interaction use abbreviations, special keys, hidden commands, and macros 3. Offer informative feedback Always keep users informed about what is going on. Don’t keep the users guessing — tell them what’s happening. When users know the current system status, they learn the outcome of their prior interactions and determine next steps. 4. Design dialogs to yield closure Should always use words, phrases, and concepts familiar to them All sequences of actions should be organized into groups with a clear beginning, middle, and end. 5. Offer error prevention and simple error handling Prioritize: Prevent bigger errors first, then little frustrations. Avoid slips by providing helpful constraints and good defaults. Prevent mistakes by removing memory burdens, supporting undo, and warning your users. Offer solutions for problems. 6. Permit easy reversal of actions Support Undo and Redo. Show a clear way to exit the current interaction, like a Cancel button. Make sure it doesn’t interfere with workflow. Single-action undo and action history. 7. Support internal locus of control Experienced users strongly desire the sense that they are in charge. Keep the content and visual design of UI focus on the essentials. Don’t let unnecessary elements distract users from the information they really need. Prioritize the content and features to support primary goals. 8. Reduce short-term memory load Recognizing something is easier than remembering it. Minimize the user’s memory load by making objects, actions, and options available. Offer contextual help instead of a long tutorial to memorize. Reduce the information that users have to remember. Use visual aids to assist users. EXERCISE 1. Describe any TWO (2) of Eight Golden Rules of Interface Design. (4m) 2. Based on figure below, explain the principle of Schneiderman Eight Golden Rule that was applied in Microsoft Excel.(5m) Design Rationale Design Rationale A design rationale is the explicit listing of decisions made during a design process, and the reasons why those decisions were made. Design Rationale Benefits of design rationale Communication throughout life cycle Reuse of design knowledge across products Enforces (implements) design discipline Presents arguments for design trade-offs organizes potentially large design space Capturing contextual information Design Rationale PROCESS-ORIENTED DESIGN 1 RATIONALE Explain the following design DESIGN SPACE ANALYSIS 2 rationale: PSYCHOLOGICAL DESIGN 3 RATIONALE 1. Process Oriented Design Rationale Process-oriented design rationale is interested in recording an historically accurate description of a design team making some decision on a particular issue for the design. The process oriented design rational is a type of activity which act as a concurrency with rest of design process 1. Process Oriented Design Rationale The goal of design is to map the requirements of the application to a hardware and software environment. The result of process-oriented analysis data flow diagrams, data dictionary entities, and so on is translated into detailed specifications for hardware and software. The main output of process-oriented design includes structure charts, physical databases, and program specifications. 1. Process Oriented Design Rationale Issue-based information system (IBIS) 2. Design Space Analysis QOC –hierarchical structure: questions (and sub-questions) represent major issues of a design options provide alternative solutions to the question criteria the means to assess the options in order to make a choice 2. Design Space Analysis 3. Psychological Design Rationale The purpose of psychological design rationale is to support this natural task - artefact cycle of design activity. When designing a new interactive system, the designers take into account the tasks that users currently perform and any new ones that they may want to perform. Apply the design rules to improve the interface design of given examples: EXERCISES a. Web application systems b. Programming environments c. Auto Teller Machine (ATM) d. Voice answering systems e. Multimedia environments end