Forums for the Business Analyst

 
  Modern Analyst Forums  Business and Sy...  Requirements  semantic related question that I am struggling with
Previous Previous
 
Next Next
New Post 1/7/2008 3:56 PM
User is offline Perry McLeod
70 posts
8th Level Poster




semantic related question that I am struggling with 

Community,

I have a semantic related question that I am struggling with.

I'm writing a high level series of lectures to help explain the totality of what we do. I'm at 700 pages so far covering ...

  1. Preambles on the business, guiding principles integrated delivery and requirements and change management
  2. Understand an iterative rational approach
  3. Understand the Business Analyst’s role in building requirements within a business model
  4. Understand the basic process of business analysis
  5. Understand different levels of requirements and how they feed into testing
  6. Understand the components of a business requirements document
  7. Understand how to gather requirements
  8. Understand how to write structured requirements
  9. Understand Business Process Modeling and its concepts
  10. Understand Object Oriented Modeling and its concepts
  11. Understand how to create the models as requirements
  12. Understand how to package the BRD
  13. Understand how to transition to the development process

I'm in the middle of covering use cases within the UML key concepts framework. I am writing about the components needed for a use case. I'm on business events.

I am stating that only ONE business event (trigger) per use case. Do you agree? Assuming that is an accurate statement here is my dilemma

In the example of RENT VIDEO

You may have a trigger that reads “This use case starts when the customer approaches a video counter and presents a video to a client service representative”

This does not allow for other ways to rent a video such as on-line or at a kiosk. If I alter the business event to read ....

“This use case starts then the customer either approaches a video counter and presents a video to a client service representative, logs into their online account and selects a rent video option or inserts a credit card into a kiosk and selects a rent video option."

To me this breaks the one event rule even though it is written as a single sentence. Do you agree?

If so ..... would you agree that to solve the problem we would have to abstract the RENT VIDEO use case and create specialized use cases to handle the other options?

If so how .... how might that business event be written because it's still an OR option but in this case takes you to 1 of 3 other use cases.

what are your thoughts community? this all hinges on if you agree that there should only be one trigger / business event per use case.

its all semantics I know but I'm trying to establish a best practice to teach here at my current contract. I also plan to post my writings on my site and here as well.

any thoughts you have would be really helpful

 
New Post 1/7/2008 4:23 PM
User is offline Chris Adams
323 posts
5th Level Poster






Re: semantic related question that I am struggling with 
Modified By Chris Adams  on 3/3/2008 6:06:24 PM)

Perry,

I don't envy you right now.  On one hand, having the opportunity to review your current knowledge of these concepts and expand further on that knowledge is a great opportunity!  On the other hand, Use Cases is a topic that appears quite simple but can be very complex.  Why, because Use Cases are probably the least formalized part of UML in my opinion.  Notice the UML specification never gives a use case description template. 

On more than one occasion I've had to dive into the details you are asking about.  Since the UML specification doesn't go into detail, I often found questions that the specification just doesn't answer.  There are a great number of books on use cases now, but many of them have different rules on how to do things that are clearly specified by the UML spec.

Okay, so that should help everyone understand why they aren't quite as easy as they seem. 

I have used the approach that you can have more than one triggering event.  Why not? Life just works that way sometimes.  Multiple causal events can result in the same set of actions on the part of the actor.  You may want to clarify whether you are working with business use cases or system use cases.  It looks more like a business use case example, but really this probably has no effect on this discussion.  I just like to point out to people that both exist.

I also see what you are trying to do with the use case abstraction, i.e., using the generalization relationship (essentially inheritance for use cases).  A word of caution, I've yet to see a good example of where generalization works well with use cases.  Maybe I just haven't seen it, but in my current experience I find that it totally sabotages one of the main reasons for writing a use case.  That is, Use Cases should be easy for the business user to read and comprehend.  Otherwise, as analysts we would just create process flows that are graphical, typically quicker for seasoned analysts to understand, and easier to update in my opinion.

I don't know if I've helped you much.  I think it all make for a great discussion thread though!


Chris Adams
Core Member – ModernAnalyst.com
LinkedIn Profile
 
New Post 1/7/2008 6:19 PM
User is offline David Wright
141 posts
www.iag.biz
7th Level Poster




Re: semantic related question that I am struggling with 

Have you looked at the Business Analysis Body of Knowledge at www.iiba.com ? It addresses many of the general things you have in your list, but it does not attempt to be specific about how to use  techniques like Use Cases, with good reason.

In your specific example, I am reminded of Martin/Finklestein's Information Engineering, where lowest level business functions were defined, such as the data input, processing and storage to support something like Rent Video; around that, however, it defined one or more physical procedures that would make use of the function, allowing it to be invoked in different ways without its common processing needing to be replicated.

Overall, I think Use Cases are so popular because they can be used many different ways,  but that does not bode well for their use in a rigorous approach such as I think you are working on.  In fact, IE is the only methodology I have seen over the decades that achieved any level of rigor, with its models that could then be used to generate code... and most people hated it because it was too 'restrictive', and it got dragged down with the implosion of AD-Cycle. Ah well, perhaps we will get there again at some point.


David Wright
 
New Post 1/7/2008 11:04 PM
User is offline Adrian M.
765 posts
3rd Level Poster




Re: semantic related question that I am struggling with 

Hi Perry,

I would have to agree with Chris, from my experience:

  • There can be multiple trigger events for a use case!
  • Using generalization with use cases does not work very well in practice - especially for business use cases.

Generalization works well for modeling showing actor & stakeholder as a diagram.  It even works when showing use cases in a use case diagram but once the business analyst attempts to write the use case specifications (textual portion of the use case), things get tough.  Attempting to use generalization while, at the same time, trying to keep the use case specs legible to the business stakeholder is nearly impossible.

Since we are on the topic of use cases.... I have noticed a pattern of many analysts beginning to model their initial understanding of the business process and/or requirements using use cases.  I personally prefer creating business process flows/diagrams to begin to depict the high-level view of the business.  Once that is understood the business analyst can proceed and identify use cases.

Let's take the "Rent Video" example...  While this use case might be interesting and beneficial to the "Customer" actor, to the business, this use case in itself does not mean much.  What is more important to the business is the "Video Rental Business Process".  Why?  Because this is the process that makes them money.

The "Rent Video" use case by itself simply entails the customer pay $2.00 to the vendor and walking away with a $25.00 DVD.

So, at the high level the "Video Rental Business Process" would show:

  • how the business receives new videos,
  • that a repeatable set of steps (use case) allows multiple customers to rent the same DVD over and over again,
  • the process for dealing with "lost" products,
  • the process for dealing with damaged products,
  • etc.

Once this process is well understood, a "Rent Video" use case could then be used to detail out the steps and interaction between the customer and the business (or system).  The same use case could be used to rent videos at a kiosk as well as via internet.

Just some thoughts!

- Adrian


Adrian Marchis
Business Analyst Community Blog - Post your thoughts!
 
New Post 1/8/2008 10:25 AM
User is offline Perry McLeod
70 posts
8th Level Poster




Re: semantic related question that I am struggling with 

Respondents et al,

Thanks for the comments folks. No question that UCs are deceptively simple. The place that I am at now tried UCs before and nearly ended a multi-year project b/c of disagreements. They brought me in to establish best practices for everything that I have listed above. It's been fun writing the series ... I am for sure going through my heard and pulling out all I've learned, not to mention all of my text books, school books (including the BABOK and PMBOK).

sooooo much to cover eh. We really do-do a lot in our industry - jack of all master ....

Anyway to avoid argument I am staking it in the sand and saying 'whenever possible, stick to one trigger' - be they system or business use cases. At the end of the day – the use case should allow for design without constraining that design. I want to avoid a lazy atmosphere where a BA writes one use case with a 1000 do-whiles and if-else-thans set up as triggers .. can you imagine.

Now there is an easy back out if ever I've written one. LOL

 
Previous Previous
 
Next Next
  Modern Analyst Forums  Business and Sy...  Requirements  semantic related question that I am struggling with

Community Blog - Latest Posts

In today's ever-evolving market, businesses must adapt swiftly to remain competitive and meet the needs of a fast-paced digital economy. Among the various business strategies available, digital transformation, customer-centricity, and sustainability have emerged as top priorities. Let’s explore why these strategies are critical for busine...
The Cisco Certified Network Associate (CCNA) certification is a pivotal credential for networking professionals, validating your skills in networking fundamentals, security, automation, and programmability. Preparing for the CCNA exam can be challenging, but with the right strategy, resources, and mindset, you can successfully achieve this certific...
The CEO/CIO's Guide to Architecting AI: Vision to Value in Minutes Introduction to Architected AI Artificial intelligence (AI) is becoming part of our life at an unprecedented pace. As CEOs and CIOs grapple with how to leverage this powerful technology to drive strategy and enhance operations, the concept of Architected AI becomes importa...

 






 

Copyright 2006-2024 by Modern Analyst Media LLC