http://foss2serve.org/index.php?title=(Re-)Engineering_use_cases_(Activity)&feed=atom&action=history(Re-)Engineering use cases (Activity) - Revision history2024-03-29T14:40:03ZRevision history for this page on the wikiMediaWiki 1.18.1http://foss2serve.org/index.php?title=(Re-)Engineering_use_cases_(Activity)&diff=12793&oldid=prevClif.kussmaul at 13:31, 15 October 20182018-10-15T13:31:28Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 13:31, 15 October 2018</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Overview ===</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Overview ===</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{{Learning Activity Overview</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{{Learning Activity Overview</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>|title=(Re-)Engineering Use Cases</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>|title=</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>|overview= This activity lets students (re-)create use cases and a UML use case overview diagram.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>(Re-)Engineering Use Cases</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">|prerequisites=</del>This is an activity used in the [<del class="diffchange diffchange-inline">http://foss2serve.org/index.php/</del>Requirements_Engineering,<del class="diffchange diffchange-inline">_CSU_Long_Beach</del>,<del class="diffchange diffchange-inline">_Penzenstadler </del>Requirements Engineering] course. <del class="diffchange diffchange-inline"><br/> </del>It is based on the [https://www.slideshare.net/kamikitty/requirements-engineering-usage-models "Usage Models"] lecture slides and can be conducted individually or in small teams.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>|overview=</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>|objectives=<del class="diffchange diffchange-inline">Able to develop </del>a set of use cases for a system under development.</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>This activity lets students (re-)create use cases and a UML use case overview diagram.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>|process skills=[<del class="diffchange diffchange-inline">http</del>:<del class="diffchange diffchange-inline">//foss2serve.org/index.php/</del>Category:<del class="diffchange diffchange-inline">Information_Processing </del>Information Processing]</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>This is an activity used in the [<ins class="diffchange diffchange-inline">[</ins>Requirements_Engineering, <ins class="diffchange diffchange-inline">CSU Long Beach</ins>, <ins class="diffchange diffchange-inline">Penzenstadler|</ins>Requirements Engineering<ins class="diffchange diffchange-inline">]</ins>] course.  </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>It is based on the [https://www.slideshare.net/kamikitty/requirements-engineering-usage-models "Usage Models"] lecture slides and can be conducted individually or in small teams.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|prerequisites=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>|objectives=</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">* Develop </ins>a set of use cases for a system under development.</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>|process skills=</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">[</ins>[:Category:Information Processing<ins class="diffchange diffchange-inline">|Information Processing]</ins>]</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>}}</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>}}</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 30:</td>
<td colspan="2" class="diff-lineno">Line 39:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>= Notes for Instructors =</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>= Notes for Instructors =</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>The remaining sections of this document are intended for the instructor.  They are not part of the learning activity that would be given to students.</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>The remaining sections of this document are intended for the instructor.  They are not part of the learning activity that would be given to students.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td colspan="2" class="diff-lineno">Line 95:</td>
<td colspan="2" class="diff-lineno">Line 105:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Additional Information ===</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>=== Additional Information ===</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">{{Learning Activity Info</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|acm unit=SE Requirements Engineering</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|acm topic=Describing functional requirements using, for example, use cases or users stories</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|difficulty=medium</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|time=twice 75 minutes (or start in lab and finish as homework)</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|environment=computer lab with internet</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|author=[http://foss2serve.org/index.php/User:BPenzenstadler Birgit Penzenstadler]</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|source=n.a., reference used: [http://alistair.cockburn.us/Basic+use+case+template Cockburn's Use Case Template]</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">|license={{License CC BY SA}}</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del style="color: red; font-weight: bold; text-decoration: none;">}}</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div><del class="diffchange diffchange-inline">--------------------</del></div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">{{Learning Activity Info</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|acm unit=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">[[:Category:SE Requirements Engineering|SE Requirements Engineering]]</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|acm topic=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">Describing functional requirements using, for example, use cases or users stories</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|difficulty=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">medium</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|time=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">twice 75 minutes (or start in lab and finish as homework)</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|environment=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">computer lab with internet</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|author=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">[[User:BPenzenstadler|Birgit Penzenstadler]]</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|source=</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">n.a., reference used: [http://alistair.cockburn.us/Basic+use+case+template Cockburn's Use Case Template]</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">|license=</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{{License CC BY SA}}</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>{{License CC BY SA}}</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins style="color: red; font-weight: bold; text-decoration: none;">}}</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>[[Category:<del class="diffchange diffchange-inline">Learning_Activity</del>]]</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>[[Category:<ins class="diffchange diffchange-inline">Learning Activity</ins>]]</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>[[Category:<del class="diffchange diffchange-inline">Specification_and_Design</del>]]</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>[[Category:<ins class="diffchange diffchange-inline">Specification and Design</ins>]]</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>[[Category:<del class="diffchange diffchange-inline">Requirements_Engineering</del>]]</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>[[Category:<ins class="diffchange diffchange-inline">Requirements Engineering</ins>]]</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>[[Category:Documentation]]</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>[[Category:Documentation]]</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>[[Category:<del class="diffchange diffchange-inline">Ready_to_Use</del>]]</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>[[Category:<ins class="diffchange diffchange-inline">SE Requirements Engineering]]</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">[[Category:Ready to Use</ins>]]</div></td></tr>
</table>Clif.kussmaulhttp://foss2serve.org/index.php?title=(Re-)Engineering_use_cases_(Activity)&diff=11061&oldid=prevBPenzenstadler at 17:32, 24 July 20172017-07-24T17:32:21Z<p></p>
<table class='diff diff-contentalign-left'>
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr valign='top'>
<td colspan='2' style="background-color: white; color:black;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black;">Revision as of 17:32, 24 July 2017</td>
</tr><tr><td colspan="2" class="diff-lineno">Line 43:</td>
<td colspan="2" class="diff-lineno">Line 43:</td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Assessment questions / evaluation criteria:</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>Assessment questions / evaluation criteria:</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>* Is a use case overview diagram provided that is well structured and includes all important use cases? Does it have a system boundary, an actor outside that boundary, and relations from the actor to all use cases (and labelled extensions where appropriate)?</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div>* Is a use case overview diagram provided that is well structured and includes all important use cases?  </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">* </ins>Does it have a system boundary, an actor outside that boundary, and relations from the actor to all use cases (and labelled extensions where appropriate)?</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Are all use cases that are important for the system depicted in that diagram?</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Are all use cases that are important for the system depicted in that diagram?</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="background: #ffa; color:black; font-size: smaller;"><div>Are they structured in a hierarchy (<<extend>>, <<include>>) where appropriate?</div></td><td class='diff-marker'>+</td><td style="background: #cfc; color:black; font-size: smaller;"><div><ins class="diffchange diffchange-inline">* </ins>Are they structured in a hierarchy (<<extend>>, <<include>>) where appropriate?</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Is a complete and correct description provided for the (three or five or however many the instructor chooses) central use cases in a table (according to the Cockburn template)?</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Is a complete and correct description provided for the (three or five or however many the instructor chooses) central use cases in a table (according to the Cockburn template)?</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Is a complete and correct description of the scenarios provided for the (three or five or however many) central use cases in one message sequence chart per use case?</div></td><td class='diff-marker'> </td><td style="background: #eee; color:black; font-size: smaller;"><div>* Is a complete and correct description of the scenarios provided for the (three or five or however many) central use cases in one message sequence chart per use case?</div></td></tr>
</table>BPenzenstadlerhttp://foss2serve.org/index.php?title=(Re-)Engineering_use_cases_(Activity)&diff=11060&oldid=prevBPenzenstadler: Created page with "=== Overview === {{Learning Activity Overview |title=(Re-)Engineering Use Cases |overview= This activity lets students (re-)create use cases and a UML use case overview diagra..."2017-07-24T17:31:25Z<p>Created page with "=== Overview === {{Learning Activity Overview |title=(Re-)Engineering Use Cases |overview= This activity lets students (re-)create use cases and a UML use case overview diagra..."</p>
<p><b>New page</b></p><div>=== Overview ===<br />
{{Learning Activity Overview<br />
|title=(Re-)Engineering Use Cases<br />
|overview= This activity lets students (re-)create use cases and a UML use case overview diagram.<br />
|prerequisites=This is an activity used in the [http://foss2serve.org/index.php/Requirements_Engineering,_CSU_Long_Beach,_Penzenstadler Requirements Engineering] course. <br/> It is based on the [https://www.slideshare.net/kamikitty/requirements-engineering-usage-models "Usage Models"] lecture slides and can be conducted individually or in small teams.<br />
|objectives=Able to develop a set of use cases for a system under development.<br />
|process skills=[http://foss2serve.org/index.php/Category:Information_Processing Information Processing]<br />
}}<br />
<br />
=== Background ===<br />
<br />
* Background reading material:<br />
** [https://www.slideshare.net/kamikitty/requirements-engineering-usage-models "Usage Models"] lecture slides<br />
** [http://alistair.cockburn.us/Basic+use+case+template Cockburn's Use Case Template]<br />
** [https://link.springer.com/article/10.1007/s00766-004-0194-4 Sindre & Opdahl: Eliciting security requirements with misuse cases, REJ 2005]<br />
* Rationale for this activity: Use cases are a standard elements in requirements specifications and therefore students need to know how to specify them.<br />
<br />
=== Directions ===<br />
<br />
* In class, we discuss how to develop and document usage models. In this assignment, you have to develop a usage model for your project system. The usage model describes the interaction between the system and the actor (user), the steps the user performs and how the system responds to those steps.<br />
* For the usage model, please provide an overview diagram of all existing and two future use cases, plus a detailed version of at least three central use cases of the existing OpenMRS system and two use cases that are not implemented yet but would be desirable extensions, each of them including the full information from the template in the lecture slides. The detailed version per use case includes one scenario - first you describe it in the template (as main success scenario with extensions and/or variations), and then you use a message sequence chart to illustrate it.<br />
* Please also provide your description of the rationale for your process and results, at least two paragraphs of how you did it and what you found difficult or the most challenging aspect of it.<br />
<br />
[http://foss2serve.org/index.php/File:2017_542_Lab_UsageModel.pdf Assignment sheet] with these directions.<br />
<br />
<br />
=== Deliverables ===<br />
<br />
* The student (team) will hand in a PDF with the use case overview diagram, at least 3 detailed use cases in the form of templates and message sequence charts.<br />
<br />
= Notes for Instructors =<br />
The remaining sections of this document are intended for the instructor. They are not part of the learning activity that would be given to students.<br />
<br />
=== Assessment ===<br />
<br />
* How will the activity be graded?<br />
** The deliverable will be graded as one part of the [http://foss2serve.org/index.php/(Re-)Engineering_a_Software_Requirements_Specification requirements specification].<br />
* How will learning will be measured? <br />
** The quality of the application of the learned technique gives an indicator of how well the student has understood the technique and depending on the instructor, there can be a resubmission of the deliverable after initial feedback, so that the learning and the grade can be improved.<br />
* How will feedback to the student be determined? <br />
** The student receives written feedback on their submission.<br />
** Submitted solutions can be discussed in class (probably anonymizing them, according to classroom code of conduct)<br />
<br />
Assessment questions / evaluation criteria:<br />
* Is a use case overview diagram provided that is well structured and includes all important use cases? Does it have a system boundary, an actor outside that boundary, and relations from the actor to all use cases (and labelled extensions where appropriate)?<br />
* Are all use cases that are important for the system depicted in that diagram?<br />
Are they structured in a hierarchy (<<extend>>, <<include>>) where appropriate?<br />
* Is a complete and correct description provided for the (three or five or however many the instructor chooses) central use cases in a table (according to the Cockburn template)?<br />
* Is a complete and correct description of the scenarios provided for the (three or five or however many) central use cases in one message sequence chart per use case?<br />
* Is a description provided about the rationale and challenges?<br />
<br />
<br />
The form of the assessment is expected to vary by assignment. One possible format is the table:<br />
{| class="wikitable"<br />
! Criteria<br />
! Level 1 (fail)<br />
! Level 2 (pass)<br />
! Level 3 (good)<br />
! Level 4 (exceptional)<br />
|-<br />
| '''Completeness'''<br />
| Use cases or sequences are missing, description is minimalistic and incomplete.<br />
| Use cases or sequences are present with a basic description of everything in the diagrams and templates.<br />
| Use cases or sequences are not missing any steps; complete description of all steps in diagrams and templates.<br />
| Use cases or sequences are not missing any steps; complete description of all steps accurate and detailed in diagrams and templates.<br />
<br />
|-<br />
| '''Correctness'''<br />
| Interaction steps are not identified and modeled or mainly incorrectly so.<br />
| Interaction steps are identified and modeled correctly to at least 50%.<br />
| Interaction steps are identified and modeled mostly correct and the majority of their details and dependencies is accurate.<br />
| Interaction steps are identified and modeled correctly in all their details as well as the dependencies between use cases.<br />
<br />
|-<br />
| '''Understandability'''<br />
| Diagrams are missing, illegible, confusing or plain wrong.<br />
| Diagrams are rudimentary but shows a clear structure of elements and their relations, notations are used properly.<br />
| Diagrams are well-structured and easy to understand in their relations between the elements, notation used properly in both types of diagrams.<br />
| Diagram is easy to understand, very well structured and error-free UML notations in both message sequence charts and use case overview diagram.<br />
<br />
|}<br />
<br />
=== Comments ===<br />
<br />
* What should the instructor know before using this activity?<br />
** This is a common-practice specification technique in industry that students should definitely familiarize themselves with.<br />
* What are some likely difficulties that an instructor may encounter using this activity?<br />
** In their first drafts, students often miss depicting all user interaction and instead only model what the system does. It is important that they know they have to model both sides, the user input and the resulting system output.<br />
** When this is hard to get for the students, I often explain using a ping-pong analogy. A player can only continue the game if the call comes back to them.<br />
<br />
=== Suggestions for Open Source Community ===<br />
<br />
None so far.<br />
<br />
=== Additional Information ===<br />
{{Learning Activity Info<br />
|acm unit=SE Requirements Engineering<br />
|acm topic=Describing functional requirements using, for example, use cases or users stories<br />
|difficulty=medium<br />
|time=twice 75 minutes (or start in lab and finish as homework)<br />
|environment=computer lab with internet<br />
|author=[http://foss2serve.org/index.php/User:BPenzenstadler Birgit Penzenstadler]<br />
|source=n.a., reference used: [http://alistair.cockburn.us/Basic+use+case+template Cockburn's Use Case Template]<br />
|license={{License CC BY SA}}<br />
}}<br />
<br />
--------------------<br />
{{License CC BY SA}}<br />
<br />
[[Category:Learning_Activity]]<br />
[[Category:Specification_and_Design]]<br />
[[Category:Requirements_Engineering]]<br />
[[Category:Documentation]]<br />
[[Category:Ready_to_Use]]</div>BPenzenstadler