Product Requirements. Requirements. Get it Right ASAP. Why Requirements are Difficult. Levels of S/W Requirements. Types of S/W Requirements

Similar documents
The Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs.

[Name] [ ID] [Contact Number]

How Business Analysis Can Improve Sales and Marketing Outcomes

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems

Introduction to Software Engineering

Nigel Beacham Department of Computing Science L4 REQUIREMENTS DURING INCEPTION (CS5037 SYSTEMS ANALYSIS AND DESIGN)

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

THE PURPOSE OF TESTING

Requirements Engineering Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis

Requirements Engineering Best Practices

Software Engineering Fall 2014

Object-Oriented Analysis/Design and Use Cases Object Oriented Analysis and Design

Introduction to Software Engineering

Requirements Analysis and Specification. Importance of Good Requirements Analysis

Requirements Engineering

Requirements Engineering and Agile Methodology

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014

Requirements Elicitation. Software Requirements and Design CITS 4401 Lecture 17

A Guide to the Business Analysis Body of Knowledge (BABOK Guide), Version 2.0 Skillport

Software Development Methodologies. CSC 440: Software Engineering Slide #1

Sistemi ICT per il Business Networking

Module 1 Introduction. IIT, Bombay

Inception. Describe the vision and business case for this project. Determine if the enterprise should build or buy the necessary system.

03. Perspective Process Models

Let s get started with the module Essential Data Steps: A Self Assessment.

status Homework 2 posted:

Chapter 4 Requirements Elicitation

Cost of Changing the Activities in SDLC. Minimum of Cost at this level. code debuging unit test integration. Activity

Requirements Basics. CSCE Lecture 4-09/02/2015

COURSE CATALOG. vadoinc.net

Standards Harmonization Process for Health IT

INF 3121 Software Testing - Lecture 05. Test Management

Building a Product Users Want: From Idea to Backlog with the Vision Board

Requirements Knowledge Model. Business. Event. Business. responding. Business. Use Case 1.. Business tracing * * * * Requirement

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

Internal Management Consulting Competency Model Taxonomy

Handling Difficult Project Situations. A Critical Skill for Every PM

18-642: Software Development Processes

Course : Software Engineering and Project Management. Unit 2 Software Requirements Engineering & Analysis

Everything you need to know about. The Motor Ombudsman. TheMotorOmbudsman.org

Requirements Validation and Negotiation

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016

Feature Kelley Blue Book Values in Your Selling Process

A package full of change: An interview with Ian Andrews of Commonwealth Bank of Australia

HOW TO WRITE A WINNING PROPOSAL

Managers at Bryant University

Making Personas Work for Your Site Copyright 2007 Molecular, Inc. Linked by Isobar 1

How To Evolve a Context-Driven Test Plan

A New Divide & Conquer Software Process Model

Now, I wish you lots of pleasure while reading this report. In case of questions or remarks please contact me at:

Chapter 3 Software Process Model

TOGAF 9.1 in Pictures

Software Engineering Lecture 5 Agile Software Development

Introduction to Agile/Extreme Programming

BETTER & FASTER! HOW TO PRIORITIZE REQUIREMENTS: Razvan Radulian, Why-What-How Consulting. Making the impossible possible!

An Overview of Modern Business Analysis

Dual-Track Agile for Product Managers by John Parker, CEO

Mastering the Art of Negotiation

BUSINESS PROCESS MODELLING Primer Version 0.2

Scottish Rugby Marketing Guide for Clubs

WORKING WITH TEST DOCUMENTATION

Agile Quality Management

Top 10 Marketing Mistakes Even the Smartest Companies Make And How You Can Avoid Them

SE420 Software Quality Assurance

CONSULTING and NEGOTIATING CONTRACTS. Alex Turner, Ph.D., FACMP Medical Physics Associates, Inc. Breckenridge, Colorado

Performance Feedback and Work Environment Survey

Requirements Analysis. Overview

Classified Employee Performance Rubric

Indonesia Session 9 Know Your Customer

Workflow Planning/Implementation and Change Management. Presented By: Michelle Schneider Senior Solutions Engineer Iatric Systems

Management Information Systems (MIS)

Linda Carrington, Wessex Commercial Solutions

Requirements Elicitation

Certified Business Analyst Foundation Level. Syllabus

Scrum. a description. V Scrum Alliance,Inc 1

Introduction and Key Concepts Study Group Session 1

The slightest perception of something negative happening can affect an employee s emotional state.

Stakeholder Needs and Expectations

Introduction to software testing and quality process

Owning An Agile Project: PO Training Day 2

IIBA Global Business Analysis Core Standard. A Companion to A Guide to the Business Analysis Body of Knowledge (BABOK Guide) Version 3

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes

Requirements Analysis

Requirements Engineering and Software Architecture Project Description

CREATE A BUSINESS PROFILE THAT GETS YOU NOTICED MICROSOFT CREATE A PROFILE 1

Exam Duration: 2 hours and 30 minutes

Requirements Engineering. Massimo Felici Room 1402, JCMB, KB

Chapter 9 Development Process of MIS. Book:- Waman S Jawadekar

Elicitation Plan. Project Title: Client: Development Team: Main difficulties for elaborating requirements. Elicitation techniques:

Scrum Master / Agile Project Manager An Approach for Personal Competency Development

Agenda. Getting Started. Labor Relations Conference. Bargaining as a Team

Chapter 8. Systems Development. Ralph M. Stair George W. Reynolds

Manager, Supervisor & CEMA Skill Set Model County of Santa Clara

Agile Engineering. for Managers. Introducing agile engineering principles for non-coders

HOW YOUR CAREER BACKGROUND CAN HELP YOU BECOME A BUSINESS ANALYST

BABOK v3 Task to Technique Mapping

Transcription:

Requirements Overview importance of getting right difficulty of getting right types and levels of characteristics of good the Requirements Development Process inception gathering, classification actors evaluation and rationalization prioritization integration, reconciliation, negotiation? eugh validation 9/9/2012 Requirements 2 Product Requirements before we can build anything... we must kw what it is we are to build necessary conditions for success bad ensure product failure matter how well we do the rest of the job they are the basis for the product design we design a product to meet the they guide most decisions, settle many arguments they are the basis for acceptance testing if are met, product is acceptable 9/9/2012 Requirements 3 A 0 Why Requirements are Difficult Marketing are soft & vague statistical results from general surveys inferences from incomplete information Customers can t tell you what they want they don t yet understand how they ll use it opinions may be poorly formed or expressed Requirements aren t stable the customer s business needs change new stake-holders bring new techlogy and competition keep evolving 9/9/2012 Requirements 4 where found Get it Right ASAP 1x where introduced architecture design design 3x 1x A 3 construction construction 5-10x 10x 1x system test 10x 15x 10x post-ship 10-100x 25-100x 10-25x 9/9/2012 Requirements 5 Levels of S/W Requirements Types of S/W Requirements Requirements exist in levels business markets to be addressed business constraints user level supported capabilities behavior in specified situations component level /specifications Lower levels are successive refinements must be consistent with higher level goals B 3 B 2 Functional Requirements it must be able to X when X happens it must/must-t Y Non-functional Requirements aesthetic qualities (sound, graphics, narrative) user facing (usability, familiarity, fun, challenge) performance and RAS (speed, lifetime) interface specifications (e.g. busses, protocols) design constraints (e.g. techlogy, methodology) support (e.g. services, materials, response times) environmental (temperatures, radiation levels) B 3 9/9/2012 Requirements 6 9/9/2012 Requirements 7 1

Good Requirements Clear bounded and unambiguous Traceable we kw who gave it to us we kw what problem it addresses Confirmed t arbitrary or a mere wish, but a real requirement Prioritized we kw how important it is (e.g. can, should, must) Within appropriate scope and level reasonably falls within established project scope specifies what it must do, t how it should do it 9/9/2012 Requirements 8 C 1 C 2 C 3 C 4 C 5 Usable Requirements Complete TBD details Testable we can measure and confirm compliance Achievable we believe we kw how to do it Consistent with higher level goals unresolved conflicts among 9/9/2012 Requirements 9 C 6 C 7 Well Managed Requirements Changes are managed carefully there is a change control process it may involve tifications and approvals implications of changes must be understood Requirements are versioned we all kw what version we are using We track dependencies of on other of specifications on C 8 C 9 Requirements Development Product Inception Requirement Gathering Requirement Finalization actors? eugh 9/9/2012 Requirements 10 9/9/2012 Requirements 11 Process Inception Start by ing the problem to be solved a pressing problem that can be solved or improved engineers often start with the solution Put a fence around the product what will it do? in what operational context will it work? Gather background information existing products, relevant techlogy D Identify 1 potential customers (of various types) potential advisors (sales, marketing, partners) Collaborators (Q/A, support, management, legal) 9/9/2012 Requirements 12 Process Concept Development what kinds of people face this problem? distinct sub-classes of users Understand the user what must the product to do for them? how would they use this product? what would make it well suited for them? Represent this information in use cases each use case is one simple story how a typical operation would be performed actors 9/9/2012 Requirements 13 2

Process Requirements Gathering Initial use cases are often brain-stormed part of the process of developing the resulting are hypothetical examples Requirements Elicitation s with domain experts D 2 they often have clear and well articulated opinions s with representative users a potential gold-mine of information gather information about what they do/need ask questions to ensure correct understanding distill into, classify by level/type 9/9/2012 Requirements 14 Keys to Successful Elicitation You re there to learn t to sell or defend a proposal let the customer do most of the talking Start with general, open-ended questions understand what the customer does & needs Keep the meeting moving on track have an experienced facilitator lead meeting finish a topic, and then move on issues, don t try to resolve them 9/9/2012 Requirements 15 D 3 D 4 Process Requirements Evaluation Assess quality of each requirement vague, poorly substantiated, un-testable figure out how to fix poor Ensure each requirement is rated for value to the success of the product for feasibility, risk and difficulty Prioritize the assign an priority to each, and them Process Integration/Validation Integration combine all of the and resolve any conflicts assess completeness and stability Are we ready to go with these? decide which to address in this release Validation final review of correctness and quality ensure overall consistency with goals obtain all required buy-ins E 1 9/9/2012 Requirements 16 9/9/2012 Requirements 17 Requirements Development Product Inception Requirement Gathering Requirement Finalization actors E 2 3 E? eugh 9/9/2012 Requirements 18 Feature Phasing we can seldom satisfy all in a reasonable project budget or time frame some features can wait for next release some features are merely desired some features only become required later some features we cant yet specify need real data on how product will be used need results of further prototyping/analysis use priority, cost, and risk to sort features into this release, next release, and later 9/9/2012 Requirements 19 E 4 3

Requirements: the bottom line s/w products aren t collections of features they are tools, that do things, for people you must kw who those people are you must understand what they need help fill in these understandings your audience and purpose are critical you should be able to concisely describe each these are your fundamental hang them on the wall in front of your desk don t mistake details for purpose 9/9/2012 Requirements 20 For the next lecture Sisson: User Characterization web-centric examination of approaches & problems Rouse: What Players Want getting inside your customers heads Wiegers: Developing Use Cases a different approach to development Wells: user story cards the agile alternative to UML: introduction to a family of modeling languages use-case, state and activity diagrams 9/9/2012 Requirements 21 Supplementary Slides 9/9/2012 Requirements 22 Eliciting Requirements Use a formal process create, distribute and follow an agenda ask prepared, open-ended questions take detailed written minutes prepare a written report on each meeting Desired results a clearer understanding of the problem additional stake-holders & needs feedback on the proposal (value assessments, constraints, concerns, updated use cases) 9/9/2012 Requirements 23 Conflict Resolution Win-Win negotiation is a must if key aren t met, product fails people will help you, if you help them Must have priority assessments understand each group s key all are t equally important Must be able to trace requirement origins we may have misunderstood a requirement Divide and Conquer de-couple problems to solve one-at-a-time 9/9/2012 Requirements 24 Validating Requirements Are these good? clear, well justified, and widely agreed to traceable and d measurable and testable do we believe we can satisfy them? Are these complete? have all open issues/conflicts been resolved do we believe all to be stable When these answers are yes, we re ready 9/9/2012 Requirements 25 4

Requirements Work Products user level specification description used for elicitation user level (typically use cases) meeting reports report from each elicitation or approval meeting system level specification system model used for analysis may be more component oriented than user spec system level (typically in writing) d, cross-referenced to user 9/9/2012 Requirements 26 Requirements Management a must for large and complex projects become contractual obligations each requirement should have a clear and measurable statement a unique identification number a priority, flexibility, certainty assessment a history of its source, and all changes this often entails a specialized database and highly specified change processes with designated approvers for all changes 9/9/2012 Requirements 27 Q: How much (reqts) process? A: Eugh to give us confidence How obvious is the problem? How many stake-holders are there? How clear are they on their needs? How complex are the use cases? How obvious is the feature set? How demanding are your customers? How good is your competition? What are the consequences of error? 9/9/2012 Requirements 28 5