CS 501: Software Engineering Fall 2000 Lecture 17 Design for Usability I.

Slides:



Advertisements
Similar presentations
Chapter 11 Designing the User Interface
Advertisements

ZoomText, Step-by-Step IU Adaptive Technology Center.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 11 Designing for Usability I.
DT211/3 Internet Application Development Active Server Pages & IIS Web server.
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Web browsers.
CS CS 5150 Software Engineering Lecture 11 Usability 1.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 10 Requirements 4.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Interpret Application Specifications
CS CS 5150 Software Engineering Lecture 11 Usability 1.
1 CS 501 Spring 2007 CS 501: Software Engineering Lectures 11 & 12 Usability.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 11 Usability 1.
1 CS 501 Spring 2006 CS 501: Software Engineering Lectures 11 & 12 Usability.
Chapter 13: Designing the User Interface
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Principles of Computer Security: CompTIA Security + ® and Beyond, Third Edition © 2012 Principles of Computer Security: CompTIA Security+ ® and Beyond,
Web Technologies Website Development Trade & Industrial Education
1 SWE 513: Software Engineering Usability II. 2 Usability and Cost Good usability may be expensive in hardware or special software development User interface.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
14 Chapter 11: Designing the User Interface. 14 Systems Analysis and Design in a Changing World, 3rd Edition 2 Identifying and Classifying Inputs and.
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
Web Page Design I Retest Terms Review. 1. Web pages are created using a language known as ___________. The coding of this language must follow specific.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
1 CS 430: Information Discovery Lecture 15 Usability 2.
Department of Information Engineering 1 What is –Java? –Javascript –VisualBasic –CGI –NT –Linux –Unix.
The ID process Identifying needs and establishing requirements Developing alternative designs that meet those requirements Building interactive versions.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
AS Level ICT Selection and use of appropriate software: Interfaces.
Computing and the Web Operating Systems. Overview n What is an Operating System n Booting the Computer n User Interfaces n Files and File Management n.
Tutorial 1: Browser Basics.
CS CS 5150 Software Engineering Lecture 11 Usability 1.
Copyright © 2010 Wolters Kluwer Health | Lippincott Williams & Wilkins Introduction to Windows Chapter 2.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 12 Designing for Usability II.
INFO 355Week #71 Systems Analysis II User and system interface design INFO 355 Glenn Booker.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
1 CS 430: Information Discovery Lecture 19 User Interfaces.
CS 5150 Software Engineering Lecture 9 Usability 1.
1 CS 501 Spring 2008 CS 501: Software Engineering Lectures 11 & 12 Usability.
CS CS 5150 Software Engineering Lecture 12 Usability 2.
CS 360 Lecture 13.  Human Computer Interaction (HCI) is the academic discipline that studies how people interact with computers.  More HCI details during.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
1 CS 430: Information Discovery Lecture 14 Usability I.
Web Programming Overview. Introduction HTML is limited - it cannot manipulate data How Web pages are extended (include): –Java: an object-oriented programming.
1 CS 430 / INFO 430 Information Retrieval Lecture 25 Usability 3.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 13 Usability 1.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 12 Usability 2.
CS 501: Software Engineering Fall 1999 Lecture 22 (a) Managing the Software Process (b) Software Reuse.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
WWW and HTTP King Fahd University of Petroleum & Minerals
Guide To UNIX Using Linux Third Edition
BTEC NCF Dip in Comp - Unit 15 Website Development Lesson 12 – Publish and Test Mr C Johnston.
PHP / MySQL Introduction
Usability and user Interfaces
Chapter 27 WWW and HTTP.
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Planning and Storyboarding a Web Site
CS 501: Software Engineering
Presentation transcript:

CS 501: Software Engineering Fall 2000 Lecture 17 Design for Usability I

2 Administration Midterm examination

3 Q2: Finite State Machine The cruise control system on an automobile is controlled by a master switch and three buttons. Initially, it is turned on by the master switch. The master switch can be turned off at any time. When first turned on, the system enters stand-by mode. When the system is in stand-by mode, the driver of the automobile can press Button A to engage the cruise control at the current speed of the automobile. When the cruise control is engaged, if the driver presses the brake or presses Button B the system will be disengaged and return to stand-by mode. After returning to stand- by mode, the driver can press Button C to engage the cruise control at the speed that it was set at previously. (After the system is first turned on, Button C has no effect.) When the cruise control is engaged, the driver can press Button A to increase speed by one mile per hour or Button C to decrease speed by one mile per hour.

4 State Transition Diagram OffStandbyEngaged Standby1 MS-On B-Brake MS-Off A A C CA

5 State Transition Table MS on MS off A B Brake C Off Standby Engaged Standby1 Standby Off Engaged Standby1 Engaged

6 Question 4 When software is written, who owns the copyright? How can somebody else be permitted to use the software? How can copyright be transferred to somebody else?

7 Question 4 When software is written, who owns the copyright? The person who writes the software Except work for hire -- the employer How can somebody else be permitted to use the software? By permission from the copyright owner (usually a license) How can copyright be transferred to somebody else? Copyright is property that can be sold or given away (usually a contract)

8 Question 4 You are employed for company X writing software. When you leave, who owns your work? What use can you make of the work?

9 Question 4 You are employed for company X writing software. When you leave, who owns your work? The company (work for hire) What use can you make of the work? None without permission of the copyright owner

10 Question 4 You work free-lance for company X. When you finish, who owns your work? What use can you make of the work?

11 Question 4 You work free-lance for company X. When you finish, who owns your work? It depends on the circumstances Have a written contract What use can you make of the work? If you hold the copyright -- unrestricted Otherwise -- none without agreement

12 Distributed Objects and the System Life-Cycle All large systems change with time. Dynamic binding of objects combined with polymorphism permits the addition of extra object types, incremental changes, etc. to be localized. Development environments change with time. Language bindings and IIOP permit changes. Production environments changes with time. Code can be reused in different environments.

13 Design for Usability Usability of a computer system is a combination of factors: User interface design Functionality Performance Help systems and documentation Freedom from errors Anything else?

14 Iterative Design Requirements Design Implementation (prototype) Evaluation

15 Methods for Evaluation of Usability Observing users (user protocols) Focus groups Measurements effectiveness in carrying out tasks speed Expert review Client's opinions Competitive analysis

16 Levels of Usability interface design functional design data and metadata computer systems and networks conceptual model

17 The Conceptual Model The conceptual model is the user's internal model of what the system provides: The desk top metaphor -- files and folders The web model -- click on hyperlinks The library model -- search and retrieve The form filling model -- fill form, submit Example: The Mercury page turner

18 Interface Design The interface design is the appearance on the screen and the actual manipulation by the user Fonts, colors, logos, key board controls, menus, buttons Mouse control or keyboard control? Conventions (e.g., "back", "help") Example: Screen space utilization in the Mercury page turner

19 Principles of Interface Design Interface design is partly an art; there are general principles: Consistency -- in appearance, controls, and function. Feedback -- what is the computer system is doing? why does the user see certain results? Users should be able to interrupt or reverse actions Error handling should be simple and easy to comprehend Skilled users offered shortcuts; beginners have simple, well-defined options The user should feel in control

20 Disabilities What if the user: is visually impaired or color blind? does not speak English? is a poor typist? There is a tradition of blind programmers Navigation of web sites need not be only visual You may have a legal requirement to support people with disabilities

21 Functional Design The functional design, determines the functions that are offered to the user Selection of parts of a digital object Searching a list or sorting the results Help information Manipulation of objects on a screen Pan or zoom

22 Same Functions, Different Interface Example: The desk top metaphor Mouse -- 1 button (Macintosh), 2 button (Windows) or 3 button (Unix) Close button -- left of window (Macintosh) right of window (Windows)

23 Data and Metadata Data and metadata stored by the computer system enable the functions and the interface The desktop metaphor has the concept of associating a file with an application. This requires a file type to be stored with each file: -- extension to filename (Windows and Unix) -- resource fork (Macintosh) Data validation often requires that a user interface has access to a database (e.g., names and addresses)

24 Computer Systems and Networks The performance, reliability and predictability of computer systems and networks is crucial to usability Response time instantaneous for mouse tracking and echo of key stroke 5 seconds for simple transactions Example: Pipelined algorithm for the Mercury page turner Quality of Service for real time information

25 Design Tensions in Networked Systems Client computers and network connections vary greatly in capacity Client software may run on various operating systems; it may be current or an earlier version System designers wish to control clients; users wish to configure their own environments

26 Usability and Cost Performance may be expensive in hardware or special software development User interface development may be a major part of a software development project Costs are multiplied if a user interface has to be used on different computers or migrate to different versions of systems Web browsers provide a general purpose user interface that others maintain

27 Extensibility in Web Browsers Data types: helper applications, plug-ins Protocols HTTP, WAIS, Gopher, FTP, etc. proxies Executable code CGI scripts at server JavaScript at client Java applets Style sheets