Requirements Engineering

Slides:



Advertisements
Similar presentations
Requirements Validation
Advertisements

Introduction to Software Engineering Dr. Basem Alkazemi
Requirements Analysis CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology January 7, 2003.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Requirements Engineering copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Introduction to Software Engineering
SWE Introduction to Software Engineering
7M701 1 Software Engineering Software Requirements Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 5
Software Requirements
1 To introduce the concepts of user and system requirements To introduce the concepts of user and system requirements To describe functional and non- functional.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 1 (cont ’d) Title : Client requirements (Review) Mandatory reading: I.
Overview of Software Requirements
1 CSC-3324: Chapter 4 Title: What is a requirement? Mandatory reading: Sommerville 6, 7 th ed., Chap.: 7.
SE 555 – Software Requirements & Specifications Introduction
CS 501: Software Engineering
7M822 Software Requirements Introduction 7 September 2010.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
1 College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 2 Chapter 6 & 7 System.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CS 4310: Software Engineering Lecture 3 Requirements and Design.
Chapter 4 – Requirements Engineering
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Requirements Engineering Processes l Processes used to discover, analyse and.
SOFTWARE DESIGN AND ARCHITECTURE
Chapter 4 Requirements engineering Chapter 4 – Requirements Engineering Lecture 1 1.
Use Case Modeling. Watch the video on use cases Review at minute 2:41-3:37.
Adaptive Processes © Adaptive Processes Simpler, Faster, Better Software Requirements.
Software Requirements Presented By Dr. Shazzad Hosain.
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] January 31, 2012.
Lecture 7: Requirements Engineering
Requirements Engineering Overview Senior Design Don Evans.
IS550: Software requirements engineering Dr. Azeddine Chikh 2. Functional and non-functional requirements.
CT1404 Lecture 2 Requirement Engineering 1 1. Today's Lecture Definition of a Software Requirement Definition of Software Requirements Management Characteristics.
Slide 1 CS 310 Ch 6: Software Requirements Requirements engineering: establishing the services that the customer requires from a system and the constraints.
CS 5150 Software Engineering Lecture 7 Requirements 1.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
1 Quality Attributes of Requirements Documents Lecture # 25.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Requirements / Specifications. 01/18/10CS-499G2 Requirements Determine what the customer needs (wants) the software to do  What are requirements?  An.
SWE 513: Software Engineering
Version 02U-1 Computer Security: Art and Science1 Correctness by Construction: Developing a Commercial Secure System by Anthony Hall Roderick Chapman.
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Software Requirements Specification Document (SRS)
Requirements Engineering
Chapter 4 – Requirements Engineering Lecture 1 The hardest part of the software task is arriving at a complete and consistent specification, and much of.
Software Requirements. Objectives: l To introduce the concepts of user and system requirements l To describe functional / non-functional requirements.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
System Development Life Cycle (SDLC). Activities Common to Software Projects Planning : Principles Principle #1. Understand the scope of the project.
1 Software Requirements Descriptions and specifications of a system.
 System Requirement Specification and System Planning.
Requirements Introduction Emerson Murphy-Hill. Scope of Software Project Failures WHY PROJECTS FAIL % 1. Incomplete Requirements Lack of user involvement12.4.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Chapter 4 – Requirements Engineering
Chapter 4 Requirements Engineering (1/3)
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
Class 7 – Inception Phase: Steps & techniques
Requirement Engineering
SNS College of Engineering Coimbatore
Software Requirements
Software Requirements analysis & specifications
UNIT II.
Requirements Reference: Software Engineering, by Ian Sommerville, 6th edition, Chapters 5, 6, & 8.
Requirements Analysis
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

Requirements Engineering

Requirements Engineering The first step of each process model What do we want to build? They may range from a high-level abstract statement of a service or of a system constraint to a detailed mathematical functional specification: can be statements (“The system shall…”), diagrams, use cases, etc. Can be used as basis for contacts, etc.

Requirements specify external behavior Functional requirements are statements of the services that the system must provide “The system shall display the heart rate of the patient” Non-functional requirements are constraints on the services and functions offered by the system “The system shall display the heart rate of the patient within two seconds” Performance, Scalability, Capacity, Availability Reliability, Recoverability, Maintainability, Serviceability, Security,
Regulatory, Manageability Exercise: list some functional and non-functional requirements for an iPhone

Answer: list some functional and non-functional requirements for an iPhone The system shall make a phone call The system shall receive a phone call The system shall allow the user to adjust volume etc Non-functional: The system shall boot up in 60 seconds or less The system shall respond to touch within 1 second

Requirements qualities Three Cs: Clear Consistent Complete (internally and externally) Use the SE principle of incrementality to derive requirements Remember, they must all be externally visible Why? They must all be testable

Exercise Give an unclear requirement, then fix it Give an inconsistent set of requirements, then fix them Give an incomplete requirement, then fix it*

Answer Unclear: “The background shall be blue” There are many shades of blue…is #3333CC blue? Fix: “The background shall be #0000FF” Inconsistent: “The background shall be red” and, elsewhere “The background shall be a cool color” Incomplete: This is the hardest; it means we’re missing a requirement or information Fix: …make sure you have all your requirements (externally complete) Fix: …make sure you have enough info; include supporting documents when needed (i.e. what is 508 compliance?) (internally complete)

Testable Requirements Do not use vague terminology; “errors shall be minimized…” Should NOT partially pass or fail Should have a source

Requirements Validation It’s cheapest to fix faults at this step, than later on (sometimes 100 times cheaper) Are they testable? Do any conflict? Do they cover all aspects of the system? Are they what the customer wanted?

Quiz review What is a functional requirement? What is a non-functional requirement? What do all requirements have to be?

In-class exercises Let’s imagine we have an ATM Come up with 5 functional requirements Show how each requirement could be improved Show how each requirement could have been worse Come up with 3 non-functional requirements Do the same as above Complete the exercises at http://www.cs.gmu.edu/~kdobolyi/cs321/Requirements_Worksheet.docx http://www.cs.gmu.edu/~kdobolyi/cs321/hwk01.html

Assignment (time permitting) Examine the Quiz Game description In your teams, come up with at least seven functional requirements and at least two non-functional requirements Remember the three Cs Requirements specify external behavior Requirements must be testable Turn in this assignment through svn See instructions and grading rubric on project page