<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Use Case Archives - IRM Training</title>
	<atom:link href="https://irm.com.au/category/use-case/feed/" rel="self" type="application/rss+xml" />
	<link>https://irm.com.au/category/use-case/</link>
	<description>Australian Leading Training Provider since 1989</description>
	<lastBuildDate>Tue, 28 May 2024 05:49:03 +0000</lastBuildDate>
	<language>en-AU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
<site xmlns="com-wordpress:feed-additions:1">214999885</site>	<item>
		<title>How to Create Use Cases</title>
		<link>https://irm.com.au/how-to-create-use-cases/</link>
					<comments>https://irm.com.au/how-to-create-use-cases/#respond</comments>
		
		<dc:creator><![CDATA[IRM Training]]></dc:creator>
		<pubDate>Tue, 28 May 2024 04:56:57 +0000</pubDate>
				<category><![CDATA[Use Case]]></category>
		<category><![CDATA[activity diagram]]></category>
		<category><![CDATA[business analysis]]></category>
		<category><![CDATA[textual use case]]></category>
		<category><![CDATA[use case diagram]]></category>
		<category><![CDATA[use cases]]></category>
		<guid isPermaLink="false">https://irm.com.au/?p=8117</guid>

					<description><![CDATA[<p>Use Cases allow requirements to be presented as a collection of stories from the user&#8217;s perspective. A Use Case can be used on its own or in addition to a User Story to provide more detailed descriptions of how users interact with a system. Use Case Diagram Use Case Diagrams can be used to help [&#8230;]</p>
<p>The post <a href="https://irm.com.au/how-to-create-use-cases/">How to Create Use Cases</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Use Cases</strong> allow requirements to be presented as a collection of stories from the user&#8217;s perspective. A <em>Use Case</em> can be used on its own or in addition to a <a href="https://en.wikipedia.org/wiki/User_story"><em>User Story</em></a> to provide more detailed descriptions of how users interact with a system.</p>
<h2>Use Case Diagram</h2>
<p><strong>Use Case Diagrams</strong> can be used to help visualise the story described in a <em>Use Case</em>. A <em>Use Case Diagram</em> consists of 3 components:</p>
<ol>
<li><em>Actor</em> &#8211; represented by a stick figure</li>
<li><em>Use Case Name</em> &#8211; represented by an ellipse</li>
<li><em>Association</em> &#8211; represented by a straight line that links an <em>Actor</em> with a <em>Use Case Name</em></li>
</ol>
<p>Example:</p>
<p><img data-recalc-dims="1" decoding="async" class="aligncenter wp-image-8120 size-full" src="https://i0.wp.com/irm.com.au/wp-content/uploads/2024/05/use-case-request-study-leave.png?resize=404%2C87&#038;ssl=1" alt="Use Case Diagram for an employee requesting Study Leave to their manager" width="404" height="87" srcset="https://i0.wp.com/irm.com.au/wp-content/uploads/2024/05/use-case-request-study-leave.png?w=404&amp;ssl=1 404w, https://i0.wp.com/irm.com.au/wp-content/uploads/2024/05/use-case-request-study-leave.png?resize=300%2C65&amp;ssl=1 300w, https://i0.wp.com/irm.com.au/wp-content/uploads/2024/05/use-case-request-study-leave.png?resize=150%2C32&amp;ssl=1 150w" sizes="(max-width: 404px) 100vw, 404px" /></p>
<p>Conventions followed when creating a <em>Use Case Diagram</em>:</p>
<ul>
<li>The <em>Use Case Name</em> starts with a verb and (optionally) followed by a noun.</li>
<li>The main / primary actor is usually drawn on the left and the supporting / secondary actor (if there is one) on the right.</li>
</ul>
<h3>Exercise</h3>
<h4>Course Registration</h4>
<div style="background-color: #cccccc;">
<p style="background-color: #cccccc;">At the start of each semester a student can request a prospectus containing a course list. Information about a course is provided, such as the tutor, department and prerequisites.</p>
<p style="background-color: #cccccc;">The new system will allow students to create a schedule, then select four courses. Each student chooses two others in case their first choices become full or are cancelled. No course<br />
can have more than 10 students. No course can have less than 3 students or it will be<br />
cancelled. This will be the same functionality as available to other internal users of the<br />
system.</p>
<p style="background-color: #cccccc;">When registration is complete, the registration system sends a message to the billing system<br />
to send out a bill to the student.</p>
<p style="background-color: #cccccc;">Tutors use the system to find which classes they are teaching and who the students are. The registrar will administer the system.</p>
<p style="background-color: #cccccc;">For a period at the beginning of the semester the student can change their schedule.<br />
Students must be allowed to access the system during this time to add or delete courses.</p>
</div>
<h4>Task</h4>
<p>Analyse the &#8216;Course Registration&#8217; requirements above and represent them as a <em>Use Case Diagram</em>.</p>
<h5><strong>Example answer</strong></h5>
<p><img data-recalc-dims="1" fetchpriority="high" decoding="async" class="aligncenter wp-image-3821 size-full" src="https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=621%2C602&#038;ssl=1" alt="use case" width="621" height="602" srcset="https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?w=621&amp;ssl=1 621w, https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=150%2C145&amp;ssl=1 150w, https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=300%2C291&amp;ssl=1 300w" sizes="(max-width: 621px) 100vw, 621px" /></p>
<h2>Textual Use Case</h2>
<p>A textual <em>Use Case</em> typically include:</p>
<ul>
<li>Use Case ID</li>
<li>Use Case Name</li>
<li>Actors (or Users)</li>
<li>Description</li>
<li>Pre-conditions</li>
<li>Post-conditions</li>
<li>Trigger</li>
<li>Primary Flow</li>
<li>Alternative Flows</li>
<li>Exception Flows</li>
</ul>
<p>The <em>Primary Flow</em> is usually quite simple and shows what normally occur in the most common scenario and when nothing out of the ordinary happens. Any possible variations to the normal story are then presented as <em>Alternative Flows</em>, while the <em>Exception Flows</em> describe what can go wrong and how the <em>Use Case</em> will handle it.</p>
<p>Example textual <em>Use Case</em> for &#8216;Register for Courses&#8217;:</p>
<table style="border: 1px groove #999999; border-collapse: separate; color: #000000; padding: 15px; margin: 15px;">
<tbody style="padding: 15px; margin: 15px;">
<tr>
<th>Use Case ID:</th>
<td>UC-101</td>
</tr>
<tr>
<th>Use Case Name:</th>
<td>Register for Courses</td>
</tr>
<tr>
<th style="vertical-align: top;">Description:</th>
<td>This use case allows the student to register for courses by creating, viewing, modifying<br />
or deleting a schedule for a specified semester. Pertinent billing information is sent to<br />
the Billing System.</td>
</tr>
<tr>
<th>Primary Actor:</th>
<td>Student</td>
</tr>
<tr>
<th>Secondary Actor:</th>
<td>Billing System</td>
</tr>
<tr>
<th>Pre-conditions:</th>
<td>Registrations for the Semester are open to Students.</td>
</tr>
<tr>
<th>Post-conditions:</th>
<td>List of students enrolled in the course is updated.</td>
</tr>
<tr>
<th>Trigger:</th>
<td>Student submits the enrolment form.</td>
</tr>
<tr>
<th style="vertical-align: top;">Primary Flow:</th>
<td>
<ol>
<li>The Student initiates the use case by entering a student number and<br />
password.</li>
<li>The System prompts the student for one of the following options:
<ul style="list-style:circle;">
<li>Create a schedule</li>
<li>Review a schedule</li>
<li>Change a schedule (to add or delete a course offering)</li>
</ul>
</li>
<li>The Student selects an option, completes the task and indicates when finished.</li>
<li>The System saves any changes made, sends billing details to the Billing<br />
System and prints the schedule.</li>
<li>The Use Case ends.</li>
</ol>
</td>
</tr>
<tr>
<th style="vertical-align: top;">Alternative Flow:</th>
<td>1.a. The password has expired</p>
<ul>
<li>The System prompts the student to enter a new password.</li>
<li>The Use Case resumes at step #2 (of Primary Flow).</li>
</ul>
</td>
</tr>
<tr>
<th style="vertical-align: top;">Exception Flow:</th>
<td>1.a. Invalid student details entered</p>
<ul>
<li>The System denies access and displays an error message.</li>
<li>The Use Case ends.</li>
</ul>
</td>
</tr>
</tbody>
</table>
<h2>Further Learning</h2>
<p>In <em>Use Case Diagrams</em>, apart from the simple association there can also be other relationships between an <em>Actor</em> and a <em>Use Case</em> that you can show, such as <em>Extend</em>, <em>Include</em> and <em>Generalisation</em>.</p>
<p>In textual <em>Use Cases</em>, there can also be more complex requirements, possible alternatives and exceptions.</p>
<p>Learn further about <em>Use Cases</em> and more, by attending one of the following IRM Training&#8217;s hands-on courses:</p>
<ul>
<li><a href="/business-analysis-training/">Business Analysis</a></li>
<li><a href="/writing-better-requirements-training/">Writing Better Requirements</a></li>
</ul>
<hr>
<p style="text-align: right;">
<p>The post <a href="https://irm.com.au/how-to-create-use-cases/">How to Create Use Cases</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://irm.com.au/how-to-create-use-cases/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">8117</post-id>	</item>
		<item>
		<title>What Happens After User Stories?</title>
		<link>https://irm.com.au/what-happens-after-user-stories/</link>
					<comments>https://irm.com.au/what-happens-after-user-stories/#respond</comments>
		
		<dc:creator><![CDATA[IRM Training]]></dc:creator>
		<pubDate>Fri, 08 May 2015 04:43:58 +0000</pubDate>
				<category><![CDATA[Use Case]]></category>
		<category><![CDATA[business analyst skills]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[user stories]]></category>
		<category><![CDATA[Uses Cases]]></category>
		<guid isPermaLink="false">https://irm.com.au/?p=677</guid>

					<description><![CDATA[<p>OK, so you’ve had some great sessions with users and stakeholders. What they want the system to do is neatly captured in a number of user stories. Now what? While user stories do a great job of expressing functional (and often non-functional) requirements in words that business users can understand, that’s not the case for [&#8230;]</p>
<p>The post <a href="https://irm.com.au/what-happens-after-user-stories/">What Happens After User Stories?</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>OK, so you’ve had some great sessions with users and stakeholders. What they want the system to do is neatly captured in a number of user stories. Now what?</p>
<p>While user stories do a great job of expressing functional (and often non-functional) requirements in words that business users can understand, that’s not the case for developers. Remember that a business analyst is the communicator between the business AND the developer. There just isn’t enough information in a user story for a developer to do their job.</p>
<p>So how do you get round this? For a really interesting discussion on this topic have a look at the following article <em>Why I still use Use Cases</em> by <a href="http://alistair.cockburn.us/" target="_blank" rel="noopener">Alistair Cockburn</a>. Alistair was one of the original signatories of the Agile Manifesto and his article includes observations on some of the key issues faced by organisations using agile methods.</p>
<p>&nbsp;</p>
<hr />
<h4 style="text-align: center;">WHY I STILL USE USE CASES</h4>
<p>XP pretty much banned use cases, replacing them with the similar sounding “user stories” and as a result agile zealots have been happy to dump use cases in the trash (along with their project managers, estimates, plans, and architectures). Scrum did similar, using the “product backlog” instead of user stories. Yet as I go around projects, I keep running across organizations suffering from three particular, real, painful, and expensive problems:</p>
<p style="padding-left: 60px;">1)   User stories and backlog items don’t give the designers a <em>context</em> to work from – when is the user doing this, and what is the context of their operation, what is their larger goal at this moment?</p>
<p style="padding-left: 60px;">2)   User stories and backlog items don’t give the project team any sense of “completeness” – what I keep finding is that the development team bids/estimates the projects at (e.g.) 270 story points, and then as soon as they start working, that number keeps increasing, seemingly without bound. The developers are depressed and the sponsors are equally depressed by this. How big is this project, really?</p>
<p style="padding-left: 60px;">3)   Related to completeness, user stories and backlog items don’t provide a good-enough mechanism for <em>looking ahead</em> at the difficulty of upcoming work (In principle they could, just in practice they don’t) – I keep hearing this complaint, “We asked our customer (product owner) a question and she/he took 2 weeks to get us an answer. We must have the wrong person in this role.” No, they don’t have the wrong person, they have a broken process – certain types of questions take a long time to research, as the various departments and user groups work out what is the correct, balanced answer for the whole lot of them. Staring at the set of extension conditions in a use case lets the analysts suss out which ones will be easy and which will be difficult, and to stage their research accordingly. User stories and backlog items are not set out in that granularity early enough on for that assessment – the extension conditions are usually detected mid-sprint, when it is too late.</p>
<p>&nbsp;</p>
<p>Use cases are, indeed, heavier and more difficult than either user stories or backlog items, but they bring value for that extra weight. As not-Einstein said: “Make things as simple as possible, but no simpler.” (The attribution to Einstein has been debunked, it seems.)</p>
<p>In particular, use cases fix those three problems.</p>
<p>I’ve been testing this out for the last 3 years – I walk in and ask, “On your agile project(s), do you by any chance suffer from any of these three things?” &#8230; and then list the three … Much stronger than even I expect, there <em>hasn’t been a single organization I asked these of that hasn’t said, “Oh, Yes, and How!”</em></p>
<p>In other words, naïve use of user stories and backlog items is causing very real, very expensive damage to companies. Expensive is bad.</p>
<p>The most recent was an executive who was telling about having “delivered” a Scrum project, but it was discovered at acceptance time that there were a whole series of recipients of the system whose needs hadn’t been identified at all. This company is now faced with writing what may amount to a fixed-price contract because the recipients aren’t sure they trust the company to deliver <em>complete</em> and useful software.</p>
<p>&nbsp;</p>
<p>Very expensive, very bad. The time spent writing the use cases and doing a more thorough requirements investigation would have paid off handsomely, in this case.</p>
<p>&nbsp;</p>
<p>Here 5 reasons why I still write use cases:</p>
<p style="padding-left: 60px;">1)   The list of goal names provides executives with the shortest summary of what the system will contribute to the business and the users. It also provides a project planning skeleton, to be used to build initial priorities, estimates, team allocation and timing. It is the first part of the <em>completeness</em> question.</p>
<p style="padding-left: 60px;">2)   The main success scenario of each use case provides everyone involved with an agreement as to what the system will basically do, also, sometimes more importantly, what it <em>will not do</em>. It provides the <em>context</em> for each specific line item requirement, a context that is very hard to get anywhere else.</p>
<p style="padding-left: 60px;">3)   The extension conditions of each use case provide the requirements analysts a framework for investigating all the little, niggling things that somehow take up 80% of the development time and budget. It provides a <em>look ahead</em> mechanism, so the customer / product owner / business analyst can spot issues that are likely to take a long time to get answers for. These issues can and should then be put ahead of the schedule, so that the answers can be ready when the development team gets around to working on them. The use case extension conditions are the second part of the <em>completeness</em> question.</p>
<p style="padding-left: 60px;">4)   The use case extension scenario fragments provide answers to the many detailed, often tricky business questions programmers ask: “What are we supposed to do in this case?” (which is normally answered by, “I don’t know, I’ve never thought about that case.”) In other words, it is a thinking / documentation framework that matches the <em>if…then…else</em> statement that helps the programmers think through issues. Except it is done at investigation time, not programming time.</p>
<p style="padding-left: 60px;">5)   The full use case set shows that the investigators have thought through every user’s needs, every goal they have with respect to the system, and every business variant involved. It is the final part of the <em>completeness</em> question. (And yes, I did indeed sit down and walk through 240 use cases with a client, at the end of which, I turned to her and asked: “And is that everything?” She said, Yes, and we built that, delivered it, got paid for it, and it is still in use ten years later.)</p>
<p>&nbsp;</p>
<p>The are several sticky parts for people using use cases as I describe:</p>
<p style="padding-left: 60px;">*   It is really easy to think all the use cases have to be written up front, when in fact the writing should be staged over the life of the project. The “thinking’ part here is working out how much should be written up front to get the project estimate into a safe place, and which parts can be deferred to just-in-time investigation.</p>
<p style="padding-left: 60px;">*   These days, iteration/sprint lengths are so short that it is not practical to implement an entire use case in just one of them. That means additional work is needed, to create user stories or backlog items for each use case, track that each one get developed, and ensure that the complete set of user stories or backlog items do indeed deliver the subset of the use cases needed for the particular release.</p>
<p style="padding-left: 60px;">*   Writing good use cases (or any other requirements) requires thinking, communicating, and thinking again. It is much easier just to write user-story tags on index cards and let the project blow up later.</p>
<p>&nbsp;</p>
<p>If you don’t want to think, find a new profession. Software development requires thinking, at all levels.</p>
<div class="printfriendly pf-button  pf-alignright">
                    <a href="https://irm.com.au/what-happens-after-user-stories/?pfstyle=wp" rel="nofollow" onclick="" title="Printer Friendly, PDF & Email">
                    <img data-recalc-dims="1" decoding="async" class="pf-button-img" src="https://i0.wp.com/cdn.printfriendly.com/buttons/printfriendly-pdf-email-button-notext.png?w=640&#038;ssl=1" alt="Print Friendly, PDF & Email" style="width: 110px;height: 30px;"  />
                    </a>
                </div>
<p>&nbsp;</p>
<hr />
<p style="text-align: right;"><em>This article reproduced with kind permission of Alistair Cockburn. To read this and other articles by Alistair go to <a href="http://alistair.cockburn.us/Why+I+still+use+use+cases">http://alistair.cockburn.us/Why+I+still+use+use+cases</a></em></p>
<p style="text-align: right;"><em>If you enjoyed this article, you may be also interested in these:</em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/use-use-cases/">How to Use Use Cases</a></em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/write-use-cases/">How to Write Use Cases</a></em></p>
<hr />
<p style="text-align: right;">
<p>The post <a href="https://irm.com.au/what-happens-after-user-stories/">What Happens After User Stories?</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://irm.com.au/what-happens-after-user-stories/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">677</post-id>	</item>
		<item>
		<title>Use Case Fragments</title>
		<link>https://irm.com.au/use-case-fragments/</link>
		
		<dc:creator><![CDATA[IRM Training]]></dc:creator>
		<pubDate>Tue, 30 Sep 2014 05:06:04 +0000</pubDate>
				<category><![CDATA[Use Case]]></category>
		<category><![CDATA[actors]]></category>
		<category><![CDATA[business analysis]]></category>
		<category><![CDATA[business analyst]]></category>
		<category><![CDATA[business function]]></category>
		<category><![CDATA[event table]]></category>
		<category><![CDATA[training]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[use case fragments]]></category>
		<guid isPermaLink="false">https://irm.com.au/wp/?p=391</guid>

					<description><![CDATA[<p>A previous IRM article Event Based Analysis and Modelling described how business functionality in a requirements package can be broken down into a table with column headings &#8211; Event, Trigger, Initiator, Use Case name, etc. Each business function is a separate event and has a unique number. A typical business function might contain several unique events [&#8230;]</p>
<p>The post <a href="https://irm.com.au/use-case-fragments/">Use Case Fragments</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>A previous IRM article <a href="/wp-content/uploads/2014/12/Event-Based-Analysis-and-Modelling.pdf" target="_blank" rel="noopener">Event Based Analysis and Modelling</a> described how business functionality in a requirements package can be broken down into a table with column headings &#8211; Event, Trigger, Initiator, Use Case name, etc. Each business function is a separate event and has a unique number.</p>
<p>A typical business function might contain several unique events each of which we want to end up as a component of a larger software application.</p>
<p>So how do we go from a table containing textual information to a specification which a developer can use?</p>
<p>The first step is to turn each business event into a model &#8211; either a use case fragment, <a href="https://irm.com.au/how-to-draw-data-flow-diagrams/">a DFD fragment</a> or any modelling language you might be working with.</p>
<p>The following event table describes three typical interactions a customer would have with their bank:</p>
<p><img decoding="async" class="aligncenter wp-image-382 size-full" title="Event Table" src="/wp-content/uploads/2014/12/ucf-event-table.jpg" alt="ucf-event-table" width="666" height="239" /></p>
<p>Each of these events can be drawn as a separate use case:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-380" src="/wp-content/uploads/2014/12/use-case-fragments1.jpg" alt="use-case-fragments1" width="400" height="307" /></p>
<p>These individual use cases (use case fragments) are only half the picture however. Today developers don&#8217;t write individual software programs for each event, particularly when multiple events will have numerous common components e.g. database enquiry, ID validation, etc.</p>
<p>What we do want is to be able to combine use case fragments into a single use case. We do this by identifying and sharing common actors (in this example the customer):</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-381" src="/wp-content/uploads/2014/12/use-case-fragments2.jpg" alt="use-case-fragments2" width="400" height="311" /></p>
<p>While we still need to write individual descriptions for each use case, we&#8217;ve given the developer a concise package of functional requirements, offering them the best opportunity to write efficient and effective code.</p>
<p>For an example of writing formal use cases see the paper <a href="/wp-content/uploads/2014/12/How_to_use_Use_Cases.pdf" target="_blank" rel="noopener">How to use Use Cases</a>.</p>
<div class="printfriendly pf-button  pf-alignright">
                    <a href="https://irm.com.au/use-case-fragments/?pfstyle=wp" rel="nofollow" onclick="" title="Printer Friendly, PDF & Email">
                    <img data-recalc-dims="1" decoding="async" class="pf-button-img" src="https://i0.wp.com/cdn.printfriendly.com/buttons/printfriendly-pdf-email-button-notext.png?w=640&#038;ssl=1" alt="Print Friendly, PDF & Email" style="width: 110px;height: 30px;"  />
                    </a>
                </div>
<p>&nbsp;</p>
<p>The post <a href="https://irm.com.au/use-case-fragments/">Use Case Fragments</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">391</post-id>	</item>
		<item>
		<title>How to Write Use Cases</title>
		<link>https://irm.com.au/write-use-cases/</link>
					<comments>https://irm.com.au/write-use-cases/#respond</comments>
		
		<dc:creator><![CDATA[IRM Training]]></dc:creator>
		<pubDate>Sun, 04 Sep 2011 03:41:22 +0000</pubDate>
				<category><![CDATA[Use Case]]></category>
		<category><![CDATA[alternate flow]]></category>
		<category><![CDATA[primary flow]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[use case]]></category>
		<guid isPermaLink="false">https://irm.com.au/?p=515</guid>

					<description><![CDATA[<p>A previous IRM paper &#8211; How to use Use Cases &#8211; highlighted the need for clear and logical thinking when documenting the primary and alternate flows of a use case. A use case diagram is all well and good for communicating the scope of a particular event but to explain what’s happening inside the use case [&#8230;]</p>
<p>The post <a href="https://irm.com.au/write-use-cases/">How to Write Use Cases</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>A previous IRM paper &#8211; <a href="https://irm.com.au/wp-content/uploads/2016/04/How_to_use_Use_Cases.pdf">How to use Use Cases</a> &#8211; highlighted the need for clear and logical thinking when documenting the primary and alternate flows of a use case. A use case diagram is all well and good for communicating the scope of a particular event but to explain what’s happening inside the use case we need to revert back to a textual description.</p>
<p>The How to use Use Cases paper described a relatively simple event – a student registering for a course. Whilst the primary flow had 5 steps, the alternate flow in the formal (fully specified) use case involved 9 steps each comprising 3 or 4 interactions. The line by line description of the alternate flow ran to one full side of A4 paper and quickly became an exercise in concentration! So how else could we write it?</p>
<p>&nbsp;</p>
<p>Read the full paper here: <a href="https://irm.com.au/wp-content/uploads/2016/04/How-to-Write-Use-Cases.pdf">How to Write Use Cases</a></p>
<p>&nbsp;</p>
<hr />
<p style="text-align: right;"><em>If you liked this paper, you may also enjoy:</em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/use-case-fragments/">Use Case Fragments</a></em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/user-stories-the-jungle-book/">User Stories &amp; The Jungle Book</a></em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/babok-course-mapping/">What Happens After User Stories?</a></em></p>
<hr />
<p>&nbsp;</p>
<p>The post <a href="https://irm.com.au/write-use-cases/">How to Write Use Cases</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://irm.com.au/write-use-cases/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">515</post-id>	</item>
		<item>
		<title>How to use Use Cases (With Examples)</title>
		<link>https://irm.com.au/use-use-cases/</link>
					<comments>https://irm.com.au/use-use-cases/#respond</comments>
		
		<dc:creator><![CDATA[IRM Training]]></dc:creator>
		<pubDate>Wed, 17 Oct 2007 04:02:07 +0000</pubDate>
				<category><![CDATA[Use Case]]></category>
		<category><![CDATA[activity diagram]]></category>
		<category><![CDATA[business analysis]]></category>
		<category><![CDATA[textual use case]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[use cases]]></category>
		<guid isPermaLink="false">https://irm.com.au/?p=561</guid>

					<description><![CDATA[<p>Many business analysts and business users get frustrated at the perceived lack of information in a use case diagram. “It’s all very well drawing a picture” they say but what about the details – what’s actually going on? When producing project documentation, use case diagrams are rarely used on their own. They will generally be [&#8230;]</p>
<p>The post <a href="https://irm.com.au/use-use-cases/">How to use Use Cases (With Examples)</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Many business analysts and business users get frustrated at the perceived lack of information in a use case diagram. “It’s all very well drawing a picture” they say but what about the details – what’s actually going on?</p>
<p>When producing project documentation, use case diagrams are rarely used on their own. They will generally be accompanied by a textual use case and if they’re complex, may also have a supporting activity diagram to show what’s going on “inside” the use case.</p>
<p>To keep things simple we’ll stick to use case diagrams and textual use cases. Textual use cases can be both formal and informal. Try the following exercises (from IRM’s <a title="Modelling Requirements with Use Case &amp; the UML" href="https://irm.com.au/modelling-requirements-use-case-uml-training/" target="_blank" rel="" class="shortlink shortlink-43">Modelling Requirements with Use Case &amp; the UML</a> workshop) to test your skills. First we’ll draw a use case diagram from a plain English description, then build on it using textual use cases.</p>
<p><strong>Exercise 1 – Course registration</strong></p>
<p>The following should be textually analysed and a use case diagram created containing several use cases. Identify the actors, use cases and associations.</p>
<p><em>At the start of each semester a student can request a prospectus containing a course list. Information about a course is provided, such as the tutor, department and pre-requisites.</em></p>
<p><em>The new system will allow students to create a schedule, then select four courses. Each student chooses two others in case their first choices become full or are cancelled. No course </em><em>can have more than 10 students. No course can have less than 3 students or it will be cancelled. This will be the same functionality as available to other internal users of the </em><em>system.</em></p>
<p><em>When registration is complete, the registration system sends a message to the billing system to send out a bill to the student.</em></p>
<p><em>Tutors use the system to find which classes they are teaching and who the students are. The registrar will administer the system.</em></p>
<p><em>For a period at the beginning of the semester the student can change their schedule. Students must be allowed to access the system during this time to add or delete courses.</em></p>
<p>Note: If you have some experience with use cases try drawing a suitable diagram. If you’re new to the field, see below for an example answer.</p>
<p><strong>Exercise 1 – Example answer</strong></p>
<p>Actors: Student, Tutor, Billing System, Registrar</p>
<p><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-3821 size-full" src="https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=621%2C602&#038;ssl=1" alt="use case" width="621" height="602" srcset="https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?w=621&amp;ssl=1 621w, https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=150%2C145&amp;ssl=1 150w, https://i0.wp.com/irm.com.au/wp-content/uploads/2007/10/use-case.png?resize=300%2C291&amp;ssl=1 300w" sizes="auto, (max-width: 621px) 100vw, 621px" /></p>
<p><strong>Use Cases:</strong></p>
<p>Student</p>
<ul>
<li>Register for courses</li>
</ul>
<p>Tutor</p>
<ul>
<li>View teaching roster</li>
</ul>
<p>Registrar</p>
<ul>
<li>Maintain course information</li>
<li>Maintain student information</li>
<li>Maintain tutor information</li>
<li>Maintain curriculum</li>
<li>Generate prospectus</li>
</ul>
<p>&nbsp;</p>
<p>For the rest of the exercises and PDF, download full paper here: <a href="https://irm.com.au/wp-content/uploads/2016/04/How_to_use_Use_Cases.pdf">How to use Use Cases</a></p>
<p>&nbsp;</p>
<hr />
<p style="text-align: right;"><em>If you liked this paper, you may enjoy:</em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/good-business-analysis-questions/">What Happens After User Stories?</a></em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/facilitated-workshops/">Use Case Fragments</a></em></p>
<p style="text-align: right;"><em><a href="https://irm.com.au/write-use-cases/">How to Write Use Cases</a></em></p>
<hr />
<p style="text-align: right;">
<p>The post <a href="https://irm.com.au/use-use-cases/">How to use Use Cases (With Examples)</a> appeared first on <a href="https://irm.com.au">IRM Training</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://irm.com.au/use-use-cases/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">561</post-id>	</item>
	</channel>
</rss>
