SE351a: Software Project & Process Management. 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa

Size: px
Start display at page:

Download "SE351a: Software Project & Process Management. 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa"

Transcription

1 SE351a: Software Project & Process Management W4.1: Requirements Engineering 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa SE351 Roadmap Introduction to Software Project Management Project Management Software Development Life Cycles Requirements Engineering Software Process & Project Metrics Software Project Planning Project Monitoring & Control Risk Management Software Quality Assurance 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 2

2 The Objective is High quality Product Successful Development Process 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 3 Software Project Management Machine Process SDLC PMLC 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 4

3 PMLC Scope the Project State the problem or opportunity Establish the project goal Define the project objectives Identify the success criteria List assumptions, risks and obstacles Launch the Plan Recruit and organize project team Establish team operating rules Level project resources Schedule work packages Document work packages Project Close-Out Obtain client acceptance Install project deliverables Complete project documentation Complete post-implementation audit Issue final project report Develop Detailed Plans Identify project activities Estimate activity duration Determine resource Construct & analyze project network Prepare the project proposal Monitor & Control Progress Establish progress reporting system Install change control process Define problem escalation process Monitor progress versus plan Revise project plan 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 5 SDLC Requirements/ Specifications Verify Software Requirements Specification Design Verify Design Document Implementation Test Software System Integration Test Operations Manual Operations Retirement 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 6

4 Software Process: Example Requirements Engineering Process Requirements Elicitation Requirements Analysis and Negotiation Requirements Specification Requirements Validation & Verification Requirements Management Requirements 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 7 Notes Readings Ian Sommerville, Software Engineering, 7 th Edition, 2005, Pearson Education Limited 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 8

5 Outlines Fundamentals of Requirement Engineering Functional & Non-Functional Requirements Requirements Engineering Process Software Requirements Specification IEEE 830 SRS Standards Characteristics of Good SRS Document 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 9 Requirements Engineering The process of finding, analyzing and documenting the services that the customer requires from a system, and the constraints under which it operates and is developed Requirements should specify what a system should do and not how it should do it the "what-versus-how" dilemma 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 10

6 Examples The system shall allow users to search for an item by title, author, or ISBN The user interface shall be implemented using a World-Wide Web browser The system shall support at least 20 transactions per second The system facilities, available to public users, shall be demonstrable in 10 minutes or less 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 11 Examples(Cont.) All functionalities of screens, buttons, menus, etc., in the user interface, and how they interact All data transformations, i.e., all computations need to be done by the system Throughput (transactions per unit of time) Capacity (amount of data, users, processes, etc. handled) Security (ability to resist intruders and protect privacy) Response times to user operations 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 12

7 Why do Requirements Matter? Represent the first formalization of the desired deliverable Provide a basis for size and effort estimates Provide a firm foundation for initial design work 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 13 Requirements vs. Cost Boehm and Papccio (1988) If it costs $1 to find and fix a requirement-based problem during the definitions, it can cost o o o o $5 during design $10 during coding $20 during unit test $200 at production Cost to Fix Error Req. Design Impl. Test Oper. Phase when Error Detected. 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 14

8 Some Stat The later in the lifecycle an error is detected the more expensive to repair 54% of errors detected after coding and unit testing o 45% of these errors were and design errors Estimates indicate that 56% of all errors are those of the stage Requirements errors are typically non-clerical incorrect facts 49% omissions 31% inconsistencies 13% ambiguities 5% 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 15 Requirements: Definition & Specification Requirements definition (User Requirements) A statement in natural language plus diagrams of the services the system provides and its operational constraints o Written for clients Requirements specification (System Requirements) A structured document setting out detailed descriptions of the system services o Written as a contract between client and contractor Software specification A detailed software description which can serve as a basis for a design or implementation o Written for developers 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 16

9 Requirements Audience Requirements definition Client managers System end-users Client engineers Contractor managers System architects Requirements specification System end-users Client engineers System architects Software developers Software specification Client engineers (perhaps) System architects Software developers 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 17 Problems with Natural Language Natural language relies on the specification readers and writers using the same words for the same concept A natural language specification is over-flexible and subject to different interpretation Requirements are not partitioned by language structures 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 18

10 Natural Language Alternatives Structured natural language Graphical notations Mathematical specifications 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 19 Functional Requirements using Structured Language A limited form of natural language may be used to express removes some form of ambiguity and flexibility imposes a degree of uniformity on a specification Often best supported using a forms-based approach 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 20

11 Definitions and Specifications Requirements definition 1. The software must provide a means of representing and 1. accessing external files created by other tools. Requirements specification 1.1 The user should be provided with facilities to define the type of 1.2 external files. 1.2 Each external file type may have an associated tool which may be 1.2 applied to the file. 1.3 Each external file type may be represented as a specific icon on 1.2 the user s display. 1.4 Facilities should be provided for the icon representing an 1.2 external file type to be defined by the user. 1.5 When a user selects an icon representing an external file, the 1.2 effect of that selection is to apply the tool associated with the type of 1.2 the external file to the file represented by the selected icon. 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 21 Form-based Functional Specifications Definition of the function or entity. Description of inputs and where they come from. Description of outputs and where they go to. Indication of other entities required. Pre and post conditions (if appropriate). 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 22

12 Example of a Form-based based Functional Specification ECLIPSE/Workstation/Tools/DE/FS/3.5.1 Function Add node Description Adds a node to an existing design. The user selects the type of node, and its position. When added to the design, the node becomes the current selection. The user chooses the node position by moving the cursor to the area where the node is added. Inputs Node type, Node position, Design identifier. Source Node type and Node position are input by the user, Design identifier from the database. Outputs Design identifier. Destination The design database. The design is committed to the database on completion of the operation. Requires Design graph rooted at input design identifier. Pre-condition The design is open and displayed on the user's screen. Post-condition The design is unchanged apart from the addition of a node of the specified type at the given position. Side-effects None Definition: ECLIPSE/Workstation/Tools/DE/RD/ Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 23 The Requirements Document The document is the official statement of what is required of the system developers. Should include both a definition and a specification of. It is NOT a design document Again, it should set out WHAT the system should do NOT HOW it should do it 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 24

13 The Requirements Document(Cont.) (Cont.) Requirements Analysis System Model System Model Requirements Document Requirements Definitions Definition of Requirements Requirements Specifications Specifications of Requirements 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 25 Classes of Requirements Functional Requirements Non-functional Requirements Domain Requirements 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 26

14 Functional Requirements Statements of services the system should provide o how the system should react to particular inputs o how the system should behave in particular situations Functional may be high-level statements of what the system should do but functional should describe the system services in detail 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 27 Functional Requirements: Examples The user shall be able to search either all of the initial set of databases or select a subset from it The system shall provide appropriate viewers for the user to read documents in the document store Every order shall be allocated a unique identifier (ORDER_ID) which the user shall be able to copy to the account s permanent storage area 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 28

15 Functional Requirements: Major Problems Imprecision Completeness & Consistency 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 29 Functional Requirements: Imprecision Problems arise when are not precisely stated Ambiguous may be interpreted in different ways by different people The system shall provide appropriate viewers for the user to to read documents in in the document store the term appropriate viewers o User intention special purpose viewer for for each different document type o Developer interpretation provide a text viewer that shows the contents of of the document 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 30

16 Functional Requirements: Completeness & Consistency In principle should be both Complete o Consistent o They should include descriptions of all facilities required There should be no conflicts or contradictions in the descriptions of the system facilities In In practice, it it is is almost impossible to to produce a complete and consistent document for large scale systems 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 31 Non-functional Requirements Define system properties and constraints Properties: reliability, response time and storage, etc. Constraints: I/O device capability, system representations, etc. Non-functional may be more critical than functional, i.e., if these are not met, the system is useless 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 32

17 Non-functional Classifications Product Specify the behavior of the delivered product o e.g., execution speed, reliability, etc. Organizational Related to the organizational policies and procedures o e.g., process standards used, implementation, etc. External Related to factors external to the system and its development process o e.g., interoperability, legislative, etc. 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 33 Non-functional Requirements: Some Types Non-functional Product Organizational External Efficiency Reliability Portability Interoperability Ethical Usability Delivery Implementation Standards Legislative Performance Space Privacy Safety 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 34

18 Non-functional: Major Problems Verifiability Measurements Interdependency 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 35 Non-functional Requirement: Verifiability A Verifiable non-functional requirement A statement using some measure that can be objectively tested A system goal The system should be easy to use by experienced controllers and should be organized in in such a way that user errors are minimized A verifiable non-functional requirement Experienced controllers shall be able to use all the system functions after a total of two hours training After this training, the average number of errors made by experienced users shall not exceed two per day 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 36

19 Non-functional Requirement: Measures --Examples Property Speed Size Ease of use Reliability Robustness Portability Measure Processed transactions/second User/Event response time Screen refresh time K Bytes Number of RAM chips Training time Number of help frames Mean time to failure Probability of unavailability Rate of failure occurrence Availability Time to restart after failure Percentage of events causing failure Probability of data corruption on failure Percentage of target dependent statements Number of target systems Non-functional Requirement: Interdependency Conflicts between different non-functional are common in complex systems e.g., to minimize storage space, the maximum store should not exceed 4Mbyte for handheld device, Portable programming language should be used however, using platform independent language may require more space Which is the most critical requirement? Which is the most critical requirement? 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 38

20 Domain Requirements Constraints related to the application domain of the system and reflect its characteristics o Design constraints: o e.g., specific HW/SW or architectures, such as client-server o Implementation constraints: o e.g., implementing the product in C++ or using a specific GUI builder If domain are not satisfied, the system may be unworkable 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 39 Domain Requirements: Example Library system domain There shall be a standard user interface to all databases which shall be based on the Z39.50 standard Because of copyright restrictions, some documents must be deleted immediately on arrival. Depending on the user s, these documents will either be printed locally on the system server for manually forwarding to the user or routed to a network printer 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 40

21 Domain Requirements: Major Problems Understandability Requirements are expressed in the language of the application domain which is often not understood by software engineers Implicitness Domain specialists understand the area so well that they do not explicitly define the domain 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 41 Classes of Requirements(Recap) Functional Requirements Non-functional Requirements Domain Requirements 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 42

22 Requirements Engineering Process build a prototype The problem/ Opportunity elicitation develop Specification Review Management create analysis models 11 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa 43

Requirements Engineering. Establishing what the customer requires from a software system. Requirements Engineering. What is a Requirement?

Requirements Engineering. Establishing what the customer requires from a software system. Requirements Engineering. What is a Requirement? Engineering Establishing what the customer requires from a software system Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapters 5 and 6 Slide 1 Engineering

More information

Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 6 Slide 1

Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 6 Slide 1 Software Requirements Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 6 Slide 1 Objectives To introduce the concepts of user and system requirements To describe functional and non-functional

More information

Software Engineering. Lecture 10

Software Engineering. Lecture 10 Software Engineering Lecture 10 1. What is software? Computer programs and associated documentation. Software products may be: -Generic - developed to be sold to a range of different customers - Bespoke

More information

Requirements Engineering. Version October 2016

Requirements Engineering. Version October 2016 Requirements Engineering Version 1.11 26 October 2016 Maurizio Morisio, Marco Torchiano, 2016 Software development Customer Needs Acceptance testing Requirements Analysis System testing System Design Integration

More information

Lecture 6: Requirements Engineering

Lecture 6: Requirements Engineering Lecture 6: Requirements Engineering Software System Design and Implementation ITCS/ITIS 6112/8112 001 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte

More information

Requirements. Requirements. Types of Requirement. What Is a Requirement?

Requirements. Requirements. Types of Requirement. What Is a Requirement? Beatrice Åkerblom beatrice@dsv.su.se Everything else in software development depends on the requirements. If you cannot get stable requirements you cannot get a predictable plan... What Is a Requirement?!

More information

SEG3201 Basics of the Requirements Process

SEG3201 Basics of the Requirements Process SEG3201 Basics of the Requirements Process Based on material from: I Bray: An introduction to Requirements Engineering Gerald Kotonya and Ian Sommerville: Requirements Engineering Processes and Techniques,

More information

Software Requirements and the Requirements Engineering Process. Chapters 5 and 6

Software Requirements and the Requirements Engineering Process. Chapters 5 and 6 Software Requirements and the Requirements Engineering Process Chapters 5 and 6 References Software Engineering. Ian Sommerville. 6th edition. Pearson. Code Complete. Steve McConnell. (CC) The art of triage.

More information

Ch 4: Requirements Engineering. What are requirements?

Ch 4: Requirements Engineering. What are requirements? Ch 4: Engineering What are? Functional and non-functional The software document specification engineering processes elicitation and analysis validation management The descriptions of what the system should

More information

Requirements Engineering: Specification & Validation. Software Requirements and Design CITS 4401 Lecture 18

Requirements Engineering: Specification & Validation. Software Requirements and Design CITS 4401 Lecture 18 Requirements Engineering: Specification & Validation Software Requirements and Design CITS 4401 Lecture 18 The Problems of Requirements What goal(s) are we trying to satisfy? How do we identify the scope

More information

SE351a: Software Project & Process Management. 13 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa

SE351a: Software Project & Process Management. 13 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa SE351a: Software Project & Process Management W4.2: Requirements Engineering 13 Oct., 2005 SE351a, ECE UWO, (c) Hamada Ghenniwa SE351 Roadmap Introduction to Software Project Management Project Management

More information

Requirement Analysis

Requirement Analysis Requirement Analysis Requirements Analysis & Specification Objective: determine what the system must do to solve the problem (without describing how) Done by Analyst (also called Requirements Analyst)

More information

Software Requirements Specification. <Project> for. Version 1.0 approved. Prepared by <author(s)> <Organization> <Date created>

Software Requirements Specification. <Project> for. Version 1.0 approved. Prepared by <author(s)> <Organization> <Date created> Software Requirements Specification for Version 1.0 approved Prepared by Software Requirements Specification for Page 2 Table of Contents Revision

More information

Fundamentals: Software Engineering. Objectives. Last lectures. Unit 2: Light Introduction to Requirements Engineering

Fundamentals: Software Engineering. Objectives. Last lectures. Unit 2: Light Introduction to Requirements Engineering Fundamentals: Software Engineering Dr. Rami Bahsoon School of Computer Science University of Birmingham r.bahsoon@cs.bham.ac.uk Unit 2: Light Introduction to Requirements Engineering Dr R Bahsoon 1 Objectives

More information

Software Requirements Specification. <Project> for. Version 1.0 approved. Prepared by <author> <organization> <date created>

Software Requirements Specification. <Project> for. Version 1.0 approved. Prepared by <author> <organization> <date created> Software Requirements Specification for Version 1.0 approved Prepared by Copyright 2002 by Karl E. Wiegers. Permission is granted to use, modify, and distribute

More information

Software specification and modelling. Requirements engineering

Software specification and modelling. Requirements engineering Software specification and modelling Requirements engineering Requirements engineering (RE) Requirements engineering is the process of establishing the services that a customer requires from a system and

More information

Requirements Engineering

Requirements Engineering Requirements Engineering An introduction to requirements engineering Gerald Kotonya and Ian Sommerville G. Kotonya and I. Sommerville 1998 Slide 1 Objectives To introduce the notion of system requirements

More information

Recommended Practice for Software Requirements Specifications (IEEE)

Recommended Practice for Software Requirements Specifications (IEEE) Recommended Practice for Software Requirements Specifications (IEEE) Author: John Doe Revision: 29/Dec/11 Abstract: The content and qualities of a good software requirements specification (SRS) are described

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Gérald Monard Ecole GDR CORREL - April 16, 2013 www.monard.info Bibliography Software Engineering, 9th ed. (I. Sommerville, 2010, Pearson) Conduite de projets informatiques,

More information

Chapter 4 Requirements Engineering

Chapter 4 Requirements Engineering Chapter 4 Requirements Engineering Chapter 4 Requirements Engineering Slide 1 Topics covered Why RE is hard... Functional and non-functional requirements Product vs. organizational vs. external requirements

More information

Requirements Engineering. Version November 2012

Requirements Engineering. Version November 2012 Requirements Engineering Version 1.8 11 November 2012 Maurizio Morisio, Marco Torchiano, 2012 Attribution-NonCommercial-NoDerivs 2.5 You are free: to copy, distribute, display, and perform the work Under

More information

Requirements Engineering

Requirements Engineering Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Software Engineering Engineering The following slides are primarily based on the contents of the

More information

Chapter 4 Requirements Elicitation

Chapter 4 Requirements Elicitation Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 4 Requirements Elicitation Outline Today: Motivation: Software Lifecycle Requirements elicitation challenges Problem statement

More information

Introduction to Software Specifications and Data Flow Diagrams. Neelam Gupta The University of Arizona

Introduction to Software Specifications and Data Flow Diagrams. Neelam Gupta The University of Arizona Introduction to Software Specifications and Data Flow Diagrams Neelam Gupta The University of Arizona Specification A broad term that means definition Used at different stages of software development for

More information

Requirements engineering

Requirements engineering engineering Chapter 4 1 Engineering in the textbook 4.1 Functional and non-functional 4.2 The software document 4.4 engineering processes 4.5 elicitation and analysis 4.3 specification 4.6 validation 4.7

More information

Requirements. CxOne Standard

Requirements. CxOne Standard Requirements CxOne Standard CxStand_Requirements.doc November 3, 2002 Advancing the Art and Science of Commercial Software Engineering Contents 1 INTRODUCTION... 1 1.1 OVERVIEW... 1 1.2 GOALS... 1 1.3

More information

Requirements Engineering

Requirements Engineering Practical Course: Web Development Requirements Engineering Winter Semester 2016/17 Juliane Franze Ludwig-Maximilians-Universität München Practical Course Web Development WS 16/17-01 - 1 Today s Agenda

More information

CIS 890: Safety Critical Systems

CIS 890: Safety Critical Systems CIS 890: Safety Critical Systems Lecture: Requirements Introduction Copyright 2011, John Hatcliff. The syllabus and all lectures for this course are copyrighted materials and may not be used in other course

More information

Requirements Elicitation

Requirements Elicitation Requirements Elicitation Introduction into Software Engineering Lecture 4 25. April 2007 Bernd Bruegge Applied Software Engineering Technische Universitaet Muenchen 1 Outline Motivation: Software Lifecycle

More information

VO Software Engineering

VO Software Engineering Administrative Issues Univ.Prof. Dr. Peter Auer Chair for Information Technology Email: auer@unileoben.ac.at Lecture Thursday 10:15 11:45 Project Lab Montag 16:00 19:00 Literature Helmut Balzert, Lehrbuch

More information

SOFTWARE ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering?

SOFTWARE ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering? Q2a. What are the key challenges being faced by software engineering? Ans 2a. The key challenges facing software engineering are: 1. Coping with legacy systems, coping with increasing diversity and coping

More information

INFORMATION ASSURANCE DIRECTORATE

INFORMATION ASSURANCE DIRECTORATE National Security Agency/Central Security Service INFORMATION ASSURANCE DIRECTORATE Digital Policy Management consists of a set of computer programs used to generate, convert, deconflict, validate, assess

More information

Requirements Engineering. Materials: Pressman (chapters 8,9, 10, 11) Sommerville (Chapters 4, 5)

Requirements Engineering. Materials: Pressman (chapters 8,9, 10, 11) Sommerville (Chapters 4, 5) Requirements Engineering Materials: Pressman (chapters 8,9, 10, 11) Sommerville (Chapters 4, 5) Definition What is Requirement Engineering? Requirement: A function, constraint or other property that the

More information

UNIT-II REQUIREMENTS ANALYSIS AND SPECIFICATION

UNIT-II REQUIREMENTS ANALYSIS AND SPECIFICATION UNIT-II REQUIREMENTS ANALYSIS AND SPECIFICATION The for a system are the descriptions of what the system should do the services that it provides and the constraints on its operation. User are statements,

More information

Requirements Engineering Process

Requirements Engineering Process Requirements Engineering Process Requirement A description of a service that the system is expected to provide and the constraints under which it must operate. 1 Requirement Types Functional Requirement

More information

Software Requirements Specification (SRS) Software Requirements Specification for <Name of Project>

Software Requirements Specification (SRS) Software Requirements Specification for <Name of Project> Software Requirements Specification (SRS) Software Requirements Specification for Version Release Responsible Party Major Changes Date 0.1 Initial Document Release for

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design Database Systems: Design, Implementation, and Management Tenth Edition Chapter 9 Database Design Objectives In this chapter, you will learn: That successful database design must reflect the information

More information

WELCOME TO ITIL FOUNDATIONS PREP CLASS AUBREY KAIGLER

WELCOME TO ITIL FOUNDATIONS PREP CLASS AUBREY KAIGLER WELCOME TO ITIL FOUNDATIONS PREP CLASS AUBREY KAIGLER 2 Demand Management Demand management: The process used to make investmentrelated decisions across the enterprise. Pattern Pattern of of Business Activity

More information

Human Error Taxonomy

Human Error Taxonomy Human Error Taxonomy The Human Error Taxonomy (HET) provides a structure for requirement errors made during the software development process. The HET can be employed during software inspection to help

More information

Requirements Validation and Negotiation

Requirements Validation and Negotiation REQUIREMENTS ENGINEERING LECTURE 2015/2016 Eddy Groen Requirements Validation and Negotiation AGENDA Fundamentals of Requirements Validation Fundamentals of Requirements Negotiation Quality Aspects of

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

Software Engineering Unit 4- Requirement Analysis and Specification

Software Engineering Unit 4- Requirement Analysis and Specification Software Engineering Unit 4- Requirement Analysis and Specification Requirement Engineering The process to gather the software requirements from client, analyze and document them is known as requirement

More information

OBJECTIVES DEFINITIONS CHAPTER 1: THE DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS. Figure 1-1a Data in context

OBJECTIVES DEFINITIONS CHAPTER 1: THE DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS. Figure 1-1a Data in context OBJECTIVES CHAPTER 1: THE DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi! Define terms! Name limitations of conventional

More information

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties Why testing and analysis Software Testing Adapted from FSE 98 Tutorial by Michal Young and Mauro Pezze Software is never correct no matter what developing testing technique is used All software must be

More information

EXAM PREPARATION GUIDE

EXAM PREPARATION GUIDE When Recognition Matters EXAM PREPARATION GUIDE PECB Certified ISO 22000 Lead Auditor www.pecb.com The objective of the Certified ISO 22000 Lead Auditor examination is to ensure that the candidate has

More information

Requirements Analysis

Requirements Analysis Requirements Analysis Software Requirements A software (product) requirement is is a feature, function, capability, or property that a software product must have. Software Design A software design is is

More information

Lecture 5: Requirements Specifications

Lecture 5: Requirements Specifications Lecture 5: Requirements Specifications Why we need to write specifications Purpose and audience Choosing an appropriate size and formality Desiderata for Specifications Properties of good specifications

More information

Mathematics and Computing: Level 2 M253 Team working in distributed environments

Mathematics and Computing: Level 2 M253 Team working in distributed environments Mathematics and Computing: Level 2 M253 Team working in distributed environments SR M253 Resource Sheet Specifying requirements 1 Overview Having spent some time identifying the context and scope of our

More information

VMware BCDR Accelerator Service

VMware BCDR Accelerator Service AT A GLANCE The rapidly deploys a business continuity and disaster recovery (BCDR) solution with a limited, pre-defined scope in a non-production environment. The goal of this service is to prove the solution

More information

EXAM PREPARATION GUIDE

EXAM PREPARATION GUIDE When Recognition Matters EXAM PREPARATION GUIDE PECB Certified ISO 22000 Lead Implementer www.pecb.com The objective of the Certified ISO 22000 Lead Implementer examination is to ensure that the candidate

More information

Software Prototyping Animating and demonstrating system requirements. Uses of System Prototypes. Prototyping Benefits

Software Prototyping Animating and demonstrating system requirements. Uses of System Prototypes. Prototyping Benefits Software Prototyping Animating and demonstrating requirements Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 8 Slide 1 Uses of System Prototypes

More information

Chapter 4 Objectives

Chapter 4 Objectives Chapter 4 Objectives Eliciting requirements from the customers Modeling requirements Reviewing requirements to ensure their quality Documenting requirements for use by the design and test teams 4.1 The

More information

Specifying and Prototyping

Specifying and Prototyping Contents Specifying and Prototyping M. EVREN KIYMAÇ 2008639030 What is Specifying? Gathering Specifications Specifying Approach & Waterfall Model What is Prototyping? Uses of Prototypes Prototyping Process

More information

Standard Glossary of Terms used in Software Testing. Version 3.2. Foundation Extension - Usability Terms

Standard Glossary of Terms used in Software Testing. Version 3.2. Foundation Extension - Usability Terms Standard Glossary of Terms used in Software Testing Version 3.2 Foundation Extension - Usability Terms International Software Testing Qualifications Board Copyright Notice This document may be copied in

More information

Software Requirements Specification

Software Requirements Specification SCSJ2203: Software Engineering Software Requirements Specification Project Title Version 1.0 Printing Date Department and Faculty Prepared by: Revision Page a. Overview Describe

More information

Requirements Validation and Negotiation (cont d)

Requirements Validation and Negotiation (cont d) REQUIREMENTS ENGINEERING LECTURE 2017/2018 Joerg Doerr Requirements Validation and Negotiation (cont d) REQUIREMENTS VALIDATION AND NEGOTIATION Requirements Validation Techniques 2 Techniques Overview

More information

CRITERIA FOR CERTIFICATION BODY ACCREDITATION IN THE FIELD OF RISK BASED INSPECTION MANAGEMENT SYSTEMS

CRITERIA FOR CERTIFICATION BODY ACCREDITATION IN THE FIELD OF RISK BASED INSPECTION MANAGEMENT SYSTEMS CRITERIA FOR CERTIFICATION BODY ACCREDITATION IN THE FIELD OF RISK BASED INSPECTION MANAGEMENT SYSTEMS Approved By: Executive: Accreditation: Mpho Phaloane Revised By: RBI STC Working Group Members Date

More information

Management Information Systems MANAGING THE DIGITAL FIRM, 12 TH EDITION FOUNDATIONS OF BUSINESS INTELLIGENCE: DATABASES AND INFORMATION MANAGEMENT

Management Information Systems MANAGING THE DIGITAL FIRM, 12 TH EDITION FOUNDATIONS OF BUSINESS INTELLIGENCE: DATABASES AND INFORMATION MANAGEMENT MANAGING THE DIGITAL FIRM, 12 TH EDITION Chapter 6 FOUNDATIONS OF BUSINESS INTELLIGENCE: DATABASES AND INFORMATION MANAGEMENT VIDEO CASES Case 1: Maruti Suzuki Business Intelligence and Enterprise Databases

More information

Part 5. Verification and Validation

Part 5. Verification and Validation Software Engineering Part 5. Verification and Validation - Verification and Validation - Software Testing Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can use this

More information

Lecture 9 Requirements Engineering II

Lecture 9 Requirements Engineering II Lecture 9 Requirements Engineering II Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 23, 2008 Announcements

More information

Data Governance. Mark Plessinger / Julie Evans December /7/2017

Data Governance. Mark Plessinger / Julie Evans December /7/2017 Data Governance Mark Plessinger / Julie Evans December 2017 12/7/2017 Agenda Introductions (15) Background (30) Definitions Fundamentals Roadmap (15) Break (15) Framework (60) Foundation Disciplines Engagements

More information

<<Subsystem>> Software Architecture Document

<<Subsystem>> Software Architecture Document Ref Contract Number: Contractor: Copy SAD TEMPLATE of Software Architecture Document SAD Template Page 1 of 21 Software Architecture Document Prepared by: Title Name Signature

More information

Saving the Project Brief document under its own name

Saving the Project Brief document under its own name HOW TO USE THIS TEMPLATE: Introduction The template reflects the steps set out in the PRINCE2 Method and is designed to prompt the Project Manager and help in the creation of the. The information for the

More information

Software Documentation

Software Documentation Software Documentation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 4 important Process Documents 2. What are the main Software Documentation Categories? 3. What is SRS? 4. What

More information

Requirements Validation and Negotiation

Requirements Validation and Negotiation REQUIREMENTS ENGINEERING LECTURE 2017/2018 Joerg Doerr Requirements Validation and Negotiation AGENDA Fundamentals of Requirements Validation Fundamentals of Requirements Negotiation Quality Aspects of

More information

"Charting the Course... Certified Information Systems Auditor (CISA) Course Summary

Charting the Course... Certified Information Systems Auditor (CISA) Course Summary Course Summary Description In this course, you will perform evaluations of organizational policies, procedures, and processes to ensure that an organization's information systems align with overall business

More information

Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering. Sixth Semester

Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering. Sixth Semester Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering Sixth Semester Subject: Software Testing Contact Hrs / week: 4 Total hrs: 64 Table of Contents SN Chapter

More information

L17: Assurance. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L17: Assurance. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 L17: Assurance Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 11/06/2015 CSCI 451 - Fall 2015 1 Acknowledgement Many slides are from or are revised

More information

Unit 1 Introduction to Software Engineering

Unit 1 Introduction to Software Engineering Unit 1 Introduction to Software Engineering João M. Fernandes Universidade do Minho Portugal Contents 1. Software Engineering 2. Software Requirements 3. Software Design 2/50 Software Engineering Engineering

More information

SWEBOK. The Emerging Consensus on the Software Engineering Body of Knowledge. A. Abran, NSERC Ottawa, February 18, 2002

SWEBOK. The Emerging Consensus on the Software Engineering Body of Knowledge. A. Abran, NSERC Ottawa, February 18, 2002 SWEBOK The Emerging Consensus on the Software Engineering Body of Knowledge A. Abran, P. Bourque,, R. Dupuis, J. W. Moore, L. Tripp NSERC Ottawa, February 18, 2002 ÉTS 1 Corporate Support by: Project managed

More information

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia Topic: Software Verification, Validation and Testing Software Engineering Faculty of Computing Universiti Teknologi Malaysia 2016 Software Engineering 2 Recap on SDLC Phases & Artefacts Domain Analysis

More information

Verification and Validation. Assuring that a software system meets a user s needs. Verification vs Validation. The V & V Process

Verification and Validation. Assuring that a software system meets a user s needs. Verification vs Validation. The V & V Process Verification and Validation Assuring that a software system meets a user s needs Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapters 19,20 Slide 1

More information

Product. e ss. P roc. so get the right requirements. Garbage in garbage out,

Product. e ss. P roc. so get the right requirements. Garbage in garbage out, If software is simply for automation, what would a washing machine be like? 1 RE Process Lawrence Chung Department of Computer Science The University of Texas at Dallas 2 RE Process: What is a Process?

More information

The Transaction Log under the Kyoto Protocol

The Transaction Log under the Kyoto Protocol Working Paper No. 9 (2003), Annex II Pre-sessional consultations on registries Bonn, Germany, 2 June 2003 The Transaction Log under the Kyoto Protocol Functional Specification Draft version Page

More information

Lecture 8 Requirements Engineering

Lecture 8 Requirements Engineering Lecture 8 Requirements Engineering Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 18, 2008 Lecture Overview

More information

Requirement Specification Document Template

Requirement Specification Document Template Abstract: This document outlines projects requirements for the . This is a controlled document and should be maintained in a configuration environment. Requirement Specification Document Template

More information

Certification Authorities Software Team (CAST) Position Paper CAST-25

Certification Authorities Software Team (CAST) Position Paper CAST-25 Certification Authorities Software Team (CAST) Position Paper CAST-25 CONSIDERATIONS WHEN USING A QUALIFIABLE DEVELOPMENT ENVIRONMENT (QDE) IN CERTIFICATION PROJECTS COMPLETED SEPTEMBER 2005 (Rev 0) NOTE:

More information

Implementing a Successful Data Governance Program

Implementing a Successful Data Governance Program Implementing a Successful Data Governance Program Mary Anne Hopper Data Management Consulting Manager SAS #AnalyticsX Data Stewardship #analyticsx SAS Data Management Framework BUSINESS DRIVERS DATA GOVERNANCE

More information

Corso di Progettazione di Applicazioni Web e Mobile

Corso di Progettazione di Applicazioni Web e Mobile Corso di Progettazione di Applicazioni Web e Mobile Mirko Calvaresi Università di Camerino - Mirko Calvaresi - Progettazione Applicazioni Web e Mobile What this is about? How a web appliaction works? let

More information

COSC 3351 Software Design. Software Design Methodology. Edgar Gabriel. Spring Outline

COSC 3351 Software Design. Software Design Methodology. Edgar Gabriel. Spring Outline COSC 3351 Software Design Software Design Methodology Spring 2008 Outline Causes of difficulties in software design Vehicles to overcome difficulties Various strategies to solve software design problems

More information

System and Software Architecture Description (SSAD)

System and Software Architecture Description (SSAD) System and Software Architecture Description (SSAD) Farmworkers Safety App Team 09 TEAM MEMBER NAME Shobhit Agarwal Akshay Aggarwal Viraj Sahai Vahagen Sinanian Juan Andrade Basir Navab Marko Djuliarso

More information

REQUIREMENTS. Michael Weintraub Spring, 2016

REQUIREMENTS. Michael Weintraub Spring, 2016 REQUIREMENTS Michael Weintraub Spring, 2016 Unit Objective Understand what requirements are Understand how to acquire, express, validate and manage requirements Definitions A thing demanded or obligatory

More information

Government of Ontario IT Standard (GO ITS) GO-ITS Number 56.3 Information Modeling Standard

Government of Ontario IT Standard (GO ITS) GO-ITS Number 56.3 Information Modeling Standard Government of Ontario IT Standard (GO ITS) GO-ITS Number 56.3 Information Modeling Standard Version # : 1.6 Status: Approved Prepared under the delegated authority of the Management Board of Cabinet Queen's

More information

Purpose and Structure of Requirements Specifications (following IEEE 830 Standard)

Purpose and Structure of Requirements Specifications (following IEEE 830 Standard) SEG3101 (Fall 2010) Purpose and Structure of Requirements Specifications (following IEEE 830 Standard) Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher (2009) with

More information

INTRODUCTION TO SOFTWARE ENGINEERING

INTRODUCTION TO SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING Introduction to Software Testing d_sinnig@cs.concordia.ca Department for Computer Science and Software Engineering What is software testing? Software testing consists

More information

EXAM PREPARATION GUIDE

EXAM PREPARATION GUIDE EXAM PREPARATION GUIDE PECB Certified ISO 21500 Lead Project Manager The objective of the PECB Certified ISO 21500 Lead Project Manager examination is to ensure that the candidate has the knowledge and

More information

Delimited. Interfaced. Readable. Modifiable. Verifiable. Prioritized* Endorsed

Delimited. Interfaced. Readable. Modifiable. Verifiable. Prioritized* Endorsed 15 quality goals for requirements Justified Correct Complete Consistent Unambiguous Feasible Abstract Traceable Delimited Interfaced Readable Modifiable Verifiable Prioritized* Endorsed Marked attributes

More information

Defining OAIS requirements by Deconstructing the OAIS Reference Model Date last revised: August 28, 2005

Defining OAIS requirements by Deconstructing the OAIS Reference Model Date last revised: August 28, 2005 Defining OAIS requirements by Deconstructing the OAIS Reference Model Date last revised: August 28, 2005 This table includes text extracted directly from the OAIS reference model (Blue Book, 2002 version)

More information

UNIT II SOFTWARE REQUIREMENTS 9

UNIT II SOFTWARE REQUIREMENTS 9 UNIT II SOFTWARE REQUIREMENTS 9 Functional and non-functional - user system requirement engineering process feasibility studies requirements elicitation validation and management software prototyping prototyping

More information

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping. i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give

More information

Vendor: The Open Group. Exam Code: OG Exam Name: TOGAF 9 Part 1. Version: Demo

Vendor: The Open Group. Exam Code: OG Exam Name: TOGAF 9 Part 1. Version: Demo Vendor: The Open Group Exam Code: OG0-091 Exam Name: TOGAF 9 Part 1 Version: Demo QUESTION 1 According to TOGAF, Which of the following are the architecture domains that are commonly accepted subsets of

More information

CMPT E100 Introduction to Software Engineering Spring Assignment 2 (9%) - Requirements and Initial Design 1

CMPT E100 Introduction to Software Engineering Spring Assignment 2 (9%) - Requirements and Initial Design 1 CMPT 276-4 E100 Introduction to Software Engineering Spring 2017 Assignment 2 (9%) - Requirements and Initial Design 1 Deliverables Due Time Requirement Document, Design document + Quality Assurance Plan

More information

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6403 SOFTWARE ENGINEERING II year/ IV sem CSE (Regulation 2013) UNIT 1- SOFTWARE PROCESS AND PROJECT

More information

Information Security Policy

Information Security Policy April 2016 Table of Contents PURPOSE AND SCOPE 5 I. CONFIDENTIAL INFORMATION 5 II. SCOPE 6 ORGANIZATION OF INFORMATION SECURITY 6 I. RESPONSIBILITY FOR INFORMATION SECURITY 6 II. COMMUNICATIONS REGARDING

More information

User Documentation Development Life Cycle (UDDLC)

User Documentation Development Life Cycle (UDDLC) WWW.ALMAHACONSULTING.CA User Documentation Development Life Cycle (UDDLC) STANDARD OPERATING PROCEDURE BUSINESS PROCESS DOCUMENT DOCUMENT STATUS: VERSION 0.1 Department BUSINESS TRANSFORMATION Process

More information

Automatic Merging of Specification Documents in a Parallel Development Environment

Automatic Merging of Specification Documents in a Parallel Development Environment Automatic Merging of Specification Documents in a Parallel Development Environment Rickard Böttcher Linus Karnland Department of Computer Science Lund University, Faculty of Engineering December 16, 2008

More information

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad - 500 043 INFORMATION TECHNOLOGY COURSE DESCRIPTION FORM Course Title Course Code Regulation Course Structure Course Coordinator SOFTWARE

More information

MDCSystems. MICHAEL A. BAKER, P.E., M.S.E.M. Consulting Engineer

MDCSystems. MICHAEL A. BAKER, P.E., M.S.E.M. Consulting Engineer MDCSystems Providing Expert Solutions for Projects Worldwide MICHAEL A. BAKER, P.E., M.S.E.M. Consulting Engineer Education Drexel University, M.S., Engineering Management, Technology Assessment Brown

More information

Static and dynamic Testing

Static and dynamic Testing Static and dynamic Testing Static testing Requirements specification High-level design Formal specification Detailed design Program Prototype Dynamic testing Ian Sommerville 1995 Software Engineering,

More information

SOFTWARE ENGINEERING

SOFTWARE ENGINEERING SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING. COURSE STRUCTURE AND REQUIREMENTS Saulius Ragaišis saulius.ragaisis@mif.vu.lt WHAT IS SOFTWARE ENGINEERING? First definition Software engineering

More information