CS 577b Software Engineering II -- Introduction

Slides:



Advertisements
Similar presentations
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Advertisements

Software Process Models
University of Southern California Center for Systems and Software Engineering Risk Calculation Case Studies CS 510 Software Engineering Supannika Koolmanojwong.
Project What is a project A temporary endeavor undertaken to create a unique product, service or result.
University of Southern California Center for Systems and Software Engineering A Look at Software Engineering Risks in a Team Project Course Sue Koolmanojwong.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
1 Independent Verification and Validation Current Status, Challenges, and Research Opportunities Dan McCaugherty IV&V Program Manager Titan Systems Corporation.
1 Fundamental Principles of Solution Design and Implementation Chapter 3.
University of Southern California Center for Systems and Software Engineering USC CSSE Research Overview Barry Boehm Sue Koolmanojwong Jo Ann Lane Nupul.
Software Engineering. How many lines of code? Average CS1004 assignment: 200 lines Average CS4115 project: 5000 lines Corporate e-commerce project: 80,000.
University of Southern California Center for Systems and Software Engineering Issues and Recommendations Emanating from the Management Issues Group of.
Software Engineering.
Software Development Problems Range of Intervention Theory Prevention, Treatment and Maintenance Planning, Development and Use Cost of Intervention.
1 Chapter 6 Risk Management. 2 Project Risks What can go wrong? What is the likelihood? What will the damage be? What can we do about it?
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510, CS 577a Fall,2005 (
Pertemuan Matakuliah: A0214/Audit Sistem Informasi Tahun: 2007.
Software Project Risk Management
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Management Adrian Marshall.
Project Closure CHAPTER FOURTEEN Student Version Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill/Irwin.
Don Cole Risk Assessment and Mitigation Project Management for ARA Engineers and Scientists.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 4.1.
Software System Engineering: A tutorial
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
CS3100 Software Project Management Week 26 - Quality Dr Tracy Hall.
How to Get Promoted When Your IT Project Fails Let’s Talk About…….. Ian Koenig PMP Quality IS Projects, Inc.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 1.
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
“How to fail in project management without really trying” –J. K
OHT 5.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Contract review process and stages Contract review objectives Implementation.
Chapter 3 Project Management Details Tracking Project Progress Project Estimation Project Risk Analysis Project Organization RUP Project Management Workflow.
© The McGraw-Hill Companies, Software Project Management 4th Edition Risk management Chapter 7.
Introduction to Software Engineering ECSE-321 Unit 4 – Project Management 10/19/2015Introduction to Software Engineering – ECSE321Unit 4 – Project Management/1.
Chapter 11. Intro  What is Project Management?  Project Manager  Project Failures & Successes Managing Projects  PMBOK  SDLC Core Process 1 – Project.
Object-Oriented Software Engineering
Note Excerpts from Object-Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R. Schach
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 3 Identification and Selection of Development Projects.
1 Requirements Management - General concepts - Noureddine Abbadeni King Saud University College of Computer and Information Sciences Based on “Software.
Abbasian, Phd Ch 1 -1 Chapter 1 The Nature of Strategic Management Strategic Management: Concepts & Cases 13 th Edition Fred David.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Pre-Project Components
Service Level Agreements Service Level Statements NO YES The process of negotiating and defining the levels of user service (service levels) required.
Where We Are Now 14–2. Where We Are Now 14–2 Major Tasks of Project Closure Evaluate if the project delivered the expected benefits to all stakeholders.
Software Requirements and Design Khalid Ishaq
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
February 15, 2004 Software Risk Management Copyright © , Dennis J. Frailey, All Rights Reserved Simple Steps for Effective Software Risk Management.
Software Project Management Lecture 5 Software Project Risk Management.
Chap 4. Project Management - Organising, planning and scheduling
Stand Up Comedy Project/Product Management
1 Chapter 3: Project Management Chapter 22 & 23 in Software Engineering Book.
CSE SW Project Management / Module 25 - Risk Management Overview Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M25 Slide.
Risk Analysis 19 th September, Risk vs. Problem Risk  An “uncertain event that “may” happen with some probability Problem  The above event.
University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC CS 510, CS 577a Fall 2015 Software Risk Management : Overview.
Continual Service Improvement Methods & Techniques.
Welcome to Software Project Management. CONVENTIONAL SOFTWARE MANAGEMENT The BEST and WORST thing about software is its flexibility. 1.Software development.
R i s k If you don’t attack risks, they will attack you.
University of Southern California Center for Systems and Software Engineering ICSM Stage II: Phases and Continuing Project Example Anandi Hira CS 510,
Slide 3.1 © The McGraw-Hill Companies, 2002 SOFTWARE LIFE-CYCLE MODELS.
Software Development Process includes: all major process activities all major process activities resources used, subject to set of constraints (such as.
Chapter 11 Project Management.
CS 577b: Software Engineering II
Project Cost Management
Information Systems Development
Lecture 3 Prescriptive Process Models
Software Process Models
Chapter 6 Risk Management
Presentation transcript:

CS 577b Software Engineering II -- Introduction 24 April 2017 Risk Management CS 510, Fall 2014 Barry Boehm © 2002-6 USC Center for Software Engineering

Outline Risk Management Case Studies Agile Risk Management

Importance of Risk Management Avoiding Disasters 80-20 rule Avoiding Rework Rework of erroneous requirements, design, code typically consumes 40-50% of the total costs of software development Prime opportunity to improve productivity Avoiding Overkill Focus effort on the critical areas that make a difference Stimulating Win-Win Situations “Best and final offer” negotiation on software contracts leads to cheapest wins

USC-CSSE Top-10 Risk Delphi, 2014 Unrealistic budgets, schedules (94) Inadequate or misunderstood requirements (92) Misaligned stakeholders (62) Bad architectural decisions (50) Bad NDI (COTS, clouds, open source) decisions (45) Personnel shortfalls (43) Weak or no analysis of alternatives (33) Unresolved quality-attribute conflicts (27) Immature technology (26) Lack of customer/CONOPS understanding (20)

Straining Computer Science Capabilities (1989) Distributed Processing Artificial Intelligence Domains Human-machine performance Algorithm speed and accuracy Information privacy and security protection High reliability and fault tolerance

Decision-Driver If decisions had been driven by factors other than technical and management achievability, frequently be the source of critical software-risk item. Politically driven decisions Choice of equipment, subcontractor, schedule & budget, allocation of responsibilities Marketing-driven decisions Gold plating, choice of eq, schedule & budget

Decision – Driver (cont) Solution-driven vs problem-driven decisions In-house components and tools, product champion Short-term vs Long-term decisions Staffing – available basis rather than the qualified ones Software reuse – often flaky and incompatible Premature review – fixed review date

Pareto 80-20 phenomena 80% of the contribution comes from 20% of the contributors 20% of the modules contribute 80% of the cost 20% of the modules contribute 80% of the errors 20% of the errors cause 80% of the down time 20% of the errors consume 80% of the cost to fix 20% of the modules consume 80% of the execution time

Uncertainty Areas and unresolved questions Mission requirements Vague top-level mission statements but no clear definition Life-cycle concept of option Boundaries between maintenance and incremental development or preplanned product improvement System performance drivers Where to measure (CPU, main memory, communication) UI characteristics IKIWISI Interfacing system characteristics Sharing common resources? Common modules?

Dealing with compound risks Pushing technology on more than one front Too many new technology at the same time Pushing technology with key staff shortages Meeting vague user requirements on an ambitious schedule Untried hardware with an ambitious schedule Unstable interfaces with an untried subcontractor

Make or Buy Decision Analysis COST EASY $1,200K 0.4 = (0.4*1200K) + (0.6*1800K) = $1,560K HARD 0.6 $1,800K BUILD SMALL MOD $700K Geographic DBMS REUSE 0.5 =$1,450K 0.5 EASY 0.3 $1,500K LARGE MOD BUY HARD $2,500K 0.7 SMALL MOD 0.6 $1,000K =$1,400K 0.4 LARGE MOD $2,000K

Do IV&V or not? $1.3M $2M $0.18M $0.82 M $0.30 M $0 $20M Size(Loss) = $0.5 M P(Loss) = 0.36, Find CE 0.04 Don’t Find CE $20.5M DO IV&V 0.6 NO CE $0.5M NO IV&V 0.3 Find CE Size(Loss) = $0 M 0.1 Don’t Find CE $20M 0.6 NO CE $0M CE = Critical Error

Opportunity Tree Vendor A or Vendor B Impact: positive $ = gain, negative $ = loss http://getpmpcertified.blogspot.in/2013/02/expected-monetary-value-analysis-emv.html

VALUE Fix or rebuild http://www.mindtools.com/dectree.html

VALUE http://www.mindtools.com/dectree.html

http://mosaic.cnfolio.com/B302CW2009B152

Risk Reduction Leverage (RRL) BEFORE - AFTER RISK REDUCTION COST Spacecraft Example LONG DURATION TEST FAILURE MODE TESTS LOSS (UO) PROB (UO) RE $20M 0.2 $4M $20M 0.2 $4M B B PROB (UO) RE 0.05 $1M 0.07 $1.4M A A COST $2M $0.26M 4-1 4- 1.4 = 1.5 = 10 RRL 2 0.26 10/14/05 ©USC-CSE

Risk Assessment Tool

Top 10 tips for risk management 10. Identify and assess risks 9. Know the numbers 8. Risks are interrelated, recognize the relationship 7. Continually reassess risks 6. Commit adequate resources 5. Review the cost of risk mitigation 4. Reduce exposure 3. Assess the risk/return ratio 2. Monitor the quantum shifts in risk levels 1. Create a risk aware culture http://www.risklimited.com/risk-tips.htm

Risk/Return Ratio Let's say a trader purchases 100 shares of XYZ Company at $20 and places a stop-loss order at $15 to ensure that her losses will not exceed $500. Let's also assume that this trader believes that the price of XYZ will reach $30 in the next few months. In this case, the trader is willing to risk $5 per share to make an expected return of $10 per share after closing her position. Since the trader stands to make double the amount that she has risked, she would be said to have a 1:2 risk/reward ratio Purchase: 100 shares * $20 Stop-loss at $15; expectation at $30 Risk $5 to make $10 1:2 risk reward ratio

Agile Risk Burn-down chart http://www.mountaingoatsoftware.com/blog/managing-risk-on-agile-projects-with-the-risk-burndown-chart http://www.scrumalliance.org/community/articles/2013/2013-may/risk-management-in-agile

Agile Risk Policy Do risky stuff first and fail early http://www.guerillaprojectmanagement.org/2009/01/beneficiile-agile-pentru-project.html

Sample risks from risk register

Potential risk – Product Size Number of users of the product? Number of projected changes to the requirements for the product? Before delivery? After delivery? http://groups.engin.umd.umich.edu/CIS/course.des/cis375/projects/risktable/risks.htm

Business impact risks Affect of this product on company revenue? Governmental constraints on the construction of the product? Costs associated with late delivery? Costs associated with a defective product? http://groups.engin.umd.umich.edu/CIS/course.des/cis375/projects/risktable/risks.htm

Customer related risks Does the customer have a solid idea of what is required? Does the customer understand the software engineering process? http://groups.engin.umd.umich.edu/CIS/course.des/cis375/projects/risktable/risks.htm

Development environment risks Are all the software tools integrated with one another? Are testing tools available and appropriate for the product to be built? http://groups.engin.umd.umich.edu/CIS/course.des/cis375/projects/risktable/risks.htm

Process issue risks Are staff members signed-up to the software process as it is documented and willing to use it? Are the results of each formal technical review documented, including defects found and resources used? http://groups.engin.umd.umich.edu/CIS/course.des/cis375/projects/risktable/risks.htm