SE 555 Software Requirements & Specification Requirements Management.

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

HP Quality Center Overview.
Configuration Management Main issues:  manage items during software life cycle  usually supported by powerful tools.
Software Configuration Management
CS 5521 Configuration Management the problem Not a simple task! –Different versions of software usually is in the field during the life cycle –Different.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Software Configuration Management (SCM)
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Course Technology Chapter 3: Project Integration Management.
I n t e g r i t y - S e r v i c e - E x c e l l e n c e Business & Enterprise Systems Introduction to Hewlett Packard (HP) Application Lifecycle Management.
Configuration Management
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
Software Configuration Management
Software Engineering Institute Capability Maturity Model (CMM)
Change Request Management
Release & Deployment ITIL Version 3
What is Business Analysis Planning & Monitoring?
“Here’s why you need the new wheels, too…” Shawn and Steve Image from
RUP Requirements RUP Artifacts and Deliverables
Copyright Course Technology 1999
CC20O7N - Software Engineering 1 CC2007N Software Engineering 1 Requirements Engineering Practices with Techniques.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Rational Unified Process Fundamentals Module 4: Disciplines II.
Writing Quality Requirements Karl E. Wiegers Presented by: Ricardo Carlos.
Chapter 3: Software Maintenance Process Omar Meqdadi SE 3860 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 5 Defining and Managing Project and Product Scope Copyright 2012 John Wiley & Sons, Inc. 5-1.
Software Development Process and Management (or how to be officious and unpopular)
1.  Describe an overall framework for project integration management ◦ RelatIion to the other project management knowledge areas and the project life.
Requirements Traceability: Planning, Tracking and Managing Requirements Presenter: Paula R. Maychruk, BV/TEd., CAPM, CBAP.
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
IT Requirements Management Balancing Needs and Expectations.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
© Mahindra Satyam 2009 Configuration Management QMS Training.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
Develop Project Charter
Managing Change 1. Why Do Requirements Change?  External Factors – those change agents over which the project team has little or no control.  Internal.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Quick Recap Monitoring and Controlling. Lesson 11: Monitoring and Controlling Project Work Topic 11A: Identify the Monitor and Control Project Work Process.
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
Validate Scope What we have: Requirement Traceability Matrix Verified Deliverables What we do: Inspection What we get: Accepted Deliverables.
RequisitePro Software Requirement Management Tool A peresentation by: Mojdeh Jalali-Heravi Maryam Daneshi.
Requirements Engineering
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
State of Georgia Release Management Training
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
~ pertemuan 4 ~ Oleh: Ir. Abdul Hayat, MTI 20-Mar-2009 [Abdul Hayat, [4]Project Integration Management, Semester Genap 2008/2009] 1 PROJECT INTEGRATION.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
1 Software Maintenance and Evolution CSSE 575: Session 4, Part 2 Software Maintenance Process Steve Chenoweth Office Phone: (812) Cell: (937)
Software Engineering Lecture 9: Configuration Management.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
6/6/ SOFTWARE LIFE CYCLE OVERVIEW Professor Ron Kenett Tel Aviv University School of Engineering.
Configuration Control (Aliases: change control, change management )
Software Engineering Process - II 7.1 Unit 7: Quality Management Software Engineering Process - II.
 System Requirement Specification and System Planning.
Change Request Management
Project Planning: Scope and the Work Breakdown Structure
Configuration Management
Software Configuration Management
Software Configuration Management
Software Project Configuration Management
Managing the Project Lifecycle
Chapter 11: Software Configuration Management
Chapter 18 Maintaining Information Systems
Configuration Management
Engineering Processes
Chapter 9 – Software Evolution and Maintenance
KEY PROCESS AREAS (KPAs)
Chapter 11: Software Configuration Management
Applied Software Project Management
Presentation transcript:

SE 555 Software Requirements & Specification Requirements Management

SE 555 Software Requirements & Specification Requirements Engineering Activities Requirements Development Elicitation Analysis Specification Validation Requirements Management Track versions Trace relationships between requirements elements Trace relationships from requirements to design, implementation, and test elements Control requirements change and its impact on related elements Track requirements attributes (priority, volatility, cost, benefit, etc.)

SE 555 Software Requirements & Specification Requirements Baseline The requirements baseline is the set of functional and non- functional requirements that the development team has committed to implement in a specific increment or release Separately track proposed but not accepted requirements The baseline represents a critical agreement between the stakeholders and the developers The bridge between requirements development and requirements management

SE 555 Software Requirements & Specification Activities & Ownership Major requirements management activities Change control Version control Requirements status tracking Requirements tracing Someone on the team should “own” the requirements management activities

SE 555 Software Requirements & Specification Managing Change Through the life of a project the software requirements will change – new ones added, old ones deleted, others modified. Uncontrolled change is common source of project chaos, schedule slips, and quality problems. Change always has a price An effective change management process ensures that: Before committing to proposed requirements changes, they are carefully considered and the appropriate decision makers are part of the approval process Approved changes are communicated to everyone Changes are carried out in a consistent and efficient manner The change process is as simple as possible (but no simpler) The requirements documentation/model will accurately describe the delivered product

SE 555 Software Requirements & Specification A Change Control Procedure During initial development work, changes are made freely to the work product The work product is baseline after technical review or inspection and declared complete and approved Put the baselined work product under configuration management control Further changes are submitted to change control board via a “change proposal” describing proposed change and impact Change control board identifies affected parties for review Each party assesses costs and benefits from their viewpoint Change control board makes a decision and notifies all concerned parties [McConnell 1997]

SE 555 Software Requirements & Specification Change Activities Proposing changes Analyzing the impact of the proposed change Making decisions about the proposal Updating plans Implement the change Updating requirements documents and models Update designs, code, tests Test: test changed functionality and regression test unchanged functionality Assessing requirements volatility

SE 555 Software Requirements & Specification Change Request Data Change request ID Title (change summary) Project in which change is requested Description of request Date submitted Change type (requirement change, enhancement, new requirement, defect report) Change origin (e.g., marketing, management, customer, development, test, etc.) Submitter of request Submitter’s assessment of priority Status (submitted, evaluated, rejected, approved, change made, change cancelled, verified, closed) Implementation priority (CCB’s assessment) Assigned to Date updated Planned release Response(s) Verifier

SE 555 Software Requirements & Specification Impact Analysis Identify all the code, data, models, documents, tests, etc. that might be impacted Identify the indirect impact of change Especially quality impact: performance degradation, maintenance problem, etc. Identify and estimate the tasks to implement the change Assess the cost/benefit/risk trade-offs See the checklists in Wiegers Figures 19-5, 19-6, and 19-7

SE 555 Software Requirements & Specification Impact Analysis Report Change request ID Title/summary Description Assigned analyst Date of response Prioritization estimates Relative Benefit (1-9) Relative Penalty (1-9) Relative Cost (1-9) Relative Risk (1-9) Calculated priority with respect to other pending requirements Estimated total effort Estimated lost effort (discarding work already done) Estimated schedule impact Additional cost impact Quality impact Other requirements affected Other tasks affected Integration issues Life-cycle cost issues Other components to examine for possible changes

SE 555 Software Requirements & Specification Tracing Requirements Requirements tracing documents the dependencies and logical links between individual requirements and other system elements, such as: Requirements of various types (e.g. use cases) Business rules Architecture and design components Source code modules Test cases Effective traceability is characteristic of an excellent SRS Requirements need to be fine-grained – do not put too much functionally in a single requirement

SE 555 Software Requirements & Specification Why Trace Requirements? Essential to assessing change impact Displays test coverage Enables reuse “My new product needs this feature that is already implemented, so I reuse this design, this code, this test, and this user guide statement” Drives process workflow in process management Enables predicting the estimated cost and tracking the actual cost of a feature etc. Benefits  Do It! Risk  Do It! The risk of not tracing requirements to other elements is much higher than the cost

SE 555 Software Requirements & Specification Traceability Matrix A requirements traceability matrix is used to maintain and trace links between software requirements and related project elements

SE 555 Software Requirements & Specification Requirements Management: The Essential Activity Make informed decisions in response to new or changed requirements Defer lower-priority requirements Increase staff Increase staff time (overtime) Slip the schedule Let the quality suffer Just say No! (and explain why)

SE 555 Software Requirements & Specification Requirements Management Tools Tools help manage the multiple aspects and the scope of ever-changing requirements Manage versions and changes Fine-grained: requirement-level, not document-level Store and sort on requirements attributes Manage and display requirements tracing Facilitate impact analysis Track requirement status Control access Communicate with stakeholders Reuse requirements Link to design, test, project management, and other activities

SE 555 Software Requirements & Specification Some Tools ToolVendorDatabase-Centric or Document-Centric Active! FocusFalalfel Software Database CaliberRMBorland Software Database C.A.R.E. (Computer- Aided Requirements Engineering) SOPHIST Group Database DOORSTelelogic Database RequisiteProIBM Rational Software ibm.com/software/rational/ Document RMTrakRBC, Inc. Document RTM (Requirements & Traceability Management) Serena Software Database Updated version of Wieger’s Table 21-1