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:
- 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.
- ii. One use case is Reserve ticket.
Additional use cases can be Check in, Cancel reservation, Report day sales, Add reservation.
- 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)
: