Software Development

Download Report

Transcript Software Development

Software Development

Chapter 2 Interface Design

Need For User Interface

 Various people from different backgrounds now use computers in everyday life  The need for a user friendly interface which the average person can productively interact with is important  This need led to the development of various types of user interfaces, categories for different types of users  The vast majority of programs are now interactive and user interfaces are often graphical

Types Of User Interfaces

There are many different types of user interfaces currently in use  Each type of interface can be characterised by the style of interaction it supports  The most common styles include: 

Command Driven

  

Menu Drive

Graphical User Interface (GUI)

Special Purpose

Styles are chosen by designers to support the particular tasks Many systems have a mixture of styles to support different tasks

Command Driven-

Command Line Interpreter (CLI)

 The command line interface was the first interactive user interface  They do not require much effort in screen design or management as a basic black or white background with contrasting text is normally used  Commands are entered at a prompt and validated by the command language interpreter before being carried out  Commands are words or mnemonics as the amount of typing should be minimal

CLI Advantages

 They may be implemented using cheap alphanumeric displays  More experienced users have direct control over the operations  Commands of almost arbitrary complexity can be created by combining individual commands  It is faster to issue a command sequence directly rather than searching through a menu  It allows complicated and sophisticated operations to be performed and combined with scripts

CLI Disadvantages

 Users have to learn a command language that can be complex  The learning time for a CLI is greater  Users always make mistakes in typing, this requires error handling and message generation facilities  System interaction is through a keyboard  It can be difficult to get the simplest operations performed  Commands across different operating systems are different

Menu Driven

 Menu driven interfaces present the user with a list of options  The user can make their selection from a keyboard or pointing device  Selecting an option may initiate a command or present the user with a sub-menu  Sub menus are said to be nested inside the menu  There are three major categories menus can be divided into: 

Full Screen Menus

 

Bar and Pull-Down Menus Pop-Up Menus

Full Screen Menus

 These menus present the options to the user as a sequential list  It is followed by a message prompting the user to select one  Options may be numbered or a letter used to uniquely identify each option and to facilitate quick selection

Bar and Pull-Down Menus

 The main options available to the user are presented as pads on a horizontal bar across the screen  When the user selects a pad the second-level options are displayed in a pull-down menu  This type of men system is used in with a pointing device  Options may also be selected using shortcut or arrow keys

Pop-Up Menus

 These menus appear as a box with one of the options already selected  When the user points to the box the other options are displayed in a list and the user can select one with the pointing device  Menu options only remain visible when the pointing button is depressed

Menu Driven Advantages

 The user is presented with a choice so does not need to remember commands  The interface is suitable for beginners  The opportunities for making serious errors are reduced  Menus can utilise special pointing devices keeping typing to a minimal

Menu Driven Disadvantages

 They are not as concise as command driven interfaces  Accomplishing a task in a menu driven interface involves more steps than a command driven interface  If there is a large number of options available it is difficult to structure the menu system  Tasks which involve logical operators are awkward to express

Graphical User Interface

 The main elements of a GUI are: 

Windows

 

Icons Menus

  

Pointers Alerts and Warnings Dialogue Boxes

WIMP

 The first four elements of a GUI were responsible for the term WIMP being applied to these type of interfaces  Using a WIMP environment allows the user to directly manipulate objects and perform operations

Windows

 A window is an interface component through which objects and actions are presented  It is an area of the screen dedicated to a specific purpose  Windows may be tiled or overlapping  They can be moved around and resized  Windows may also be scrolling

Icons

 An icon is a pictorial representation of an object or action  A unique icon represents an application when it is minimised  Icons must be understandable by users and its purpose must be clear to users

Menus

 The graphical user interface can support all types of menus  Common types are:  Pull-Down Menus    Menu Bars Scrolling Menus Pop-Up Menus

Pointers

 A pointer is a symbol displayed on the screen that is controlled by a pointing device like a mouse  It is used to point at objects and action on screen that the user wants to select  The pointer is the tool used to drive the GUI

Alerts and Warnings

 Alerts and warnings occur as pop-up menus  They notify the user of an event that requires a response  The user can choose between overriding the event or by performing the required action

Dialogue Boxes

 A dialogue box is a movable window in which users provide information that is required by an application so it can perform the user request

Processing Capabilities of a GUI

 The graphical nature of a GUI gives it the ability to perform a variety of different operations  This includes combining text and graphics

Graphical Operations

 Some operations of a GUI are:   What You See Is What You Get (WYSIWYG) editing  Refers to the representation of an image on screen being an exact image of the end result Image scanning     Processable graphics Animation and support for multimedia  The manipulation of graphics to produce moving images is called Animation Porting of documents or files across different applications  A GUI treats all files as objects, making it possible to embed one object within another. So you can use a file created in one application in another Provisions for users with disabilities  The WIMP environment is ideally suited for adjusting components for users with visual, hearing or mobility difficulties

GUI Advantages

 Users feel in control of the computer  User learning time is short  Immediate feedback on actions is given so mistakes can be detected and corrected quickly  Icons help users to recognise what objects are meant to represent  Users can transfer skills from one WIMP based operating system to another

GUI Disadvantages

 Interfaces are processor intensive and memory demanding  Powerful and expensive processors are needed to support tasks  Sometimes a longer sequence of steps is necessary to perform certain operations in a GUI  Screens can become cluttered and difficult to navigate

Special Purpose Languages

 With the ever increasing development of hardware and software many specialised user interfaces are now being created

Interface Touch screens Speech Natural language

Museums Visually and physically disabled users Speech input systems

Areas of Use

Allows users to navigate menu system of art works, etc. by touching screen with finger.

Users can get audible sounds and words from the computer.

The most natural interaction style. Speech recognition software is improving greatly but is still not perfect.

Pupils questions -

A company decides to offer DVD rental through the World Wide Web. After registering, a customer will create a list of movies that he or she would like to watch. The highest positioned available movie from the list will be posted to the customer.

When finished with the DVD, the customer will post it back. The management of the company decide to appoint a project team to oversee the implementation of a software solution.

During the design phase careful consideration will be given to the design of the user interface as well as producing a design of the detailed logic of the software.

(i) State three factors that will influence the project team when designing the user interface for software accessed on the World Wide Web.

(ii) Pseudocode is used to represent the detailed logic of the proposed software.

Describe three aspects of pseudocode that will assist the implementation of the system.

Answer

(i) Clients skill level.Existing documentation indicating user current experience.

Existing software indicating staff’s current experience/skill.

Development environment. • Hardware and software (OS) that the software will run on.

• Types of browser used to access as they have different capabilities eg layers, tables.

• Minimum bandwidth since this will affect users’ ability to view graphics, video.

• Any other acceptable answer. 1 mark for each of 3 factors (ii) • English statements which have a one to one mapping with code (1).

• Numbering reflects dependency (1).

• Indentation to indicate control structures such as repetition and selection (1).

• Data flow informs parameter passing (1).