Software Requirements

Similar documents
Introduction to Software Engineering

Requirements Analysis aka Requirements Engineering. Requirements Elicitation Process

IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN

CSE - Annual Research Review. From Informal WinWin Agreements to Formalized Requirements

Software Requirements Specification

2.1 Introduction. Purpose. Scope

IBM Software Group. Mastering Requirements Management with Use Cases Module 2: Introduction to RMUC

DMR Radio Authorization Operation Guide

Requirements Gathering using Object- Oriented Models

BACKPLANE ETHERNET CONSORTIUM

UML and Patterns.book Page 52 Thursday, September 16, :48 PM

Introduction to Software Engineering

Towards a Framework for Feature Deduplication during Software Product Lines Evolution

Component Based Mechatronics Modelling Methodology

BiSS Interface AN18: BiSS C ANALYZER

Volere Partial Example Requirements Specification

Course Outline Department of Computing Science Faculty of Science

CIS 890: High-Assurance Systems

Clause 71 10GBASE-KX4 PMD Test Suite Version 0.2. Technical Document. Last Updated: April 29, :07 PM

IEEE Broadband Wireless Access Working Group < Proposed PAR to convert P802.16d from Amendment to Revision

10 GIGABIT ETHERNET CONSORTIUM

EMBEDDED SYSTEM DESIGN

IEEE Major Revision of Interconnection Standard

AN0503 Using swarm bee LE for Collision Avoidance Systems (CAS)

Requirements elicitation and specification using the agent paradigm: the case study of an aircraft turnaround simulator

GIGABIT ETHERNET CONSORTIUM

The case study Encounter Section About case studies. Encounter

Automated Driving Systems with Model-Based Design for ISO 26262:2018 and SOTIF

10GECTHE 10 GIGABIT ETHERNET CONSORTIUM

Accredited calibration of field strength meters

40 AND 100 GIGABIT ETHERNET CONSORTIUM

Towards Integrated System and Software Modeling for Embedded Systems

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION

Software Verification and Validation. Prof. Lionel Briand Ph.D., IEEE Fellow

Model Based Systems Engineering

Towards an Architecture Maintainability Maturity Model (AM 3 )

R3ST for Requirements Recovery of Legacy Runtime Code

EGS-CC. System Engineering Team. Commonality of Ground Systems. Executive Summary

Towards an MDA-based development methodology 1

TOWARDS AN UNIFIED APPROACH FOR MODELING AND ANALYSIS OF REAL-TIME EMBEDDED SYSTEMS USING MARTE/UML

80403NT11218A Rev

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process.

Model-Based Systems Engineering Methodologies. J. Bermejo Autonomous Systems Laboratory (ASLab)

AN4392 Application note

2.5G/5G/10G ETHERNET Testing Service

Understanding Requirements. Slides copyright 1996, 2001, 2005, 2009, 2014 by Roger S. Pressman. For non-profit educational use only

Requirements Engineering I

ETHERNET TESTING SERVICES

Moonzoo Kim. KAIST CS350 Intro. to SE Spring

Final Progress Report for Award FA Project: Trace Effect Analysis for Software Security PI: Dr. Christian Skalka The University of

Distributed Systems Programming (F21DS1) Formal Methods for Distributed Systems

New Idea In Waterfall Model For Real Time Software Development

Pervasive Services Engineering for SOAs

EDS FAULT LEVELS

You can now configure the information you want to display on the four lines available from the following parameters.

Developing and Distributing a CubeSat Model-Based Systems Engineering (MBSE) Reference Model

GIGABIT ETHERNET CONSORTIUM

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING

Formalising Concurrent UML State Machines Using Coloured Petri Nets

FM p.i-xxii 4/2/04 11:39 AM Page v. Preface

Project Superfinish. Full-Production Superfinishing Machine ELECOMP Capstone Design Project

UMLEmb: UML for Embedded Systems. II. Modeling in SysML. Eurecom

ISO INTERNATIONAL STANDARD

Introduction to Engineering Design

ADDENDUM NO. 2 PROJECT: COURTLAND PUMP STATION CONTRACT: IFB NO COM.00030

ROM/UDF CPU I/O I/O I/O RAM

AN INTERROGATIVE REVIEW OF REQUIREMENT ENGINEERING FRAMEWORKS

INTERNATIONAL STANDARD

Stairway to Heaven: An Architecture-Level Characterization of Cloud Migration Strategies

Distributed Series Reactor An overview of the conductor impacts of the DSR

7KH 0DQLIHVWR .HWLO6W OHQ -XO\

Software Maintenance Cycles with the RUP

POWER CORPORATION. Power Quality. Specifications and Guidelines for Customers. Phone: Fax:

Design and Technology Subject Outline Stage 1 and Stage 2

esa Space Station Electromagnetic Emission and Susceptibility Requirements International Space Station Revision C May 31, 1996 SSP Revision C

SOFT 437. Software Performance Analysis. What is UML? UML Tutorial

SURVEILLANCE DATA EXCHANGE. Part 18 : Category 019. Multilateration System Status Messages

16 Channel Semi Fiscal Distribution Board Smart Meter

Arcade Game Maker Product Line Production Plan

Roadmap For Power Quality Standards Development

Lecture 13: Requirements Analysis

ISO INTERNATIONAL STANDARD

AUTOMOTIVE ETHERNET CONSORTIUM

SR&ED for the Software Sector Northwestern Ontario Innovation Centre

Software Requirements Specification

Integrity of safety-related systems in the gas industry

Introduction to Systems Engineering

2/6/2006 Team #7: Pez Project: Empty Clip Members: Alan Witkowski, Steve Huff, Thos Swallow, Travis Cooper Document: SRS

MEF Specification MEF 62. Managed Access E-Line Service Implementation Agreement. May 2018

SPECIFICATIONS SUBJECT TO CHANGE WITHOUT NOTICE

WNR Approach: An Extension to Requirements Engineering Lifecycle

JOURNAL OF OBJECT TECHNOLOGY

Modern Digital System Design Using VHDL: A Practical Introduction

EE Lecture 15 (recorded Feb 9, 2011) Fri Feb 15, 2013

CHAPTER 1: INTRODUCTION TO SOFTWARE ENGINEERING DESIGN

Proposal of Game Design Document from Software Engineering Requirements Perspective

Chapter 7 Requirements Engineering

UHF variable capacitance diode. Voltage Controlled Oscillators (VCO) Electronic tuning in UHF television tuners

Requirements Engineering I

Greenlining and Bluelining of Ergon Energy Substation Drawings

Transcription:

Embedded Systems Software Training Center Software Requirements Copyright 2011 DSR Corporation

Agenda 1. The Requirements Process 2. Requirements Documentation 3. Requirements Quality 4. Requirements Notations 5. Requirements Validation and Verification 6. Requirements Management Tools 7. Requirements Prototyping Copyright 2011 DSR Corporation 2

1. The Requirements Process Requirements Input Example Implement a control panel Sensors send information to Control Panel (CP). CP processes, stores it, and sends combined information to CDMS The reports can be shown on Local PC via Web interface. Configuration is enabled Network Sensors Network Control panel Summary data Central data management system Reports System Overview Sensors: AC 1 AR 4 AZD 4 Developing Firmware Web Application Source code and Binary Control Local PC Copyright 2011 DSR Corporation 3

1. The Requirements Process Why are Requirements Important? (cont.) Jone and Thayes's studies show that 35% of the faults to design activities for projects of 30,000-35,000 delivered source instructions 10% of the faults to requirements activities and 55% of the faults to design activities for projects of 40,000-80,000 delivered source instructions 8% to 10% of the faults to requirements activities and 40% to 55% of the faults to design activities for projects of 65,000-85,000 delivered source instructions Basili and Perricone report 48% of the faults observed in a medium-scale software project were attributed to incorrect or misinterpreted functional specification or requirements Beizer attributes 8.12% of the faults in his samples to problems in functional requirements Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 4

1. The Requirements Process Performed by the requirements analyst, system analyst, or business analyst The final outcome is a Software Requirements Specification (SRS) document Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 5

2. Requirements Documentation IEEE Standard for SRS 1. Introduction to the Document 3. Specific Requirements 1.1 Purpose of the Product 1.2 Scope of the Product 1.3 Acronyms, Abbreviations, Definitions 1.4 References 1.5 Outline of the rest of the SRS 2. General Description of Product 2.1 Context of Product 2.2 Product Functions 2.3 User Characteristics 2.4 Constraints 2.5 Assumptions and Dependencies 3.1 External Interface Requirements 3.1.1 User Interfaces 3.1.2 Hardware Interfaces 3.1.3 Software Interfaces 3.1.4 Communications Interfaces 3.2 Functional Requirements 3.2.1 Class 1 3.2.2 Class 2 3.3 Quality Requirements 3.4 Constraints 3.5 Other Requirements 4. Appendices Based on IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications Copyright 2011 DSR Corporation 6

3. Requirements Quality Examples Unambiguous, Testable, Complete Incorrect : R1000. The screen allows to input the following information: length, temperature, distance, and current time Correct: R1000. The sсreen shall allow to input the following information: length in meters, temperature in 0 C, current date and time in the YYYY-MM-DD HH:MM:SS format, respectively Copyright 2011 DSR Corporation 7

3. Requirements Quality Examples (cont.) Unambiguous, Testable, Complete Incorrect : R1000 In the case where emergency is identified as a result of the sensor data processing, the system sends the appropriated message to the CDMS immediately Correct: R1000: The system SHALL create the emergency message as a result of the sensor data processing if the following conditions are met # Condition Message R1001 <condition> <message format> R1010 The system MUST send the emergency message created as defined in R1000 to the CDMS within 1 sec R1020 The maximum amount of the emergency messages that can be created by the system as defined in R1000 SHALL be 1000 per 1 hour Copyright 2011 DSR Corporation 8

3. Requirements Quality Examples (cont.) Consistency Incorrect (inconsistent): R1000 The system MUST support maximum of 10 sensors connected concurrently R1010 The system response time MUST not exceed 10 ms when 20 sensors are connected to it concurrently Correct (consistent): R1000 The system MUST support maximum of 20 sensors connected to it concurrently R1010 The REQUIRED maximum system response time in dependency to the amount of sensors connected concurrently is shown in Table 1: # Sensors connected Max response time, ms R1011 20 10 R1012 10 5 Copyright 2011 DSR Corporation 9

4. Requirements Notations Semi-Formal Languages (cont.) UML diagram example: sequence diagram Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 10

4. Requirements Notations Semi-Formal Languages (cont.) UML diagram example: Turnstile -- finite state machine Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 11

4. Requirements Notations Semi-Formal Languages (cont.) UML diagram: Jackson s finite state machine example (incomplete requirement) Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 12

5. Requirements Validation and Verification Requirements Rating: Testers/Designers Profiles Figure (a) shows profiles with mostly 1s and 2s The requirements are in good shape Figure (b) shows profiles with mostly 4s and 5s The requirements should be revised Pfleeger and Atlee, Software Engineering: Theory and Practice, Chapter 4 Copyright 2011 DSR Corporation 13

References 1. Software Engineering: Theory and Practice / Shari Lawrence Pfleeger 2. SWEBOK. Guide to the Software Engineering. Body of Knowledge. 2004 Version / A project of the IEEE Computer Society Professional Practices Committee 3. IEEE Std 610.12-1990, IEEE Standard Glossary of Software Engineering Terminology 4. IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications 5. Network Working Group. RFC2119. Key words for use in RFCs to Indicate Requirement Levels 6. OMG Unified Modeling LanguageTM (OMG UML), Version 2.4 http://www.omg.org/spec/uml/2.4 7. Z.100 : Specification and Description Language (SDL) 8. Writing Software Requirements Specifications by Donn Le Vie, Jr. http://www.techwr-l.com/techwhirl/magazine/writing/softwarerequirementspecs.html 8. Quality Evaluation of Software Requirements Specifications F. Fabbrini, M. Fusani, S. Gnesi, G. Lami I.E.I. - C.N.R. Pisa, Italy. 9. UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition By Martin Fowler 10. UML 2.0 in a Nutshell By Dan Pilone, Neil Pitman Copyright 2011 DSR Corporation 14