3 The user interfaceUser interfaces should be designed to match the skills, experience and expectations of its anticipated users.System users often judge a system by its interface rather than its functionality.A poorly designed interface can cause a user to make catastrophic errors.Poor user interface design is the reason why so many software systems are never used.
4 Human factors in interface design Limited short-term memoryPeople can instantaneously remember about 7 items of information. If you present more than this, they are more liable to make mistakes.
5 Human factors in interface design (cont.…) People make mistakesWhen people make mistakes and systems go wrong, inappropriate alarms and messages can increase stress and hence the likelihood of more mistakes.People are differentPeople have a wide range of physical capabilities. Designers should not just design for their own capabilities.
6 UI design principlesUI design must take account of the needs, experience and capabilities of the system users.Designers should be aware of people’s physical and mental limitations (e.g. limited short-term memory) and should recognise that people make mistakes.UI design principles underlie interface designs although not all principles are applicable to all designs. Graphic designers – own style of interactions, terminology and operating conventions.
7 User interface design principles DescriptionUser familiarityThe interface should use terms and concepts which are drawn from the experience of the people who will make most use of the system.ConsistencyThe interface should be consistent in that, wherever possible, comparable operations should be activated in the same way.Minimal surpriseUsers should never be surprised by the behaviour of a system.RecoverabilityThe interface should include mechanisms to allow users to recover from errors.User guidanceThe interface should provide meaningful feedback when errors occur and provide context-sensitive user help facilities.User diversityThe interface should provide appropriate interaction facilities for different types of system user.
8 Design principlesUser familiarityThe interface should be based on user-oriented terms and concepts rather than computer concepts. For example, an office system should use concepts such as letters, documents, folders etc. rather than directories, file identifiers, etc.
9 Design principlesUser familiarityThe interface should be based on user-oriented terms and concepts rather than computer concepts. For example, an office system should use concepts such as letters, documents, folders etc. rather than directories, file identifiers, etc.
10 Design principlesConsistencyThe system should display an appropriate level of consistency. Commands and menus should have the same format, command punctuation should be similar, etc.Minimal surpriseIf a command operates in a known way, the user should be able to predict the operation of comparable commands
11 Design principles Recoverability The system should provide some resilience to user errors and allow the user to recover from errors. This might include an undo facility, confirmation of destructive actions, ‘soft' deletes, etc.User guidanceSome user guidance such as help systems, on-line manuals, etc. should be suppliedUser diversityInteraction facilities for different types of user should be supported. For example, some users have seeing difficulties and so larger text should be available
12 Error messagesError message design is critically important. Poor error messages can mean that a user rejects rather than accepts a system.Messages should be polite, concise, consistent and constructive.The background and experience of users should be the determining factor in message design.
13 The UI design processUI design is an iterative process involving close liaisons between users and designers.The 3 core activities in this process are:User analysis. Understand what the users will do with the system;System prototyping. Develop a series of prototypes for experiment;Interface evaluation. Experiment with these prototypes with users.
15 User analysisIf you don’t understand what the users want to do with a system, you have no realistic prospect of designing an effective interface.User analyses have to be described in terms that users and other designers can understand.Scenarios where you describe typical episodes of use, are one way of describing these analyses.
16 User interface evaluation Some evaluation of a user interface design should be carried out to assess its suitability. Full scale evaluation is very expensive and impractical for most systems.Ideally, an interface should be evaluated against a usability specification. However, it is rare for such specifications to be produced.
17 Simple evaluation techniques Questionnaires for user feedback.Video recording of system use and subsequent tape evaluation.Instrumentation of code to collect information about facility use and user errors.The provision of code in the software to collect on-line user feedback.
18 Key pointsUser interface design principles should help guide the design of user interfaces.Interaction styles include direct manipulation, menu systems form fill-in, command languages and natural language.Graphical displays should be used to present trends and approximate values. Digital displays when precision is required.Colour should be used sparingly and consistently.
19 Key pointsThe user interface design process involves user analysis, system prototyping and prototype evaluation.The aim of user analysis is to sensitise designers to the ways in which users actually work.UI prototyping should be a staged process with early paper prototypes used as a basis for automated prototypes of the interface.The goals of UI evaluation are to obtain feedback on how to improve the interface design and to assess if the interface meets its usability requirements.
20 DATA INPUT DESIGNInput technology has changed dramatically in recent yearsThe quality of the output is only as good as the quality of the inputGarbage in, garbage out (GIGO)Data captureData entry
21 DATA INPUT DESIGN (Cont.…) Input and Data Entry MethodsBatch input- BatchOnline input- Online data entry- Source data automation- RFID tags or Magnetic data strips
22 DATA INPUT DESIGN (Cont.…) • Input and Data Entry MethodsTradeoffs- Unless source data automation is used, manual data entry is slower and more expensive than batch input because it is performed at the time the transaction occurs and often done when computer demand is at its highest- The decision to use batch or online input depends on business requirements
23 DATA INPUT DESIGN (Cont.…) INPUT VOLUMEGuide lines will help reduce input volumeInput necessary data onlyDo not input data that the user can retrieve from system file source calculate from other data.Do not input constant dataUse codes
24 DATA INPUT DESIGN (Cont.…) Designing Data Entry ScreensMost effective method of online data entry is form filling:Guidelines that can help design data entry screensRestrict user access to screen locations where data is entered2. Provide a descriptive caption for every field, and show the user where to enter the data and the required or maximum field size
25 DATA INPUT DESIGN (Cont.…) 3. Display as ample format if a user must enter values in a field in a specific format separator 4. Require an ending key stroke for every field 5. Do not require users to type leading zeroes for numeric fields 6. Do not require users to type trailing zeroes for numbers that include decimals
26 DATA INPUT DESIGN (Cont.…) 7. Display default values so operators can press the ENTER key to accept the suggested value 8.Use a default value when a field value will be constant for successive records or through out hedata entry session 9. Display a list of acceptable values for fields, and provide meaning full error messages
27 DATA INPUT DESIGN (Cont.…) 10. Provide the way to leave the dater entry screen at any time without entering without entering the current recorded. 11. Provide the opportunity for the user to conform the accuracy of the input data before entering it 12. Provide means for user to move among fields on the form
28 DATA INPUT DESIGN (Cont.…) 13. Design the screen form layout to match the layout of the source document14. Allow users to add, change, delete, and view records15. Provide a method to allow users to search for specific information
29 DATA INPUT DESIGN (Cont.…) At leas eight types of data validation checksSequence checkExistence checkData type checkRange check–limit check
30 DATA INPUT DESIGN (Cont.…) Reasonableness checkValidity check–referential integrityCombination checkBatch controls–hash total
31 DATA INPUT DESIGN (Cont.…) Source document:Form layoutHeading zoneControl zoneInstruction zoneBody zone–Totals zoneAuthorization zone
32 DATA INPUT DESIGN (Cont.…) Source DocumentsInformation should flow on a form from left to right and top to bottom to match the way users read documents naturallyA major challenge of Web-based form design is that most people read and interact differently with on-screen information compared to paper forms
33 DATA INPUT DESIGN (Cont.…) Input ControlEvery piece of information should be traceable back to the input dataAudit trailData securityRecords retention policyEncrypted–encryption
35 All around us!WebsitesSmartphonesATM’sElectronic voting machines
36 User Interface vs. System Interface System Interface- Requires minimal to no human interactionUser Interface- User comes into contact with system to a large extentImportance of the above distinction- Design and Extent of Input controls and Input security measures is dictated by whether it is System or User InterfaceEach requires different techniques to implement
37 Input Controls-In depth Analysis Input controls are built within the system, application or database to protect data and programs within the system
38 Why User Interface Controls? Safeguard assets of the companySoftwareInformationPermit only appropriate and correct transactionsEnsure that processing and recording of business information is performed correctly
40 Data Validation Check for: Existence Format Data type Combinations Domain
41 GUI controlsWhy Gui Controls? They enforce the Rules e.g. existence, data types, domainExamples?Text BoxesPassword BoxesRadio ButtonsDrop down menus