GUI Week 9
Agenda (Lecture) GUI
Agenda (Lab) Development of GUI prototype for your group project. Weekly progress report Submit the progress report, quizzes and a snap-shot of GUI by the end of the Wednesday lab session.
Team Lab Assignment #9 Create a snapshot of GUI for your group project. Due date The end of the 3/23 lab session
Team Homework 9 (“With enough eyeballs, all bugs are shallow.”) Exchange a use case diagram/descriptions, a system-level activity diagram, system-level statechart diagram, CRC cards and an analysis-level class diagram between teams as follows Team 1 and 5; Team 2 and 4; Team 3 (self-test) Inspect other team’s documents and fill out the review form http://www.csun.edu/~twang/380/LectureSlides/ReviewForm.docx Due date The beginning of the Oct. 25th lecture
“Traceability” of Documents http://www.csun.edu/~twang/380/LectureSlides/ATMSimulatorDocumentsIntegrated.pdf
The Importance of User Interface In reality, the user interface is an essential part of the software product The user interface should be designed to match the skills, experience and expectations of its anticipated users
Principles of User Interface Design Description User familiarity The interface should use terms and concepts drawn from the experience of the people who will make most use of the system. Consistency The interface should be consistent in that, wherever possible, comparable operations should be activated in the same way. Minimal surprise Users should never be surprised by the behavior of a system. Recoverability The interface should include mechanism to allow users to recover from errors. User guidance The interface should provide meaningful feedback when errors occur and provide context-sensitive user help facilities. User diversity The interface should provide appropriate interaction facilities for different types of system users.
The Success of Products Successful case stories Microsoft Windows Web browsers iPhone etc.
Advantages and Disadvantages of User Interface Styles Interaction style Advantages Disadvantages Examples Direct manipulation Fast and intuitive interaction Easy to use May be hard to implement Only suitable where there is a visual metaphor for tasks and objects Video games CAD systems Menu selection Avoids user error Little typing required Slow for experience users Can become complex if many menu options Most general-purpose systems Form fill-in Simple data entry Easy to learn Task up a lot of screen space Causes problems where user options do not match the form fields Stock control Personal loan processing Command languages Powerful and flexible Hard to learn Poor error management Command and control systems Natural language Accessible to casual users Requires more typing Natural language understanding systems are unreliable Information retrieval system
UI Development Process Analyze and understand user activities Produce paper-based design prototype Evaluate design with end-users Design Prototype Produce design prototype Evaluate design with end-users Executable Prototype Implement final user interface
NetBeans GUI Builder http://www.netbeans.org/kb/60/java/gui-functionality.html Tuesday, September 18, 2018
The Importance of User Interface In reality, the user interface is an essential part of the software product The user interface should be designed to match the skills, experience and expectations of its anticipated users
Principles of User Interface Design Description User familiarity The interface should use terms and concepts drawn from the experience of the people who will make most use of the system. Consistency The interface should be consistent in that, wherever possible, comparable operations should be activated in the same way. Minimal surprise Users should never be surprised by the behavior of a system. Recoverability The interface should include mechanism to allow users to recover from errors. User guidance The interface should provide meaningful feedback when errors occur and provide context-sensitive user help facilities. User diversity The interface should provide appropriate interaction facilities for different types of system users.
The Success of Products Successful case stories Microsoft Windows Web browsers iPhone etc.
Advantages and Disadvantages of User Interface Styles Interaction style Advantages Disadvantages Examples Direct manipulation Fast and intuitive interaction Easy to use May be hard to implement Only suitable where there is a visual metaphor for tasks and objects Video games CAD systems Menu selection Avoids user error Little typing required Slow for experience users Can become complex if many menu options Most general-purpose systems Form fill-in Simple data entry Easy to learn Task up a lot of screen space Causes problems where user options do not match the form fields Stock control Personal loan processing Command languages Powerful and flexible Hard to learn Poor error management Command and control systems Natural language Accessible to casual users Requires more typing Natural language understanding systems are unreliable Information retrieval system
UI Development Process Analyze and understand user activities Produce paper-based design prototype Evaluate design with end-users Design Prototype Produce design prototype Evaluate design with end-users Executable Prototype Implement final user interface
NetBeans GUI Builder http://www.csun.edu/~twang/380/LectureSlides/GUIBuilder.pdf http://www.netbeans.org/kb/60/java/gui-functionality.html Tuesday, September 18, 2018