CS 4753 Spring '95 Midterm Exam


1) For the past few years, we have been hit by natural disasters such as hurricane Hugo and the LA and San Francisco earthquakes. President Clinton has decided that, to improve his chance in the next election, his government needs to develop an emergency information system to help people seek medical help and locate their loved ones after a natural disaster. This syetem will be ready to use whenever a natural disaster occurs. Of course, this system must be easy to use and must make people feel they can't do better without it. The CS 4753 spring class at GaTech has been assigned to design an interface for this emergency information system.

Here is some information which should help you in the design:

1.1) Write data flow diagrams and a data dictionary for this application. Remember that data flow diagrams do not go down to interaction levels. It would help you save some time, and help me while reading your diagrams if, for each diagram, you put the relevant part of the data dictionary with it. Don't be obsessed with too much detail in data stores. You don't have that much time!!!

1.2) Write the results of performing a hierarchical task analysis on the two doctors' tasks mentioned above.

1.3) Write a GOMS model for the task in which a user wishes to report a missing person. You can choose to do it with:

Hints: Here are examples I copied from the book where they show the GOMS models for a PC-DOS and Macintosh file manipulation methods. Use these examples to help you out with how to write down the method for reporting a missing person. Notice the parts I italicize. Those are parts which are very characteristics of GOMS models and you are likely to have similar phrases in your answer too.
	Method for accomplishing goal of deleting a file
		Step 1  Retrieve-from-LTM that command verb is 'ERASE'
			(LTM = Long Term Memory)
		Step 2  Think of directory name and file name and make
			it the first file spec.
		Step 3  Accomplish goal of entering and executing a command
		Step 4  Return with goal accomplished
	
	Method for accomplishing goal of entering and executing a command
		Step 1  Type command verb
		Step 2  Accomplish goal of entering first filespec
		Step 3  Decide: If no second filespec, go to 5
		Step 4  Accomplish goal of entering second filespec
		Step 5  Verify command
		Step 6  Type '<CR>'
		Step 7  Return with goal accomplished
GOMS models for a graphical interface normally include steps like: For a voice interface, you can assume similar phrases such as: Note: In reality, GOMS has not been used for voice interfaces yet. The principles for applying it should be the same. They don't have sufficient data to support further numerical analysis from the model and the actual mental steps people do yet. What it means is, you can still use the approach but they don't guarantee the accuracy of the model. You shouldn't worry about this in this exam.

Assume no user mistakes in your scenario. And please, don't forget to write down which interface (A, B, C, or D) you use in your model.

Example Solution:

1.1) Dataflow diagram

1.2)

1.3)


2) The language which people use to discuss prototyping has many dimensions such as representations, scope, executability, and maturation. The one which will affect your decision a lot when you are out in the real world doing your UI design job, and the one which will always haunt you I would say, is maturation: how much does your work in prototypes transfers into the implementation of the final products. Revolutionary prototyping (where you throw away prototypes) VS. evolutionary prototyping (where you start off on the same platform as the final product) is the decision you will have to make earlier on in the design process. Please discuss pros and cons of these two approaches.

Example Solution:

Revolutionary prototyping is done using tools which are relatively fast to implement interfaces. Since it takes much less time to come up with a version of an interface, it is ready to be tested in a shorter time. With revolutionary prototyping, the evaluation cycles are short hence allowing more evaluations per interface developed. More evaluations mean better user's satisfaction since users are more involved in the design process. However, revolutionary prototyping has its disadvantages. Designers may get overly obsessed with easy to create interfaces, hence go too far in their prototypes and overpromise customers of what they would get. When the actual implementation takes place, the final interface may not look as good or function as well as the prototype, hence can cause dissatisfaction in users. Also, to gain speed in prototyping, prototypes are often created on platforms other than that of the actual implementation. There may be loss in translation and mismatches when prototypes are mapped to the actual implementation. This results in interfaces which may not be exactly the same as the ones prototyped.


3) You run into a Joe Schmoe at a party next door. Joe just took a new job as a software engineer at a new software company called MegaMemory. To his surprise, his manager has asked him to lead a user interface design process for their new personal accounting and tax software product called Recursion®. Fresh out of school and trained as a software engineer, Joe is ready to apply his knowledge of the waterfall model as a methodology for this UI design project. While zipping his beer, Joe blurbs his intention out to you.

You, trained to be more sensitive to human factors and user-centered design, feel an urge to save Joe from frustrations which may come later on in his project. Here is your chance to convince Joe of the drawback of the waterfall model for HCI design and to suggest the Star model as an alternative methodology to him. Please discuss the nature of the Star model, its differences from the waterfall approach, and why it makes better sense to use the Star model for HCI design. Here's a picture of the Star model to refresh your memory... the Star model

Example Solution:

The waterfall model implies that design activities be followed in a sequential fashion. This model is in general rather restrictive. It is more so for the user interface design process given that interfaces can not be designed exactly right regardless of how much time or efforts have been put in the initial design. Often, user and system requirements often cannot be thouroughly gathered in one shot. Often when prototypes are tested out with real users, more requirements are revealed and collected. Also, putting evaluation later in the process as indicated by the waterfall model is rather too late. The results from evaluation may be too hard or too cumbersome to incorporate into the initial design.

The star model, since it is developed from experience of HCI designers and researchers, is believed to be more appropriate for user interface design process. It outlines the user interface development process as a flexible process which may start with any activities and may happen singly or in parallel. The emphasis of the star model is on evaluation. Every design activity is followed by evaluation, hence implies user involvement early in and throughout the design process. The star model also implies that designing user interfaces can be either bottom up or top down or both, indicating that there's no right or wrong approach in starting the design process.