CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,

Slides:



Advertisements
Similar presentations
Requirements Specification and Management
Advertisements

Software Requirements
Software Quality Assurance Plan
Software Engineering 1. Software development – the grand view 2. Requirements engineering.
Introduction to Software Engineering Dr. Basem Alkazemi
Requirements and Design
Introduction to Software Engineering
Capturing the requirements
Unit 211 Requirements Phase The objective of this section is to introduce software system requirements and to explain different ways of expressing these.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
Software Requirements
Requirements (recap)‏
Overview of Software Requirements
Chapter 4 Capturing the Requirements 4th Edition Shari L. Pfleeger
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Requirements Analysis Document Template 1.Introduction.
Ethics in Software Engineering
The Software Development Life Cycle: An Overview
System Testing There are several steps in testing the system: –Function testing –Performance testing –Acceptance testing –Installation testing.
Requirements/Systems analyst
Requirements Elicitation. Requirement: a feature or constraint that the system must satisfy Requirements Elicitation: specification of the system that.
S/W Project Management
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Typical Software Documents with an emphasis on writing proposals.
Software Engineering 2003 Jyrki Nummenmaa 1 REQUIREMENT SPECIFICATION Today: Requirements Specification Requirements tell us what the system should.
SE-02 SOFTWARE ENGINEERING LECTURE 3 Today: Requirements Analysis Requirements tell us what the system should do - not how it should do it. Requirements.
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements.
Software System Engineering: A tutorial
Business Analysis and Essential Competencies
CEN rd Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Phases of Software.
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa REQUIREMENT SPECIFICATION Today: Requirements Specification.
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.
IT Requirements Management Balancing Needs and Expectations.
Some Sub-Activities within Requirements Engineering 1.Prototyping 2.Requirements Documentation 3.Requirements Validation 4.Requirements Measurements 5.Requirements.
Software Requirements Engineering: What, Why, Who, When, and How
Lecture 7: Requirements Engineering
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Topics Covered Phase 1: Preliminary investigation Phase 1: Preliminary investigation Phase 2: Feasibility Study Phase 2: Feasibility Study Phase 3: System.
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
Chapter 4 Software Requirements
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
Systems Development Life Cycle
1 Quality Attributes of Requirements Documents Lecture # 25.
Requirements Validation
MADALINA CROITORU Software Engineering week 3 Madalina Croitoru IUT Montpellier.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Week 3: Requirement Analysis & specification
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
System Requirements Specification
1 The Requirements Problem Chapter 1. 2 Standish Group Research Research paper at:  php (1994)
Requirements Engineering Requirements Validation and Management Lecture-24.
Software Requirements Specification Document (SRS)
Requirements Analysis
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
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.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
 System Requirement Specification and System Planning.
Classifications of Software Requirements
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
Developing Information Systems
Requirements Analysis and Specification
Software Requirements analysis & specifications
UNIT II.
Requirements Analysis
Software Requirements Specification Document
Lecture # 7 System Requirements
Presentation transcript:

CMSC 345 Fall 2000 Requirements Overview

Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes, etc. Capture written requirements in document Verify to ensure complete, correct and consistent Validate to ensure requirements describe what customer intends for final product

Participants Contract monitors – milestones and schedules Customers and users – meet needs Business managers – business consequences of building and using Designers – develop solution to be implemented as software-based system Testers – test suites ensure system satisfies each requirement

Requirements Categories Absolutely must be met Highly desirable but not necessary Possible but could be eliminated

Requirements Focus Requirements deal with objects or entities, the states they can be in and the functions that are performed to change state Requirements are specific descriptions of functions or characteristics Requirements define system objects, limit them, or define relationships among them Requirements DO NOT specify how the system is to be implemented

Functional Requirements Describe interaction between system and its environment Acceptable states, or sets of conditions, for system to be in What should cause system or entities in system to transition from one state to another, or to perform an activity Describe system activities and state of system before and after each activity Independent of implementation

Nonfunctional Requirements Restrictions on system that (may) limit implementation choices Constraints (may) narrow selection of language, platform, implementation techniques or tools Actual selection made at design time, after requirements specified

Types of Requirements (1) Physical Environment Where will equipment be located Any environmental restrictions – temperature, humidity, magnetic interference, etc. Interfaces Input coming from one or more other systems Output going to one or more other systems Prescribed data formats Prescribed data media

Types of Requirements (2) Users and Human Factors Who are the users Skill levels and training for each type How easy to understand and use How difficult to misuse Functionality What will system do, when, and in which modes How/when changed or enhanced Execution speed, response time, throughput, etc.

Types of Requirements (3) Documentation How much Who’s the audience Format (on-line, printed) Data Input and output formats How often sent/received Accuracy, degree of precision for calculations How much data flow through system Data retention period

Types of Requirements (4) Resources Materials, personnel, etc. Physical space, power, heating, air conditioning Developer skills, development timetable Hardware and software costs Security System and information access control Isolate one user’s data from others Isolate user’s programs from others Backup frequency and storage Precautions against fire, water damage, theft

Types of Requirements (5) Quality Assurance Reliability, availability, maintainability, security, other quality attributes How will characteristics be demonstrated Prescribed mean time between failures Maximum time for restart after failure How will design changes be incorporated Will maintenance focus on correcting vs. improving Measures for resource usage and response time How easy to move among locations or port among computers

Requirements Verification Correct – stated without error Consistent – no conflicts or ambiguities Complete – all possible states, state changes, inputs, outputs, products and constraints described External – all ties to environment covered Internal – no undefined references

Requirements Verification Realistic – can this really be done Needed (by customer) – avoid unnecessary restrictions or irrelevant functions Verifiable – must be able to demonstrate requirements have been met Traceable – each system function must be mandated by specific requirement(s)

Exercise Developers work together with customers and users to define requirements and specify what the proposed system will do. If, once it is built, the system works according to specification but harms someone physically or financially, who is responsible?

Exercise Sometimes a customer requests a requirement that you know is impossible to implement. Should you agree to put in the requirement in the specification document anyway, thinking you might come up with a novel way of meeting it or thinking you will ask the requirement be dropped later? Discuss the ethical implications of promising what you know you cannot deliver.