Appendix A: Use Case Template

«Project Name»

Software Requirements Specification

For «Subsystem or Feature»

Version «1.0»

[Note: The following template is provided for use with the Rational Unified Process. Text enclosed in square brackets and displayed in blue italics is included to provide guidance to the author and should be deleted before publishing the document. A paragraph entered following this style will automatically be set to normal.]

[Note: The Software Requirements Specification (SRS) captures the complete software requirements for the system, or a portion of the system.  Following is a typical SRS outline for a project using use-case modeling. This artifact consists of a package containing use cases of the use-case model and applicable Supplementary Specifications and other supporting information. For a template of an SRS not using use-case modeling, which captures all requirements in a single document, with applicable sections inserted from the Supplementary Specifications (which would no longer be needed), see rup_srs.dot.]

[Many different arrangements of an SRS are possible. Refer to IEEE-93 for further elaboration of these explanations, as well as other options for SRS organization.]

«Page Break»

Revision History

Date Version Description Author
«dd/mmm/yy» «x.x» «details» «name>

«Page Break»

Table of Contents

«Table of Contents»

«Page Break»

1. Introduction

[The introduction of the SRS should provide an overview of the entire SRS. It should include the purpose, scope, definitions, acronyms, abbreviations, references and overview of the SRS.]

1.1. Purpose

[Specify the purpose of this SRS. The SRS should fully describe the external behavior of the application or subsystem identified. It also describes nonfunctional requirements, design constraints and other factors necessary to provide a complete and comprehensive description of the requirements for the software.]

1.2. Scope

[A brief description of the software application that the SRS applies to; the feature or other subsystem grouping; what Use Case model(s) it is associated with, and anything else that is affected or influenced by this document.]

1.3. Definitions, Acronyms and Abbreviations

[This subsection should provide the definitions of all terms, acronyms, and abbreviations required to interpret properly the SRS.  This information may be provided by reference to the project Glossary.]

1.4. References

[This subsection should provide a complete list of all documents referenced elsewhere in the SRS. Each document should be identified by title, report number (if applicable), date, and publishing organization. Specify the sources from which the references can be obtained. This information may be provided by reference to an appendix or to another document.]

1.5. Overview

[This subsection should describe what the rest of the SRS contains and explain how the SRS is organized.]

2. Overall Description

[This section of the SRS should describe the general factors that affect the product and its requirements. This section does not state specific requirements. Instead, it provides a background for those requirements, which are defined in detail in section 3, and makes them easier to understand. Include such items as product perspective, product functions, user characteristics, constraints, assumptions and dependencies, and requirements subsets.]

2.1. Use-Case Model Survey

[If using use-case modeling, this section contains an overview of the use-case model or the subset of the use-case model that is applicable for this subsystem or feature.  This includes a list of names and brief descriptions of all use cases and actors, along with applicable diagrams and relationships.  Refer to the use-case model survey report, which may be used as an enclosure at this point.]

2.2. Assumptions and Dependencies

[This section describes any key technical feasibility, subsystem or component availability, or other project related assumptions on which the viability of the software described by this SRS may be based.]

3. Specific Requirements

[This section of the SRS should contain all the software requirements to a level of detail sufficient to enable designers to design a system to satisfy those requirements, and testers to test that the system satisfies those requirements.   When using use-case modeling, these requirements are captured in the use cases and the applicable supplementary specifications. If use-case modeling is not used, the outline for supplementary specifications may be inserted directly into this section.]

3.1. Use-Case Reports

[In use-case modeling, the use cases often define the majority of the functional requirements of the system, along with some non-functional requirements. For each use case in the above use-case model, or subset thereof, refer to or enclose the use-case report in this section. Make sure that each requirement is clearly labeled.]

Use Case «N»: «Use Case Name»

Summary: [Give a brief synopsis of the overall purpose and flow of this functionality. Often, a an implementation priority is given.]

Preconditions: [List the preconditions, if any, that must be true for this scenario to start, either as a single item, or as a bulleted list.]

Triggers: [List the trigger(s) for this function, typically as a single item, but possibly as a bulleted list.]

Basic course of events (main scenario):

Actor System Screen
[Numbered steps here, starting with the triggered as step 1, one step per table row. You’ll almost always be using multiple rows.] [Numbered steps here, typically starting with step 2, one step per row, but often with the response to the Actor’s action on the same row.] [A picture, drawing, or description of the screen contents for this step, assuming that there is a screen for this step, and assuming that we’re on step 1, or that the screen contents have changed for this step. If the picture is too large to fit here, move it to an appendix, and just have a reference here.]

 Alternate courses of events (alternate scenarios)

Actor System Screen
[Same rules as above, but omit any steps here that are the same as the main scenario.] [Same rules as above, but omit any steps here that are the same as the main scenario.] [Same rules as above, but omit any screens here that are the same as the main scenario.]

 Post-conditions: [List the post-conditions, if any, that will have occurred to permanent state, or to session state, either as a single item, or as a bulleted list.]

3.2. Supplementary Requirements

[Supplementary Specifications capture requirements that are not included in the use cases. The specific requirements from the Supplementary Specifications which are applicable to this subsystem or feature should be included here, refined to the necessary level of detail to describe this subsystem or feature. These may be captured directly in this document or refer to separate Supplementary Specifications, which may be used as an enclosure at this point. Make sure that each requirement is clearly labeled.]

4. Supporting Information

[The supporting information makes the SRS easier to use. It includes: a) Table of contents, b) Index, c) Appendices. These may include use-case storyboards or user-interface prototypes. When appendices are included, the SRS should explicitly state whether or not the appendices are to be considered part of the requirements.]

License

Icon for the Creative Commons Attribution-ShareAlike 4.0 International License

Requirements Engineering Copyright © 2021 by sheldonlinker is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License, except where otherwise noted.

Share This Book