Difference between revisions of "Use cases"

From ICA-AtoM
Jump to navigation Jump to search
 
(21 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Main Page]] > [[System Requirements]] > Use cases
+
[[Main Page]] > [[System requirements]] > Use cases
  
== Overview ==
+
== Purpose ==
  
 +
Use cases describe interactions with an application from the end-users' point of view in a variety of ''what if'' scenarios. Use cases:
  
== View / search / browse / navigate the system ==
+
*Identify [[Functional requirements|functional]], [[Metadata requirements|metadata]], and [[Quality requirements|quality requirements]].
  
I want to view descriptions in the default source language of the application.
+
*Test the application's current functionality.
  
I want to view descriptions in a language other than the source language.
+
*Identify issues that need to be addressed in future releases.
  
I want to notify the maintainer of a description that it contains incorrect information.
+
*Support development of user-end documentation.
  
I want to comment on a description.
 
  
 +
== Organization ==
  
 +
Use cases are clustered around the same broad categories as the [[Functional requirements|functional requirements]]. Like the latter, use cases are organized hierarchy with high-level scenarios broken down into more specific tests (sub- and sub-sub-cases). To facilitate cross-references and links, each case has been assigned an alpha-numeric code: the alpha prefix designates its type (UC = use case), the number establishes its position in the hierarchy. Six main use cases have been identified:
  
== Add / edit / delete content ==
+
*[[UC-1|UC-1 Implement a system of control]]
  
I want to contribute descriptions in the default source language of the application.
+
*[[UC-2|UC-2 Add / edit content]]
  
I want to contribute descriptions in a language other than the source language.
+
*[[UC-3|UC-3 Translate content]]
  
I want to edit an existing description.
+
*[[UC-4|UC-4 Access content]]
  
I want to link my archival description to an authority record maintained by another institution.
+
*[[UC-5|UC-5 Import / export content]]
  
I want to edit an authority record linked to my archival description but maintained by another institution.
+
*[[UC-6|UC-6 Administer the system]]
  
Several institutions hold parts of what is intellectually one fonds and I want to link my description to theirs.
 
  
I want to delete an existing description.
+
== Use case actors ==
  
I want to import content from another institution.
+
The following generic actors are invoked in the use cases:
  
I want to migrate content from another database.
+
*'''Institution''': a body having custody and control of archival materials.
  
I want to create descriptions in another database and import them into ICA-AtoM.
+
*'''Archivist''': a staff member of an Institution.
  
I want to create descriptions in another file format (text, Word, Excel) and import that into ICA-AtoM.
+
*'''Network''': a group of Institutions sharing descriptions and other information relating to archival materials.
  
 +
*'''Administrator''': a person responsible for the application of an Institution or Network.
  
== Translate ==
+
*'''Researcher''': a person who accesses the archival materials held by Institutions.
  
I want to translate the standard interface into a different language (language different than the default source language).
 
  
I want to translate customized features of the interface (new fields) into a different language.
+
== Information ==
  
I want to edit an existing translation of the interface.
+
Each use case includes some or all of the following information:
  
I want to delete an existing translation of the interface.
+
Summary
  
I want to translate content (descriptions, drop-down value list terms, static pages) into a different language.
+
*'''Use case number''': UC-x.x.x, unique tracking number assigned to the use case.
  
I want to edit an existing translation of content.
+
*'''Use case name''': descriptive name assigned to requirement.
  
I want to delete an existing translation of content but not the original.
+
*'''Context (parent requirements)''': links to higher-level cases, if applicable.
  
I want to assign someone to edit a translation without being able to delete it.
+
*'''Sub-requirements''': links to lower-level cases, if applicable.
  
I want to assign someone to edit a translation without being able to edit the translation of the interface.
+
*'''Overview''': brief description of the scenario.
  
I want to assign some translation rights to someone for one specific language but not any other.
+
*'''Actors''': the main actor(s) involved in the scenario.
  
  
== Output ==
+
Description
  
 +
*'''Preconditions''': other use cases whose completion is a precondition for the current case.
  
 +
*'''Trigger''': the event that initiates the current case.
  
== Administer ==
+
*'''Successful outcome''': the outcomes of a successful resolution of the scenario.
 +
 
 +
*'''Main scenario''': step-by-step breakdown describing the scenario as leading to a successful outcome.
 +
 
 +
*'''Exceptions / variations''': other possible variations, including unsuccessful outcomes ("Scenario B", "Scenario C" etc).
 +
 
 +
 
 +
Requirements
 +
 
 +
*'''Functional requirements''': links to associated functional requirements (FR-x).
 +
 
 +
*'''Metadata requirements''': links to associated metadata requirements (MR-x).
 +
 
 +
*'''Technical requirements''': links to associated technical requirements (TR-x).
 +
 
 +
 
 +
Documentation
 +
 
 +
*'''Diagrams''': work-flow or other diagrams illustrating the scenario.
 +
 
 +
*'''User Manual''': links to the [[User manual]] sections that provide step-by-step instructions for activities relating to the scenario.
 +
 
 +
 
 +
== Index of use cases ==
 +
 
 +
The following is the full index to use cases identified to date.
 +
 
 +
 
 +
[[UC-1|'''UC-1 Implement a system of control''']]
 +
*[[UC-1.1|UC-1.1 Define system scope]]
 +
**[[UC-1.1.1|UC-1.1.1 Implement a multi-repository network]]
 +
**[[UC-1.1.2|UC-1.1.2 Implement a local stand-alone application]]
 +
**[[UC-1.1.3|UC-1.1.3 Integrate a local application with an existing system]]
 +
**[[UC-1.1.4|UC-1.1.4 Use the network as the local system]]
 +
 
 +
*[[UC-1.2|UC-1.2 Implement a system of intellectual control]]
 +
**[[UC-1.2.1|UC-1.2.1 Implement an arrangement policy]]
 +
**[[UC-1.2.2|UC-1.2.2 Implement a descriptive standard]]
 +
 
 +
 
 +
[[UC-2|'''UC-2 Add / edit content''']]
 +
*[[UC-2.1|UC-2.1 Appraise materials]]
 +
 
 +
*[[UC-2.2|UC-2.2 Acquire archival materials]]
 +
 
 +
*[[UC-2.3|UC-2.3 Store archival materials]]
 +
 
 +
*[[UC-2.4|UC-2.4 Preserve archival materials]]
 +
 
 +
*[[UC-2.5|UC-2.5 Describe archival materials]]
 +
 
 +
**[[UC-2.5.1|UC-2.5.1 Assign a unique identifier to a unit of archival material]]
 +
**[[UC-2.5.2|UC-2.5.2 Assign a title to a unit of archival material]]
 +
**[[UC-2.5.3|UC-2.5.3 Assign a unit to the hierarchy of arrangement]]
 +
**[[UC-2.5.4|UC-2.5.4 Record the dates of archival materials]]
 +
**[[UC-2.5.5|UC-2.5.5 Record the extent of archival materials]]
 +
**[[UC-2.5.6|UC-2.5.6 Identify the creator of archival materials]]
 +
**[[UC-2.5.7|UC-2.5.7 Describe the history of custody of archival materials]]
 +
**[[UC-2.5.8|UC-2.5.8 Describe the conditions of access and use of archival materials]]
 +
**[[UC-2.5.9|UC-2.5.9 Indicate the existence of related archival materials]]
 +
 +
*[[UC-2.6|UC-2.6 Describe actors that interact with archival materials]]
 +
**[[UC-2.6.1|UC-2.6.1 Identify actors]]
 +
**[[UC-2.6.2|UC-2.6.2 Describe the nature, context, and activities of actors]]
 +
**[[UC-2.6.3|UC-2.6.3 Indicate relationships between actors]]
 +
**[[UC-2.6.4|UC-2.6.4 Identify related archival materials]]
 +
 +
*[[UC-2.7|UC-2.7 Describe institutions that have custody of archival materials]]
 +
 
 +
*[[UC-2.8|UC-2.8 Control description records]]
 +
 
 +
*[[UC-2.9|UC-2.9 Assign access points to descriptions]]
 +
 
 +
*[[UC-2.10|UC-2.10 Administer access to archival materials]]
 +
 +
*[[UC-2.11|UC-2.11 Promote archival materials]]
 +
 
 +
 
 +
[[UC-3|'''UC-3 Translate content''']]
 +
 
 +
 
 +
[[UC-4|'''UC-4 Access content''']]
 +
 
 +
 
 +
[[UC-5|'''UC-5 Import / export content''']]
 +
 
 +
 
 +
[[UC-6|'''UC-6 Administer the system''']]

Latest revision as of 13:51, 11 July 2008

Please note that ICA-AtoM is no longer actively supported by Artefactual Systems.
Visit https://www.accesstomemory.org for information about AtoM, the currently supported version.

Main Page > System requirements > Use cases

Purpose

Use cases describe interactions with an application from the end-users' point of view in a variety of what if scenarios. Use cases:

  • Test the application's current functionality.
  • Identify issues that need to be addressed in future releases.
  • Support development of user-end documentation.


Organization

Use cases are clustered around the same broad categories as the functional requirements. Like the latter, use cases are organized hierarchy with high-level scenarios broken down into more specific tests (sub- and sub-sub-cases). To facilitate cross-references and links, each case has been assigned an alpha-numeric code: the alpha prefix designates its type (UC = use case), the number establishes its position in the hierarchy. Six main use cases have been identified:


Use case actors

The following generic actors are invoked in the use cases:

  • Institution: a body having custody and control of archival materials.
  • Archivist: a staff member of an Institution.
  • Network: a group of Institutions sharing descriptions and other information relating to archival materials.
  • Administrator: a person responsible for the application of an Institution or Network.
  • Researcher: a person who accesses the archival materials held by Institutions.


Information

Each use case includes some or all of the following information:

Summary

  • Use case number: UC-x.x.x, unique tracking number assigned to the use case.
  • Use case name: descriptive name assigned to requirement.
  • Context (parent requirements): links to higher-level cases, if applicable.
  • Sub-requirements: links to lower-level cases, if applicable.
  • Overview: brief description of the scenario.
  • Actors: the main actor(s) involved in the scenario.


Description

  • Preconditions: other use cases whose completion is a precondition for the current case.
  • Trigger: the event that initiates the current case.
  • Successful outcome: the outcomes of a successful resolution of the scenario.
  • Main scenario: step-by-step breakdown describing the scenario as leading to a successful outcome.
  • Exceptions / variations: other possible variations, including unsuccessful outcomes ("Scenario B", "Scenario C" etc).


Requirements

  • Functional requirements: links to associated functional requirements (FR-x).
  • Metadata requirements: links to associated metadata requirements (MR-x).
  • Technical requirements: links to associated technical requirements (TR-x).


Documentation

  • Diagrams: work-flow or other diagrams illustrating the scenario.
  • User Manual: links to the User manual sections that provide step-by-step instructions for activities relating to the scenario.


Index of use cases

The following is the full index to use cases identified to date.


UC-1 Implement a system of control


UC-2 Add / edit content


UC-3 Translate content


UC-4 Access content


UC-5 Import / export content


UC-6 Administer the system