Site Search

CS 480: Assignments

Course Info

Course Content

Supplemental Websites

 

Requirements Specification Documentmain content

Assignment Learning Objectives

Be able to

Assignment

Use Microsoft Word to create a Requirements Specification Document containing the following sections:

  1. Title Page
    • Include your team name & logo, project name, and date
    • Include the names of the document editor and list as authors the team members who wrote content for this document
      • Use a different document editor from the Software Project Plan and Quality Assurance Plan
      • Do not list as authors the team members who did not write content
    • Include your client and faculty advisor names
  2. Table of Contents
    • Use Word's built-in automatic table of contents feature
    • The first page of the Introduction Section should appear as page 1
    • Do not include page numbers on the Title Page or Table of Contents page
    • Do not include the title or table of contents section in the Table of Contents
  3. Introduction: This section provides an overview of the entire document
    • Project Overview: Briefly describe the real-world problem
    • Project Scope: Briefly mention the most important features and constraints of your program
    • Document Preview: Describe the purpose, scope, and intended audience of this document. Preview the major sections that follow.
  4. Project Overview: This section elaborates on the topics introduced in the Introduction Section and provides background information on the factors effecting the scope of the project and its requirements
    • Begin this section with a carefully written introduction paragraph(s) previewing and summarizing the section's contents
    • Identify the client, stakeholders, and the intended users of your system
    • Provide a complete description of the problem being solved
      • Justify a computer solution to this problem and explain why a program needs to be developed rather than just bought
    • Describe the main features of your proposed system
    • Mention the most important constraints that may influence design decisions (compatibility, reliability, hardware limitations, interfaces to other systems, etc.)
  5. Development and Target Environments
    • Begin this section with a carefully written introduction paragraph(s) summarizing the section's contents and previewing the subsections that follow
    • Describe the hardware and software resources necessary to build and run the system.
    • Note: This is a rewrite and elaboration of the corresponding section of the Software Project Plan
  6. System Model
    • Begin this section with a carefully written introduction paragraph(s) summarizing the section's contents and previewing the subsections that follow
    • Present a high-level view showing the major components of the existing and proposed system and their relationships with each other
    • Use text descriptions that refer to graphical representations such as block diagrams that are included as figures in this section or as appendices
  7. User Interaction
    • Describe the actions of your program from the point of view of the user
    • Use-case diagrams and scenarios are an effective way to describe the interaction
  8. Functional Requirements: This should be the largest and most important section to the document
    • Begin this section with a carefully written introduction paragraph(s) summarizing the section's contents and previewing the subsections that follow
    • Describe in clear, unambiguous terms the requirements of the system.
    • Provide a sufficient level of detail for designers to design a system satisfying the requirements and testers to verify that the system satisfies requirements.
  9. Nonfunctional Requirements: Detail the constraints under which your system must operate.
    • Begin this section with a carefully written introduction paragraph(s) summarizing the section's contents and previewing the subsections that follow
    • Describe in detail the physical environment in which your project will be used including any other systems that your project will interface.
    • Typical nonfunctional requirements deal with compatibility, efficiency, reliability, portability, memory size constraints, response time, problem size, and so on.
  10. Feasibility
    • Begin this section with a carefully written introduction paragraph(s) summarizing the section's contents and previewing the subsections that follow
    • Make sure your project has a chance of being completed by the end of winter quarter.
    • Sketch out two versions of your system: a bare bones version that delivers the essential features (which you are confident of finishing next quarter) and an enhanced version that incorporates all the desired features.
  11. Conclusion
    • Include a short conclusion section to signal to the reader that the document is ending
  12. Appendices
    1. System block diagrams
    2. Entity-Relationship or Database Model diagrams (for projects involving databases)
    3. Website maps (for Web projects)
    4. Use-case diagrams
    5. Others as appropriate (optional)

Grading criteria

Your grade will be based on both your demonstrated writing proficiency and on the contents of the document.

Two scoring rubrics will be used in assessing this document: a content scoring rubric [PDF] and a writing proficiency scoring rubric [PDF]. You are encouraged to print these rubrics and use them as checklists for expectations, writing guidelines, and quality assurance.

You may wish to examine the previous years' CS 480 Requirements Specification Documents kept in the computer science department. Ask LaVelle to show you where the binders containing the documents are stored. Note: These binders are not to leave the department office.

Honor code: The work needs to be your own. You may wish have someone from outside the team help by proofreading a draft version and identifying problems, but the words and content contained in the documents should be your own.

Submission Guidelines

Turn in two printed copies of your Requirements Specification Document. One copy is graded and returned to you; the other copy is archived in the computer science department's files.

Include a link to your Requirements Specification Document (saved as a *.doc(x) file) on your team's Web site. I will download the file from your site to help with my grading.

Ask, and if desired, provide your faculty advisor and/or client with a printed copy of your Requirements Specification Document.

Ed Gellenbeck, Department of Computer Science, CWU
400 E. University Way, Ellensburg, WA 98926-7520