Technology Corner

Home » Architecture » Importance of Use Case Document

Importance of Use Case Document

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 80 other followers

Twitter updates

Archives

RSS InfoQ Feeds

  • Presentation: Testing in Production - Quality Software Faster
    Michael Bryzek explores what it’s like to build quality software with no development, QA or staging environments. He deep dives into “verifying in production” - what it takes to build software that can be tested continuously in production. By Michael Bryzek
  • Presentation: Performance Beyond Throughput: An OpenJ9 Case Study
    Marius Pirvu talks about the new advancements in the area of JVM performance using the latest open source JVM technology at Eclipse OpenJ9 running with OpenJDK. He shows us how the view from “the bottom of the stack” can help in finding and fixing stubborn performance problems often missed by high-level performance analysis tools. By Marius Pirvu
  • DigitalOcean Revamps Compute Plans and Pricing Structure
    After spending 2017 adding ancillary services to their virtual machine-centric cloud, DigitalOcean kicked off 2018 with some product and pricing changes. Last year, DigitalOcean added support for firewalls, monitoring, load balancers, and object storage. Today's announcement highlights three new classes of servers, some with upgraded CPU, memory and sto […]
  • The Brief Lifespan of a JavaScript Framework
    The lifecycle of a JavaScript framework is extraordinarily limited, according to a new analysis by Stack Overflow. But the data may also show how the lifespan of a major framework differs from those that satisfy a specific niche. By David Iffland
  • Microservices Resiliency and Fault Tolerance Using Istio and Kubernetes
    Animesh Singh and Tommy Li from IBM spoke at the recent KubeCon + CloudNativeCon North America 2017 Conference about the microservices resiliency and fault tolerance leveraging Istio framework. They also showed how to configure and use circuit breakers and other resiliency features using Istio. By Srini Penchikala
  • Podcast: Wendy Closson on Mindfulness and Effective Communication
    In this podcast Shane Hastie, Lead Editor for Culture & Methods, spoke to Wendy Closson about her journey of recovery from contracting a rare, deadly form of cancer to leading to the Optimize You track at QCon New York By Wendy Closson
  • Last Npm Incident Uncovers Security Vulnerability
    Last week, the npm registry had an operations incident that caused a number of highly depended on packages, such as require-from-string, to become unavailable. While the incident was relatively straightforward to solve, it uncovered a major security vulnerability that could have been exploited to inject malicious code in projects using npm. By Sergio De Simo […]
  • Presentation: How the Olympics Can Make You a Better Person
    Sandy Mamoli shares learnings from her professional sports career, covering topics such as meritocracy and diversity, rapid feedback, radical candor and high-performance teams. By Sandy Mamoli
  • Presentation: Hacking for Fun and Profit
    Heather Wilde discusses what motivates people to hack, what it takes to become a Certified Ethical Hacker, and who is hiring hackers today. By Heather Wilde
  • Presentation: Polyglot Persistence Powering Microservices
    Roopa Tangirala takes a look at Netflix’s common platform used to manage, maintain, and scale persistence infrastructures (including building reliable systems on unreliable infrastructure). She shares the benefits, pitfalls, and lessons learned from their polyglot persistence architecture to shape the success of various services. By Roopa Tangirala

“JSON, XML, .Net, C++, Java, Middleware”. These are some of the technical jargon which many IT professionals use while having a discussion with business users to implement business requirements. Business users might not be interested into how the system will be developed technically. Mostly, they are interested in if the proposed or existing systems are aligned with business requirements or expectations.

Use cases fill that gap and help stakeholders to understand “what software does”. Use cases offer the business analysts, development, and testing teams an invaluable guidebook. It does not include too many technical details and it is not as abstract as the business requirement. 

A typical use case should capture how a user will interact with the system to achieve a specific goal, it should highlight alternate and exceptions flow if normal flows are preventing users to execute further steps.

Benefits of having use cases in Software Development Life Cycle:

Use cases can help business stakeholders:

  • To understand proposed or existing software better without going into technical details.
  • They can evaluate use cases against business requirements; it will be easy to provide sign-off to IT team.
  • Highlight assumptions, out-of-scope items, outstanding issues for specific use case flow.

Use cases can help development and testing team:

  • To understand business processes and flows.
  • To understand functional context, Exceptions, Alternate flows.
  • To understand Pre-Conditions, Post-Conditions & Triggers for use case flow.
  • Work as a foundation for making test cases and testing delivered software against business requirements.

Use Case Document

Use cases can be depicted in a document with the visual and textual representation of workflows. It can be structured into following elements:

  • Introduction – Brief description of use case scope.
  • Actors – A list of the types of users who can engage in the activities described in the use case. Actor names should not correspond to job titles.
  • Participants – A list of software applications or systems which will be used in use case flow.
  • Description – description of use case.
  • Triggers – anything which will invoke use case to begin.
  • Data Flow / Activity Diagram/ Use Case: Represent user
  • Preconditions – Anything the solution can assume to be true when the use case begins.
  • Normal/Basic Flow – The set of steps the actors take to accomplish the goal of the use case. A clear description of what the system does in response to each user action.
  • Alternate Flows – Capture the less common user/system interactions, such as being on a new computer and answering a security question.
  • Exception Flows – The things that can happen that prevent the user from achieving their goals, such as providing an incorrect username and password.
  • Post-Conditions – Anything that must be successfully done when the use case is complete.
  • Assumptions Write assumptions if any.
  • Notes and Issues List down any issues or points to highlight.

I have uploaded sample use case document for reference.

use-case-sample

    

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blogs I Follow

%d bloggers like this: