CS 411W - Notes Product Development Documentation.

Slides:



Advertisements
Similar presentations
Software Requirements
Advertisements

Software Quality Assurance Plan
1 Information Systems Development (ISD) Systems Development Life Cycle Overview of Analysis Phase Overview of Design Phase CP2236: Information Systems.
Systems Analysis and Design Feasibility Study. Introduction The Feasibility Study is the preliminary study that determines whether a proposed systems.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Software Engineering COMP 201
Software Testing and Quality Assurance
WKES 3202 SOFTWARE REQUIREMENTS ENGINEERING SEMESTER 1 SESSION 2004/2005.
8/28/2005ECEN5543 Req Elicitation1 Targets of Requirements Engineering ECEN 5543 SW Engineering of Standalone Programs University of Colorado, Boulder.
Software Requirements
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
7M701 1 Software Engineering Software Requirements Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 5
Software Requirements
1 Introduction to System Engineering G. Nacouzi ME 155B.
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
SE 555 – Software Requirements & Specifications Introduction
Systems Engineering Management
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher (2009) with material from: IEEE Standard, Daniel Amyot.
Software Requirement Specification(SRS)
The Vision Document 1. Importance of a Vision Document  It describes the application in general terms, including descriptions of the target market, the.
Requirements Engineering
SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
Lesson 7 Guide for Software Design Description (SDD)
Software Requirements Specification (SRS) Complete description of external behavior of software system Complete description of external behavior.
Requirements Analysis
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
Software System Engineering: A tutorial
 Explain the role of a system analyst.  Identify the important parts of SRS document.  Identify the important problems that an organization would face.
1 Lecture 5.2a: SEF Ch 8 SE Outputs Dr. John MacCarthy UMBC CMSC 615 Fall, 2006.
Feasibility Study.
Standard SRS Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering Lecture.
Software Requirements Presented By Dr. Shazzad Hosain.
소프트웨어공학 강좌 1 Chap 4. Software Requirements - Descriptions and specifications of a system - Soo-Mi Choi
Software Requirements Engineering CSE 305 Lecture-2.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Lecture 7: Requirements Engineering
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
Requirement Handling
CONTENTS OF THE SRS REPORT. Software Requirements Specification (SRS) template The SRS document describes recommended approaches for the specification.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Chapter 4 Software Requirements
L To identify the services that the customer requires from a system and the constraints under which it operates and is developed.
(SRS) SOFTWARE REQUIREMENT SPECIFICATION(SRS) 1. Topics to be discussed.. What is an SRS? Purpose of an SRS Who reads the SRS? Who writes the SRS? Characteristics.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
CSE 303 – Software Design and Architecture
第 11 組 MIS 報告. Phases of any information system ~ recognition of a business problem or opportunity ~ recognition of a business problem or opportunity.
Software Requirements Specification (SRS)
Winter 2007SEG2101 Chapter 31 Chapter 3 Requirements Specifications.
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Software Engineering Lecture 10: System Engineering.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
1 Software Requirements Descriptions and specifications of a system.
 System Requirement Specification and System Planning.
Daniel Amyot, University of Ottawa Based on slides by Gunter Mussbacher (2009) and Stéphane Somé (2008) with material from these standards: IEEE ,
SYSTEM ANALYSIS AND DESIGN
Requirements Analysis
Software Requirements Specification Document
Software Requirements Specification (SRS) Template.
Requirements Document
Applied Software Project Management
Requirements Engineering Lecture 6
Presentation transcript:

CS 411W - Notes Product Development Documentation

CS-411W Product Development Documentation The professor gave the class a set of requirements to meet. One student failed the assignment. He argued to the professor that not only did he do all those requirements but that he did extra work and added some really neat functions. "Exactly," replied the professor, "you didn't meet the requirements."

Management Plans Requirements Specifications Test and Acceptance Plans Top Level Design Test and Acceptance Procedures Detailed Design Software Design Hardware Design Installation Design Users Manuals Maintenance Manuals Development Phases and Supporting Documentation

REQUIREMENTS VS. SPECIFICATIONS DEFINITIONS Requirement. A statement identifying a capability, physical characteristic, or quality factor that bounds a product or process need for which a solution will be pursued. Specification. A document that fully describes a physical element or its interfaces in terms of requirements (functional, performance, constraints and physical characteristics) and the qualification conditions and procedures for each requirement. System. The top element of the system architecture, specification tree, or system breakdown structure that is comprised of one or more products and associated life cycle processes and their products and services. DEVELOPING REQUIREMENTS Development of good requirements is essential to quality product design Basics of well defined requirements are clarity, conciseness and simplicity In the words of Albert Einstein: "When you are out to describe the truth, leave elegance to the tailor".

TYPES OF REQUIREMENTS Functional requirements describe the capabilities of the product or system (what the system must do). Performance requirements describe how well the product or system must perform a function. Performance requirements complement the functional requirements, and these are sometimes combined into single requirements. Interface requirements specify how the system will interact or interoperate with an adjacent system. Safety, Quality, Reliability, Maintainability, etc. (the “ilities”) – this set of requirements relate to overarching system questions, such as “how long will it work without breaking” and “can it hurt me”. Some “ility” requirements can be decomposed into specific functional and performance requirements. Others essentially put constraints on the design, implementation, manufacturing, or production processes.

REQUIREMENTS CHARACTERISTICS Consistent. The stated requirement does not contradict other requirements. It is not a duplicate of another requirement. The same term is used for the same item in all requirements. Unambiguous. Each requirement must have one and only one interpretation. Language used in the statement must not leave a doubt in the reader's mind as to the intended descriptive or numeric value. Verifiable. The stated requirement is not vague or general but is quantified in a manner that can be verified by one of these 4 alternative methods: inspection, analysis, demonstration or test.

REQUIREMENTS CHARACTERISTICS Necessary. The stated requirement is an essential capability, physical characteristic, or quality factor of the product or process. If it is removed or deleted, a deficiency will exist, which cannot be fulfilled by other capabilities of the product or process. Concise (minimal, understandable). The requirement statement includes only one requirement stating what must be done and only what must be done, stated simply and clearly. It is easy to read and understand Implementation free. The requirement states what is required, not how the requirement should be met. A requirement statement should not reflect a design or implementation nor should it describe an operation. However, the treatment of interface requirements is generally an exception. Attainable. (achievable or feasible). The stated requirement can be achieved by one or more developed system concepts at a definable cost. This implies that at least a high level conceptual design has been completed and cost tradeoff studies have been conducted. Complete. (standalone) The stated requirement is complete and does not need further amplification. The stated requirement will provide sufficient capability.

PRODUCT SPECIFICATION OUTLINE 1. Introduction 1.1 Purpose Describe the purpose of the Product Specify who the intended audience is. 1.2 Scope Identify the product to be produced by its name. Explain at a very high level what the product will do and what it won't do. Describe the application of the product, i.e., its objectives, relative benefits, and goals as precisely as possible. 1.3 Definitions, Acronyms, and Abbreviations List all definitions, acronyms and abbreviations used in this subsection. 1.4 References Provide a complete list of all documents referenced. Identify each document by title, report number or version id, data, publishing organization, etc. 1.5 Overview · Describe what the rest of the Product Specification contains. · Describe how the Product Specification is organized.

PRODUCT SPECIFICATION OUTLINE (CONT) 2. General Description 2.1 Product Perspective Identify if the product is totally self-contained or part of a larger system or product line. If the product is part of a larger system, then describe the function of the larger system and how this product will interface to the larger system. This is at a high level. 2.2 Product Functions Provide a summary of the functions that the product will provide. Do not go into detail at this point. Detail follows in section 3.1. Use diagrams to provide a high-level representation of the high-level summary. 2.3 User Characteristics Describe general characteristics of the users that will affect the functionality of the product. Things such as educational level, technical expertise may affect general functionality of the product. 2.4 General Constraints Describe items that will limit the developer's options for designing the system. Examples are regulatory policies, audit functions, hardware limitations, interfaces to other applications, safety and security considerations, etc. This section should not be used to document design constraints. 2.5 Assumptions and Dependencies Describe any assumptions that have been made and that would affect the requirements if they turned out to be false. An example assumption is that a specific piece of hardware will be available before the product goes into testing. Describe any dependencies that exist. A dependency may be that a specific subsystem, hardware, or software component exists.

PRODUCT SPECIFICATION OUTLINE (CONT) 3. Specific Requirements This section contains the detailed requirements. Each requirement should be a single statement that describes a key attribute of the product. Requirements should be grouped under functional, performance, design constraints, and non-functional requirements. Requirements under each subsection should be further grouped into functional areas. A functional area is a grouping of related requirements that provide related functionality. For example, in a word processor, the requirements for the grammar checker may be grouped under the functional area grammar checker. 3.1 Functional Requirements State each functional requirement as an individual statement with a unique identified Functional Requirement Functional Requirement 2

PRODUCT SPECIFICATION OUTLINE (CONT) 3.2 Performance Requirements Describe any performance requirements in this section. Performance requirements should possess numeric boundaries, etc. They should be stated in measurable terms. Each requirement should be stated as an individual statement with a unique identifier Performance Requirement Performance Requirement Design Constraints This section should identify any design constraints that have been imposed by other standards, hardware limitations, customer requirements, etc. 3.4 Non-Functional Requirements Describe the non-functional requirements that characterize the function of the product. Examples of these are security, maintainability, and reliability. Place those that are pertinent to your product in this section Security Maintainability Reliability Appendix Put items that provide additional information, but do not belong in the body.

PRODUCT DEVELOPMENT EXAMPLE