Software Requirements

Slides:



Advertisements
Similar presentations
Software Requirements
Advertisements

Software Requirements
Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department of Defense © 1998 by Carnegie Mellon.
SWE Introduction to Software Engineering
Software Requirements
Requirements Engineering Process – 1
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
Functional & non-functional Requirements
©Ian Sommerville Software Engineering Slide 1 Software Requirements l Definition: Description and Specifications of a system l Topics covered: Functional.
Dr. Tom WayCSC Software Requirements CSC 4700 Software Engineering Lecture 2 Based on Sommerville, Chapter 6.
Software Requirements Presented By Dr. Shazzad Hosain.
Software Requirements Lecture # 3. 2 Kinds of Software Requirements Functional requirements Non-functional requirements Domain requirements Inverse requirements.
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.
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
IS550: Software requirements engineering Dr. Azeddine Chikh 2. Functional and non-functional requirements.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
1 Quality Attributes of Requirements Documents Lecture # 25.
Week 3: Requirement Analysis & specification
SWE 513: Software Engineering
Software Requirements
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Chapter 4 – Requirements Engineering Lecture 1 The hardest part of the software task is arriving at a complete and consistent specification, and much of.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Software Requirement Engineering SE Resource Person: Ikram Ullah Khan.
1 Software Requirements Engineering (CS 708) Dr. Ghulam Ahmad Farrukh.
1 Review of Lectures 1-21 Lecture # Introduction Requirements form the basis for all software products Requirements engineering is the process,
Software Requirements Engineering (CS 708)
Requirements Errors Lecture # 14.
Types and Characteristics of Requirements
EKT 421 SOFTWARE ENGINEERING
Classifications of Software Requirements
Requirements Engineering
Chapter 4 – Requirements Engineering
Software Requirements
Presentation on Software Requirements Submitted by
Chapter 4 Requirements Engineering (1/3)
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
Prototyping Lecture # 08.
Requirements Validation – II
Requirements Traceability
Requirements Traceability
Writing Requirements Lecture # 23.
Chapter 8 – Software Testing
Software Requirements
SNS College of Engineering Coimbatore
Verification and Validation
Requirements Elicitation – 1
Chapter 4 Software Requirements
Verification and Validation
Chapter 2 – Software Processes
UNIT II.
Software Requirements
Requirements Analysis
Chapter 2 – Software Processes
Software Requirements Engineering
Requirements Engineering Process – 1
Requirements Management - I
Requirements Traceability
Lecture # 7 System Requirements
Requirements Document
Requirements Validation – I
Requirements Analysis and Negotiation
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Software Requirements
Software Requirements
SNS College of Engineering Coimbatore
Presentation transcript:

Software Requirements Lecture # 2

Kinds of Software Requirements Functional requirements Non-functional requirements Domain requirements Inverse requirements Design and implementation constraints

Non-Functional Requirements

Non-Functional Requirements - 1 Most non-functional requirements relate to the system as a whole. They include constraints on timing, performance, reliability, security, maintainability, accuracy, the development process, standards, etc.

Non-Functional Requirements - 2 They are often more critical than individual functional requirements Capture the emergent behavior of the system, that is they relate to system as a whole

Non-Functional Requirements - 3 Must be built into the framework of the software product Failure to meet a non-functional system requirement may make the whole system unusable

Non-Functional Requirements - 4 For example, if an aircraft system does not meet reliability requirements, it will not be certified as ‘safe’ If a real-time control system fails to meet its performance requirements, the control functions will not operate correctly

Non-Functional Requirements - 5 Non-functional requirements arise through user needs, because of budget constraints, because of organizational policies, because of the need of interoperability with other software and hardware systems, or because of external factors such as safety regulations, privacy legislation, etc.

Non-Functional Requirements Product requirements Organizational requirements External requirements

Product Requirements Product requirements Usability requirements Efficiency requirements Reliability requirements Portability requirements Performance requirements Space requirements

Product Requirements Examples The system shall allow one hundred thousand hits per minute on the website The system shall not have down time of more than one second for continuous execution of one thousand hours

Organizational Requirements Standards requirements Implementation requirements Delivery requirements

Organizational Requirements Examples The system development process and deliverable documents shall conform to the MIL-STD-2167A Any development work sub-contracted by the development organization shall be carried out in accordance with Capability Maturity Model

External Requirements Interoperability requirements Ethical requirements Legislative requirements Privacy requirements Safety requirements

External Requirements Examples The system shall not disclose any personal information about members of the library system to other members except system administrators The system shall comply with the local and national laws regarding the use of software tools

Observations on Non-Functional Requirements - 1 Non-functional requirements can be written to reflect general goals for the system. Examples include: Ease of use Recovery from failure Rapid user response

Observations on Non-Functional Requirements - 2 Goals are open to misinterpretation Objective verification is difficult Distinction between functional and non-functional is not always very clear

Observations on Non-Functional Requirements - 3 Non-functional requirements should be written in a quantitative manner as much as possible, which is not always easy for customers For some goals, there are no quantitative measures, e.g., maintainability

Observations on Non-Functional Requirements - 4 Goals can be useful to designers and developers, as they give clues to them about priorities of the customers

Observations on Non-Functional Requirements - 5 Chances of conflicts within non-functional requirements are fairly high, because information is coming from different stakeholders. For example, different stakeholders can give different response times or failure tolerance levels, etc.

Observations on Non-Functional Requirements - 6 Some negotiations must be done among different stakeholders, to achieve an agreement in these situations

Observations on Non-Functional Requirements - 7 Non-functional requirements should be highlighted in the requirements document, so that they can be used to build the architecture of the software product

Summary Discussed different aspects of the non-functional requirements Non-functional requirements capture very important emergent behavior of the automated system Due importance, time, and resources should be given to non-functional requirements

References ‘Requirements Engineering: Processes and Techniques’ by G. Kotonya and I. Sommerville, John Wiley & Sons, 1998 Software Requirements: Objects, Functions, and States by A. Davis, PH, 1993 Software Engineering 6th Edition, by I. Sommerville, 2000 Software Engineering 5th Edition, by R. Pressman