1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 7: Principles and Patterns.

Slides:



Advertisements
Similar presentations
User Experience Krista Van Laan. Agenda What is User Experience? How does a User Experience team support the rest of the organization? What processes.
Advertisements

Chapter 5 Development and Evolution of User Interface
Week 2 The Object-Oriented Approach to Requirements
User problems, scenarios and storyboards
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Chapter 4 Design Approaches and Methods
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 11 Designing for Usability I.
Design Concepts and Principles
1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 16: Eliminating Errors.
Karolina Muszyńska Based on
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.
INFO 310 User Centered Design. User centered design (Allen, 1996) Identify a user population Investigate the information needs of the user group Discover.
Object Oriented System Development with VB .NET
Chapter 6 The Process of Interaction Design Presented by: Kinnis Gosha, Michael McGill, Jamey White, and Chiao Huang.
Analysis Concepts and Principles
Fundamentals of Information Systems, Second Edition
Introduction to Software Engineering Dr. Basem Alkazemi
Designing a System 4 October Beyond the Technology What will be implemented – external view –“glossy” brochure –Use cases and user types Translation.
Principles and Methods
© Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks1 7.1 User Centred Design (UCD) Software development should focus on the needs.
Karolina Muszyńska Based on
IIBA Denver | may 20, 2015 | Kym Byron , MBA, CBAP, PMP, CSM, CSPO
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
User Interface Design Process Gabriel Spitz. User-Interface design Steps/Goals Understand who are the users and what do they do Articulate how will users.
Object-Oriented Analysis and Design
User Interface Design Process Lecture # 6. CS Structure  Understand the User Interface  Design the User Interface  Evaluate the User Interface.
Human Interface Engineering1 Main Title, 60 pt., U/L case LS=.8 lines Introduction to Human Interface Engineering NTU Seminar Amy Ma HIE Global Director.
1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 1: User Oriented Design.
1CS480: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 5: Scenarios.
User Modeling Lecture # 5 Gabriel Spitz 1. User-Interface design - Steps/Goals.
Requirements Analysis
1 REQUIREMENT ENGINEERING Chapter 7. 2 REQUIREMENT ENGINEERING Definition Establishing what the customer requires from a software system. OR It helps.
Chapter 2 소프트웨어공학 Software Engineering 임현승 강원대학교
William H. Bowers – Synthesizing Good Design: Principles and Patterns Cooper 7.
Interaction Design Process COMPSCI 345 S1 C and SoftEng 350 S1 C Lecture 5 Chapter 3 (Heim)
BMAN Integrative Team Project Week 2 Professor Linda A Macaulay.
Requirements Engineering Requirements Elicitation Process Lecture-8.
A COMPETENCY APPROACH TO HUMAN RESOURCE MANAGEMENT
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
SOFTWARE DESIGN.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 3: Personas.
Lecture 7: Requirements Engineering
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
1 Introduction to Software Engineering Lecture 1.
Chapter 12: User Interface Design
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
CS 5150 Software Engineering Lecture 7 Requirements 1.
User Modeling Lecture # 7 Gabriel Spitz 1. User Interface Design Process Gabriel Spitz 2 Needs Assessment Competitive Analysis Persona Develop Task Analysis/
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 18 Goal-Directed.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Writing to Teach - Tutorials Chapter 2. Writing to Teach - Tutorials The purpose of a tutorial is to accommodate information to the needs of the user.
Task Analysis Lecture # 8 Gabriel Spitz 1. Key Points  Task Analysis is a critical element of UI Design  It describes what is a user doing or will.
Task Analysis Lecture # 8 Gabriel Spitz 1. Key Points  Task Analysis is a critical element of UI Design  It specifies what functions the user will need.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Design Evaluation Overview Introduction Model for Interface Design Evaluation Types of Evaluation –Conceptual Design –Usability –Learning Outcome.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Activity Design Goal: work from problems and opportunities of problem domain to envision new activities.
Systems Analysis Lecture 5 Requirements Investigation and Analysis 1 BTEC HNC Systems Support Castle College 2007/8.
Recall The Team Skills Analyzing the Problem (with 5 steps)
Fundamentals of Information Systems, Sixth Edition
CIS 376 Bruce R. Maxim UM-Dearborn
Lecture 9- Design Concepts and Principles
Object oriented system development life cycle
Informatics 121 Software Design I
Lecture 9- Design Concepts and Principles
Presentation transcript:

1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 7: Principles and Patterns

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Lets Review... Today's GUIs are not very usable – Software is rude, obscure, and makes unwarrented assumptions. – Software exhibits inappropriate behavior. Industry fails to build usable software – Ignorant of users: what makes them happy? – Conflicts of interest: programmers in charge. – Lack of a process, no GUI software engineering Bad GUIs can lead to unproductive users who are generally annoyed and unhappy with computer interfaces.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Tasks vs. Goals Tasks are a means to an end. Goals are the end. Goal oriented design: – Goals rarely change over time, tasks do. – Focus on goals overcomes different thinking users – Focus on tasks forces users to think odd ways – Goals are introduced in time, tasks reused. A good GUI must be designed properly: – Must know who the users are – Must know what the users want to do – Must know why the users want to use the program – Must know how the users will use the program

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Lets Review... Cooper's Design Methodology – Research – Modeling – Requirements – Framework – Refinement Research users & the domain Modeling users & use contexts Requirements user, business, & technical needs Framework structure & flow Refinement of behavior, form, context

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Research Acquisition of qualitative data. Interviews User Observation Ethnographic research Purpose: Gain a perspective of the stakeholders, customers, SMEs, and users that will be using the new product. Example: User observation of students using the Prexel web site. Interviewing student, faculty, and administration candidates.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Modeling Building a group of personas. Personas personify the archetypical user of the new product. Personas focus on: – User's roles: His or her typical jobs, goals. – User's behavioral traits, a personality. Modeling is derived from thorough analysis of research. Personas are generated by identifying groups of users of a particular role who exhibit a particular behavior.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Requirements Definition Determine the what of the design. Important what questions: – What problem does the new product solve? – What do the personas expect and want from the product? – What are the ways a persona might use the new interface? – What does my persona need from the product? This phase of design is carried out in steps – Creating problem and vision statements – Brainstorming – Identifying Persona Expectations – Constructing Context Scenarios – Identifying Persona Needs

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Defining the Interaction Framework Deciding how the interface will look. This phase answers important questions: – How does the persona work with the interface? – How will the interface look at start up? – How will interface components be grouped? – How will the real estate be used? – How will the product be used most frequently? This phase is done with steps: – Defining Form Factor and Input Methods – Defining Views – Defining Functional and Data Elements – Determining Functional Groups and Heirarchy – Sketching the Interaction Framework – Constructing Key Path Scenarios

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Key Path Scenarios Key Path scenarios follow design sketching. Scenarios describe how the persona would use the interface the most Key Path scenarios are told at a level of flow- chart diagrams, or state diagrams. Its important to enact the Persona's feelings and behavior into the Key Path scenario – i.e. If the persona is an elderly person, they may need to have bigger buttons for more commonly used features that achieve their perceived goals.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Validation Refinement stage of the design Key Path Scenario iteration Done in three stages 1) Drafting Look and Feel Include visiual designers to make wireframes, skeletons 2) Validation Scenarios Less than “key” path scenarios. Pedagogy, infrequently used but important functions. Cover all “needs”, but focus on the lesser needs. Edge cases. Remember that all functionality are not created equal! 3) Finalizing the Design Proceed from the design into implementation design, to accurately move the concepts into reality.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Principles and Patterns But wait, how do I go from this:

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Principles and Patterns To this: – Joanne moves the mouse over to select the next item in her to-do list, with the highest priority ones listed at the top in red. When selected, the item brings up information on the time line needed in the bigger window on the right. Joanne realized she finished this already, and the option of “Done” is at the bottom in a big button ready to be clicked. The answer: Principles and Patterns

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Principles and Patterns Making a design “good” Principles: Guidelines for usable form, developed over time. Patterns: Solutions to specific design issues, that can be repeated

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Interaction Design Principles Principles are characteristics of product behavior. Keep these in mind throughout the design – But most particularily when defining key path scenarios that translate into behaviors in the interface. Minimizing the User's Workload – Logical work: comprehension – Perceptiual work: coordination of shapes, colors – Mneomic work: remembering passwords, names – Physical: limit mouse movement, key strokes.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Style Guides Style Guides work on lower level details – How many pixels between labels? – How many tabs in a tab pane? – What do button highlights look like? Not essential to upper level design Create a fine-tuned interface

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Interaction Design Patterns During Design you may come up with successful design decisions. Capture them as Design Patterns Types of Design Patterns: – Postural: Conceptual level design patterns to determine overall product stance to the user. Enhances “flow”. – Structural: Management of information. How to group together data items effectively. – Behavioral: Individual function behavior, and view behavior such as the 'X' button and the “Start” menu.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Structual Design Patterns

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Interaction Design Imperatives Design must address fundamental solutions concerning: – Ethics: do no harm, improve human situations, opportunity to do good, improve civilization. – Purposeful: Help users achieve goals and aspirations, and not tedium. – Pragmatic: Help businesses achieve objectives, so that employees are paid. – Elegant: Represent simplest complete solution, posess internal coherence and coherence with other used products.