Software Engineering Lecture #3

Slides:



Advertisements
Similar presentations
Software Requirements
Advertisements

Software Requirements
Introduction to Software Requirements.  It depends who you ask…  Requirements try to describe the whole system you are creating.  You need to decide.
Software Requirements
Software Requirements
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Software Requirements
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
SE 555 – Software Requirements & Specifications Introduction
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Software Requirements l Descriptions and specifications of a system.
Software System Engineering: A tutorial
BMAN Integrative Team Project Week 2 Professor Linda A Macaulay.
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 Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn Lecture 4 & 5.
Software Requirements Engineering: What, Why, Who, When, and How
1 CSE 403 Software Requirements Reading: Pragmatic Programmer Ch. 7: Before the Project These lecture slides are copyright (C) Marty Stepp, 2007, with.
Lecture 7: Requirements Engineering
1 Requirements Management - General concepts - Noureddine Abbadeni King Saud University College of Computer and Information Sciences Based on “Software.
Software Acquisition and Project Management Lesson I: Introduction.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
L To identify the services that the customer requires from a system and the constraints under which it operates and is developed.
Software Requirements: A More Rigorous Look 1. Features and Use Cases at a High Level of Abstraction  Helps to better understand the main characteristics.
06 Jul 2006CSE403, Summer'06, Lecture08 Lecture 08: Requirements Gathering Techniques (Part II) Valentin Razmov “The goal of requirements engineering is.
Software Engineering REQUIREMENT ENGINEERING. Software Engineering Phases.
Lecture 4: Requirements Engineering COSI 120b, Principles of Software Engineering.
Software Requirements
BTS330: Business Requirements Analysis using OO Lecture 1: Introduction to Software Requirements.
Recent trends in IT projects – Globalization, outsourcing, and virtual teams Project management process groups – Initiating, planning, executing, monitoring.
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Software Requirements Definition - Jones The statement of needs by a user that triggers the development of a program or system - Jones 1994.
1 Software Requirements Engineering (CS 708) Dr. Ghulam Ahmad Farrukh.
Introduction to Software Requirement Engineering Nisa’ul Hafidhoh Teknik Informatika
1 Software Requirements Descriptions and specifications of a system.
 System Requirement Specification and System Planning.
REQUIREMENTS ANALYSIS CONCEPTS & PRINCIPLES. Requirement  IEEE defines Software Requirements as:  A condition or capability needed by user to solve.
Requirements Introduction Emerson Murphy-Hill. Scope of Software Project Failures WHY PROJECTS FAIL % 1. Incomplete Requirements Lack of user involvement12.4.
Software Engineering, COMP201 Slide 1 Software Requirements.
Software Requirements Engineering (CS 708)
Types and Characteristics of Requirements
Chapter 4 – Requirements Engineering
Classifications of Software Requirements
Chapter 4 – Requirements Engineering
Software Requirements
Presentation on Software Requirements Submitted by
Chapter 5 – Requirements Engineering
Software Engineering Lecture #41
Software Requirements
Software Requirements
SNS College of Engineering Coimbatore
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Requirements Elicitation – 1
Software Engineering Lecture #2
Lecture 07: Techniques for Gathering Requirements
Requirements Engineering Introduction
Software Engineering Furqan Rustam.
Introduction to Requirements Management
Software Engineering Lecture 16.
Lecture # 7 System Requirements
Requirements Document
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Software Engineering Lecture #29
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Requirements Engineering Lecture 6
Requirements gathering
Software Requirements
Software Requirements
Presentation transcript:

Software Engineering Lecture #3 Fakhar Lodhi

Requirement Engineering

Definitions

Importance of requirements

Levels of Requirements

Functional and Non-functional Requirements

Requirement Statement versus Requirement Specification

Some Risks from Inadequate Requirement Process

Summary of Today’s Discussion

Recap

Software Engineering Phases Vision – focus on why Definition – focus on what 2. Development – focus on how 3. Maintenance – focus on change Vision Definition Development Maintenance

Software Requirements – Definition - IEEE A condition or capability needed by user to solve a problem or achieve an objective. A condition or capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification, or other formally imposed document. A documented representation of a condition or capability as in 1 or 2. Make the definitions appear one by one.

Software Requirements – Definition - Jones The statement of needs by a user that triggers the development of a program or system - Jones 1994

Software Requirements – Definition – Davis A user need or necessary feature, function, or attribute of a system that can be sensed from a position external to that system - Alan Davis 1993

Software Requirements - Definition Requirements are ... A specification of what should be implemented. They are descriptions of how the system should behave, or of a system property or attribute. They may be a constraint on the development process of the system. - Sommerville 1997 Highlight the text line by line i.e. this text will have line by line animation.

Levels of Requirements Business Requirements User Requirements Functional Requirements Non-Functional Requirements Make every bullet one by one

Relationship of Several components of Software Requirements Business Requirements Vision and Scope document User Requirements Quality Attributes Other Non-functional Requirements Use Case document System Requirements Functional Requirements Constraints Functional Specification Documents

Importance of the Software Requirement Process The hardest single part of building a software system is deciding precisely what to build. No other part of the conceptual work is as difficult as establishing the detailed technical requirements, including all the interfaces to people, to machines, and to other software systems. No other part of the work so cripples the system if done wrong. No other part is more difficult to rectify later. Fred Brooks - No Silver Bullet: Essence and Accidents of Software Engineering, 1987.

Role of Requirements Project Planning Project Tracking Construction Process Software Requirements User Documentation Change Control System Testing

Some Risks From Inadequate Requirement Process Insufficient user involvement leads to unacceptable products. Creeping user requirements contribute to overruns and degrade product quality. Ambiguous requirements lead to ill-spent time and rework. Gold-plating by developers and users adds unnecessary features. Minimal specifications lead to missing key requirements. Overlooking the needs of certain user classes (stake holders) leads to dissatisfied customers. Incompletely defined requirements make accurate project planning and tracking impossible.

Stake Holders Management Marketing Software Requirements System Eng. provides business requirements and project parameters Provides Business Requirements and Project Parameters Software Requirements allocate system requirements to software Specifies hardware interfaces the software must respect describe user requirements and quality attributes System Eng. Users Hardware Eng.

Stake Holders describe user requirements and quality attributes provides business requirements and project parameters Marketing Management Software Requirements Provides Business Requirements and Project Parameters Hardware Eng. System Eng. allocate system requirements to software Users Specifies hardware interfaces the software must respect