Friday 8 November 2013

Learning Use cases : Welcome Party


Have you ever had dreams where you had continued solving the algebraic equations in your sleep that you had been solving for the whole day? Have you dream of failing an exam on the very same night when you had given an exam? Have you ever been in a situation where you found yourself applying concepts learnt in classrooms to your daily life?

Well, Software Engineering does wonders to your brain. Every place I visit, every party I go to, my head starts working like a SDLC* machine. Just last week, I have been through this unique experience during an event which was jointly launched by SGA** and sophomore batch to welcome the Freshmen Students at SEECS. After attending a progressive lesson on Use Case building and analysis in the morning, the masquerade felt more like a scenario in which my mind was gathering requirements and building use cases for the party.




As shown above, each use case represents a discrete task that involves external interaction with a system such as Team Recruitment, Stage Performances, Décor, Logistics, Security and Media.
Actors in the use case may be people or other systems involved in the interaction. In our welcome party, the actors were the batch presidents, the guests of the welcome, the performers, the SGA Committee and the photographers from Aloo Clan. In the pre-party period, the Batch presidents recruited and headed the arrangement.

As shown in the diagram, Stage performance extends three other use-cases namely, anchoring, music performances and drama/plays. The concept of includes and extends is such that both include and extends breaks a use-case out as a separate use-case and let the other ones “include/extend” it. What distinguishes extends from includes is that if you have a piece of behavior that is similar across many use cases, you can break it as a separate use-case and let the other use-cases “include” it. On the other hand, if a use-case is similar to another use case but does a little bit more, you can put the normal behavior in one use-case and let it “extend” the exceptional behavior.

What we learnt today:
·         Using Use-Cases to define interaction models

·         Using “includes” and “extends”


*SDLC: Software Development Life Cycle
**SGA: Student Government Association at SEECS

3 comments: