UNIT 3:

ADVANCED STATE MODELING, INTERACTION MODELING:

1.Explain aggregation concurrency within an object with an example each.(8 M) [Jan 14 ]

•The state model implicitly supports concurrency among objects.

•In general, objects are autonomous entities that can act and change state independent of one another. However objects need not be completely independent and may be subject to shared constraints that cause some correspondence among their state changes.

Aggregation concurrency

concurrency within an object

2.Consider an online airline reservation system. You want to check airline websites to give your ideas. (12 M) [Jan 14 ]

i.List two actors. Explain relevance of each other.

ii.One use case is to make a flight reservation. List four additional use cases at the comparable level of abstraction. Summarize the purpose of each use case with a sentence.

iii.Prepare a use case diagram for an airline reservation system.

Sol:

  1. Ticket & Check-in assistant, Accounting system, Sales controller. Ticket & Check-in assistant (interacts with Customer) help to reserve the ticket. Accounting system will be managing the transactions. Sales Controller able to control the process.
  2. ii. One use case is Reserve ticket.

Additional use cases can be Check in, Cancel reservation, Report day sales, Add reservation.

  1. In below diagram, the top level diagram makes it simple to see what the airline reservation system consists of. It also shows who the actors are that interact with the system. The sales controller and ticket assistant are people, but another actor includes the airline accounting system.

The sub diagram for the Check in use case is also shown in more detail in the form of sub diagram. You can see that the check in use case includes the assign seat case and the weigh baggage case. Moreover, the weigh baggage case itself has two special versions that deal with hand luggage and cargo baggage respectively.

3.Explain the guidelines for the following models:

I) Sequence models

ii)Activity models. (8m) June 2013

Sol:

Guidelines for sequence models

Prepare at least one scenario per use case

Abstract the scenarios into sequence diagrams

Divide complex interactions

Prepare a sequence diagram for each error condition

Guidelines for Activity model

  • Don’t misuse activity diagrams
  • Do no be used as an excuse to develop software via flowcharts.
  • Level diagrams
  • Be careful with branches and conditions
  • Be careful with concurrent activities
  • Consider executable activity diagrams

4.Explain the following with an example for designing advanced sequence models:

(i) Active objects (ii) passive objects (iii) transient objects.

(12m) June 2013

Sol:

5.How an activity diagram differs from a traditional flowchart? Give the activity diagram for stock trade processing. (08 M) Jan 2014 solution:

Start at the top black circle

If condition 1 is TRUE, go right; if condition 2 is TRUE, go down

At first bar (a synchronization bar), break apart to follow 2 parallel paths

At second bar, come together to proceed only when both parallel activities are done Activity – an oval

Trigger – path exiting an activity

Guard – each trigger has a guard, a logical expression that evaluates to “true” or “false”

Synchronization Bar – can break a trigger into multiple triggers operating in parallel or can join multiple triggers into one when all are complete

Decision Diamond – used to describe nested decisions (the first decision is indicated by an activity with multiple triggers coming out of it)

: