Interview Questions for Business Analysts and Systems Analysts


Recent Interview Questions | Search | Subscribe (RSS)

?
INTERVIEW QUESTION:

What is use case generalization?

Posted by everest

Article Rating // 46678 Views // 4 Additional Answers & Comments

Categories: Unified Modeling Language (UML), Use Cases

ANSWER

In the context of use case modeling the use case generalization refers to the relationship which can exist between two use cases and which shows that one use case (child) inherits the structure, behavior,  and relationships of another actor (parent).  The child use case is also referred to the more specialized use case while the parent is also referred to as the more abstract use case of the relationship.

For those of you familiar with object oriented concepts: use cases in UML are classes and the generalization is simply the inheritance relationship between two use cases by which one use case inherits all the properties and relationships of another use case.

You can use the generalization relationship when you find two or more use cases which have common behavior/logic.  In this instance, you can describe the common parts in a separate use case (the parent) which then is specialized into two or more specialized child use cases.

Example:

If you are creating a payment system which allows students of a training provider to pay for courses both on-line and by phone, there will many things in common between the two scenarios: specifying personal info, specifying payment info, etc.  However, there would also be differences between the two.  So, the best way to accomplish this is to create one use case (the parent) which contains the common behavior and then create two specialized child use cases which inherit from the parent and which contain the differences specific to registering on-line vs. by phone.

 

print this answer

RATE THIS TOPIC

ADDITIONAL ANSWERS / COMMENTS

Erik van Eekelen posted on Thursday, July 24, 2008 7:49 AM
Although the article is theoretically correct and answers the question I must remark that I have never needed the generalize-relation while making Use Case Models. Many of my senior colleagues have neither.

The generalize relation is often misused by junior Analysts with an object oriented development background and who see reusable objects everywhere.

A Use Case is not a reusable object though, it is first and foremost a functional description of the interaction between actor and system for to get to a specific goal for an actor.

In the example of the article above, to me it would make much more sense to forget the generilization. Instead make the two different payment use cases have an include relationship with a UC that describes the common actions (such as debitting the credit card of the actor for example).
DeEtta posted on Tuesday, July 29, 2008 6:34 PM
Hi sekharny
I wanted to refer you to a couple of electronic books for business analysis. They are e-Analyst Redbooks and are posted on lulu. The Introduction to Business Analysis and UML covers UML diagrams . The links are below

Introduction to Business Analysis - http://www.lulu.com/content/2684973

Business Analysis Templates - http://www.lulu.com/content/2664674
PRASOON posted on Wednesday, June 3, 2009 11:53 PM
Hi Evaneekelen ,

I would disagree with you in this context. I have been working as a Business Analyst in the Financial Services domain for some years now.

In many cases where the implementation follows a workflow model and there are hence common workflows in many parts of the application, it has happened that we have written a common Use Case (The Parent) and made some of the other Use Cases (The Child Use Cases) call the Parent Use Case whereever required.

A quick example is custody operations where for many a functions retrieval of positions from a record keeping system is necessary. The cenral process of retrieval remaining same all the other functions which calls the retrieval mechanism may differ in their processes. In such cases use case generalization definitely works.

Regards,
Prasoon
Anonymous User posted on Wednesday, August 26, 2009 1:43 AM
in my opinion, a BA's respnsibility is not to show uasge of uml notation but:
1. to explain the problem (business) domain to a new developer or during requirment verification for obtaining sign off from stakeholders.
2. to communicate the Dev team, in a manner, so that they can find the diagrams / spec relevant during Design and construction.
One can use anything under the sun to achieve above goals.
Only registered users may post comments.

Do your homework prior to the business analysis interview!

Having an idea of the type of questions you might be asked during a business analyst interview will not only give you confidence but it will also help you to formulate your thoughts and to be better prepared to answer the interview questions you might get during the interview for a business analyst position.  Of course, just memorizing a list of business analyst interview questions will not make you a great business analyst but it might just help you get that next job.



Upcoming Live Webinars



Select ModernAnalyst Content

Register | Login

Featured Digital Library Resources 
Copyright 2006-2015 by Modern Analyst Media LLC