Tuesday, October 2, 2012

Robot tracing (2003)

Endsley, M. R., Bolstad, C. A., Jones, D. G., & Riley, J. M.(2003). Situation awareness oriented design: From user's cognitive requirements to creating effective supporting technologies. In Proceedings of the 47th Annual Meeting ofthe Human Factors & Ergonomics Society (pp. 268-272).Santa Monica, CA: Human Factors & Ergonomics Society

This paper explains briefly an SA-oriented design framework; how to go from a system requirements to construct an SA-oriented design. Authors, had written a book on SA design from a perspective of a user-centric design. In this paper, authors try to focus on steps needed to conduct an SA Oriented design, and then provides an example of such design from military. The novelty of their work was, the conduction of an SA oriented design where they integrate the SA tasks with user goals.

So, first lets discuss Situation Awareness (SA). SA is human state where a human knows what are the factors that happen in the surrounding environment that would affect his/her decisions in performing any task. Example, user is driving a car. When user wants to stop, he/she will build the SA from looking at the street and other cars, looking at the dashboard, fuel level, etc, to help him/her to stop probably.

When do we need situation awareness when designing system? When user task involves decision making which relay on many variables , or factors, user errors can be heavily driven from bad interpretation, or missing data of those variables. Thus, SA is important for decision making user tasks. Another use of SA is to help managing multiple system. Example, in the previous paper, single user wants to control multi robots, with all the given variables, this can be difficult, that’s we need a good SA design to come along with such system.

One major problem about SA is that it reside inside human operator mind. Unlike user goals which can be written well. So, the key idea here is to link user goals (or requirements) with SA to form a better decision support system interface. The SA oriented design process include three main steps:

  1. SA requirements analysis
  2. SA-oriented design principles
  3. SA measurements
Step (2) and (3) can be repeated to enhance this model.

Step1: SA Requirements Analysis
The goal of this step is to conduct SA requirements by identifying user cognitive tasks. User cognitive tasks can be identified using Goal-Directed task analysis (GDTA) - GDTA before in the blog. So, using the GDTA, we can conduct the requirements by identifying the following for every user task:

  • Goal
  • Information needed to achieve that goal
  • Integration of such information to be presented to operator (user) to be meaningful and therefore support decision
So, SA requirements will be associated with every user goal, or subgoal to explain the above. One thing to put in mind when conducting SA requirements, that the focus here is user goals, not user tasks!

Step2: SA-Oriented Design
In this step, they cited a book which three of the authors wrote earlier (at 2003). They indicated that the book provided 50 design principles for SA design. Those principles focuses on the dynamic switching between goal-driven process, and data-driven process. So, they indicated that in order to conduct an SA oriented design, you should follow SA-oriented design principles. The paper didn't dive much into details about how to conduct an SA-oriented design. In fact, authors selected some design principles and discussed them.


Step3: SA Design Measurements
After conducting the design to enhance operator’s (user) SA, we need to verify if the new design does really help increasing user situation awareness, or not? In order to verify the design, authors suggested in their framework the use of: Situation Awareness Global Assessment Technique (SAGAT) (1995). Again, this approach was just mentioned but never discussed in the paper.


The rest of this paper explains an example of SA-oriented implementation on the military field application. In their example, they had a battle field where decisions has to be made according to the data came from the field. They developed different interfaces to different level of commands. Higher commanders would need an abstract SA-oriented design, yet detailed as needed to support their decisions.

HTA exercise

This is a small exercise where I'm performing Hierarchical Task Analysis (HTA) on Pizza Delivery System (PDS). Briefly, PDS is a system which runs pizza shop starting from order taking, queuing items in kitchen, preparing items, stacking order items, and delivering items. In the following excises, I have conducted an HTA of five major user tasks. I will give an HTA diagram of each with title,and brief description in this entry. Click on pictures to enlarge.

Task 1: Place Order
Order taker takes an order from customer, place it in the system, then calculate the total and estimated time to be delivered.
0. Using "Place Order"
1. Select Item
2. Enter item quantity 
3. Enter additional ingredients
  3.1 Select ingredients
  3.2 cluck add ingredients
4. Submit order
5. verify order

Plan 0: do 1-2 in that order, then 3 if necessary, in the previous order repeat as necessary, then 4-5 in order
Plan 3: do 3-4 in that order and repeat as necessary


Task 2: Change Order
Customer calls the store, and asks to change his/her order.



0. Using "Change order"
1. Query order name
   1.1 Enter order name
   1.2 Enter phone number
2. Change item
   2.1 Change quantity (0 to delete)
   2.2 Add ingredient
   2.3 Delete ingredient

Plan 0: do 1-2 in that order.
Plan 1: do 1.1-1.2 if necessary in any order.
Plan 2: do 2.1-2.2-2.3 if necessary and repeat in any order.



Task 3: Cancel Order
Customer calls the store, and asks to cancel order.



0. Using "Cancel order"
1. Query order
   1.1 Enter order number
   1.2 Enter phone number
2. Cancel specific order
   2.1 Click cancel button
   2.2 confirm cancellation

Plan 0: do 1-2 in that order.
Plan 1: if necessary do in any order 1.1-1.2.
Plan 2: do 2.1-2.2 in that order.


Task 4: Cook Order
Order has been placed, it will be forwarded to the kitchen and placed in a queue to be prepared. Cook will take the next item in the queue and start preparing it.



0. Using "Cook order"
1. Prepare order
   1.1 Read item details off the screen
   1.2 Prepare item to be placed in the oven
2. Place item in the oven
3. Take item out of the oven
4. Finish order
   4.1 Read order items off the screen
   4.2 Stack order items together to be delivered

Plan 0: do 1-2-3-4 in that order.
Plan 1: do 1.1-1.2 in that order.
Plan 4: do 4.1-4.2 in that order.


Task 5: Change Store Functions
Store Manager at the begging of the every work day can manage: store menu items, cooks, oven, and deliverers.



0. using change "store functions"
1. Manage menu items
   1.1 Add new menu item
   1.2 Change item
   1.3 Delete item
2. Manage cooks
   2.1 Add cook
   2.2 Change cook
   2.3 Delete Cook
3. Manage ovens
   3.1 Add oven
   3.2 Delete oven
4. Manage deliverers
   4.1 Add deliverers
   4.2 Delete deliverer
5. Manage delivery locations
   5.1 Add location
   5.2 Change location
   5.3 Delete location

Plan 0: if necessary do any of the following in any order or combination 1-2-3-4-5
Plan 1: if necessary do any of the following in any order or combination 1.1-1.2-1.3
Plan 2: if necessary do any of the following in any order or combination 2.1-2.2-2.3
Plan 3: if necessary do any of the following in any order or combination 3.1-3.2
Plan 4: if necessary do any of the following in any order or combination 4.1-4.2
Plan 5: if necessary do any of the following in any order or combination 5.1-5.2-5.3