Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems Software Development Lifecycles (SDLC’s), Project Planning,

Slides:



Advertisements
Similar presentations
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Advertisements

The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
PROC-1 3. Software Process. PROC-2 What’s a process? Set of activities in creating software It involves creativity –hard to automate –Requires human judgment.
McGraw-Hill/Irwin © 2006 The McGraw-Hill Companies, Inc. All rights reserved BUSINESS DRIVEN TECHNOLOGY Chapter Nineteen: Building Software to Support.
CSE 470 : Software Engineering The Software Process.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
INFO415 Approaches to System Development: Part 1
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
Carnegie Mellon University © Robert T. Monroe Management Information Systems Information Systems Governance Management Information.
Risk Management Chapter 7.
System Analysis and Design (SAD )
Projmgmt-1/33 DePaul University Project Management I - Risk Management Instructor: David A. Lash.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Planning Ch. 5 Management A Practical Introduction
Slide 1 INTRODUCTION Chapter 1. Slide 2 Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
Fundamentals of Information Systems, Second Edition
Software lifecycle. CS351 - Software Engineering (AY2004)2 Software lifecycle “student view” Design & Specification Coding Testing (optional) Hand it.
Chapter 6 Systems Development: Phases, Tools, and Techniques
CHAPTER 9: LEARNING OUTCOMES
Project phases and the life cycle
CHAPTER 19 Building Software.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Software Development Lifecycles (SDLC’s) Management.
Project Risk Management. The Importance of Project Risk Management Project risk management is the art and science of identifying, analyzing, and responding.
Business Driven Technology Unit 5 Transforming Organizations McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved.
Moving into Design SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Industrial Software Project Management Some views on project managing industrial and business software projects.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Supply Chain Management Systems Management Information.
~ pertemuan 2 ~ Oleh: Ir. Abdul Hayat, MTI 06-Mar-2009 [Abdul Hayat, The Project Management and IT Context, Semester Genap 2008/2009] 1 THE PROJECT MANAGEMENT.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Software Development Lifecycles (SDLC’s) Management.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
13-January-2003cse LifeCycle © 2003 University of Washington1 Lifecycle CSE 403, Winter 2003 Software Engineering
Welcome to Session 3 – Project Management Process Overview
CHAPTER 13 Acquiring Information Systems and Applications.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Systems Development Lifecycle: Develop, Test, and Implement.
Systems Analysis and Design in a Changing World, Fourth Edition
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 1: Introduction to Systems Analysis and Design Alan.
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
Project Risk Management Planning Stage
Carnegie Mellon University © Robert T. Monroe Management Information Systems Supply Chain Management Systems Management Information.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Software Development Lifecycles (SDLC’s) Management.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Making Better MIS Investment Decisions Management.
Chapter 2 : The Project Management and Information Technology Context Information Technology Project Management, Fourth Edition.
Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process.
Quick Recap.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
CS223: Software Engineering Lecture 16: The Agile Methodology.
Carnegie Mellon University © Robert T. Monroe Management Information Systems IS Project Risk Management Management Information.
SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. INTRODUCTION.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Supply Chain Management Systems Management Information.
Lecture 15 Chapter 8 Managing IT Project Delivery.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
Slide 3.1 © The McGraw-Hill Companies, 2002 SOFTWARE LIFE-CYCLE MODELS.
Software Development - Methodologies
Methodologies and Algorithms
Software Processes (a)
Chapter 2: The Project Management and Information Technology Context
Chapter 2 SW Process Models
Requirements and the Software Lifecycle
Methodologies For Systems Analysis.
Methodologies For Systems Analysis.
Chapter 2 Software Processes
Lecture 2 Revision of Models of a Software Process
SDLC (Software Development Life Cycle)
Information system analysis and design
Presentation transcript:

Carnegie Mellon University © Robert T. Monroe Management Information Systems Software Development Lifecycles (SDLC’s), Project Planning, and Risk Management Management Information Systems Robert Monroe October 6, 2009

Carnegie Mellon University © Robert T. Monroe Management Information Systems Goals For Today By the end of today's class you should: –Be able to explain the core principles behind the waterfall, spiral, and agile SDLC's –Understand the primary advantages and disadvantages of each of the SDLC's –Be able to select an appropriate SDLC for your organization and project –Be able to effectively evaluate various IS project alternatives –Understand basic project risk management concepts and be able to apply those concepts to identify risks and develop plans for managing those risks

Carnegie Mellon University © Robert T. Monroe Management Information Systems Systems Development Lifecycle Models

Carnegie Mellon University © Robert T. Monroe Management Information Systems Quick Recap: SDLC’s Systems Development Lifecycles (SDLC’s) describe the order, tasks, deliverables, and interactions of the stages of a systems development project Most SDLC’s Share Common Stages –Planning –Analysis –Design –Development –Testing –Implementation –Maintenance

Carnegie Mellon University © Robert T. Monroe Management Information Systems SDLC Model: Waterfall Planning Analysis Design Development Testing Implementation Maintenance Traditional model Very linear Step A precedes Step B precedes Step C … Commonly used when system must (or can) be fully specified before development begins

Carnegie Mellon University © Robert T. Monroe Management Information Systems Waterfall Model Questions The textbook notes that the waterfall method has a notoriously poor record for delivering successful projects (~10% success rate!) –So why is it so frequently used? –… and why is it so difficult to use successfully? –Is it ever a good idea to use the waterfall method? If not, why? If so, when? –What does it mean to have a 10% success rate? How is that number determined? Is it reflective of reality?

Carnegie Mellon University © Robert T. Monroe Management Information Systems SDLC Model: Spiral Planning Analysis Design Development Testing Implementation Maintenance (Part I) Start Deliver Part 1 Begin Part 2 Planning Analysis Design Development Testing Implement Deliver Part 2 Begin Part 3 Maintenance (Part 2) Planning Analysis Design Development Testing Implementation …

Carnegie Mellon University © Robert T. Monroe Management Information Systems “Agile” SDLC Models Many different variations on ‘Agile’ SDLC’s –XP: eXtreme Programming –Rapid Prototyping / Rapid Application Development –‘Agile’ –… Key ideas common across agile methods –Small, frequent iterations with fast feedback loops –Embrace change –Customer-centric –Working system from very early in the project –Learn as you go, improve as you go –If something is not working, change it

Carnegie Mellon University © Robert T. Monroe Management Information Systems Agile Model Questions The textbook notes that the Agile methods seem to have a much better record for delivering successful projects (65% success rate quoted) –Do you believe the 65% number? Why or why not? –How does this compare to the 10% number given for waterfall? Is it a fair comparison? –What are the advantages of Agile methods? –What are the drawbacks of Agile methods? –What makes them difficult to use successfully? –Under what circumstances might you want to use Agile methods? When might they not be appropriate?

Carnegie Mellon University © Robert T. Monroe Management Information Systems There Are Many, Many SDLC’s Available Most work well in some situations and poorly in other situations –Choosing the correct SDLC for the correct situation is a skill developed primarily through experience Most successful SDLC’s include opportunities for measurement, feedback, and organizational learning Factors to consider when choosing an SDLC: –Culture of the organization –Size and complexity of the project –Routine vs. innovative projects –Personalities of the people involved What other factors should they consider?

Carnegie Mellon University © Robert T. Monroe Management Information Systems SDLC Selection Questions What factors should a company consider in selecting an SDLC model? Do these models differ in terms of their effectiveness and the resources involved? Which steps could be linked to risk management? - student question posted to wiki

Carnegie Mellon University © Robert T. Monroe Management Information Systems Testing Questions How do businesses make the tradeoff between time spent testing a system and trying to get it out there as soon as possible, bearing in mind the exponential increase in cost of fixing an error the later it is found? - Student question on wiki Questions: –Do the different SDLC’s that we have looked at answer this question in different ways? –Do they require fundamentally different ways of thinking about the nature of testing the system?

Carnegie Mellon University © Robert T. Monroe Management Information Systems Four Different Approaches To Staging A Rollout Question: Do all of the SDLC’s that we’ve looked at work equally well with each of these system rollout approaches?

Carnegie Mellon University © Robert T. Monroe Management Information Systems SDLC Questions Which of the SDLC stages is the most important to apply fast if a business faces a short term crisis? - student question posted to wiki Of the phases involved in SDLC, which do you think is the most important phase/phases and why do you think some companies choose to sometimes skip certain phases and what are the disadvantages of doing so? - student question posted to wiki Question: How do these SDLC models differ in their approach to skipping or going quickly through individual stages? Do any of them support outright skipping of phases?

Carnegie Mellon University © Robert T. Monroe Management Information Systems Project Planning and Selection Stage

Carnegie Mellon University © Robert T. Monroe Management Information Systems Hard Questions Where and how should my organization invest in IT? What IT initiatives should we pursue? What IT initiatives should we defer (possibly indefinitely)? How should we balance investment between infrastructure and applications?

Carnegie Mellon University © Robert T. Monroe Management Information Systems Rules Of Thumb Business strategy needs to drive technology strategy –Technology opportunities can, however inform business strategy and introduce business opportunities Define your organization’s process and criteria for evaluating IT investment alternatives Define your organizations strategy for investing in IT –Are you an IT pioneer, a fast follower, or a tech laggard? –When should your organization play each role? –Does your organization believe that “IT Doesn’t Matter” in terms of gaining competitive advantage? Act accordingly

Carnegie Mellon University © Robert T. Monroe Management Information Systems eBiz Define An IT Evaluation Process And Criteria Having a perfect process for this is less important than having a process and following it You will always have more opportunities build information systems than you will have resources (people, money, time) available to execute with ERP CRM SCM Faster Servers BI VPN Candidate Projects VPN SCM Project Approval Gates (filtering process) Implemented Projects Business Case Prorotype Detailed Planning Final Approval

Carnegie Mellon University © Robert T. Monroe Management Information Systems Typical IS Proposal Evaluation Criteria Fit with business strategy –Does this proposed project advance our business strategy? –Is it so compelling that we should change our strategy? Costs: –What will the project cost? –Have you considered all of the true costs (TOC)? –How accurate are the estimates likely to be? Benefits: –What benefits do we believe this project will give us? –Which of those benefits can we quanitify? –Are there other important benefits that are difficult to quantify? Do we believe that those will be worth the cost? –How realistic are these estimates?

Carnegie Mellon University © Robert T. Monroe Management Information Systems Typical IS Proposal Evaluation Criteria (cont.) Risks –How likely are we to successfully complete the project? –What major risks does the project face? Can we mitigate those risks? –What are the risks of not moving forward with it? Alternatives –Are there cheaper/easier alternatives to this project? Feasibility: resources and capabilities –Do we have the resources and skills that we need to complete this project? –What have learned from previous experience with similar projects? –How accurate are the cost/time/effort estimates? Do we believe them? Fit with technical architecture and strategy

Carnegie Mellon University © Robert T. Monroe Management Information Systems Suggestion: Pick The Low-Hanging Fruit Do these ones first! Then these ones… …or these onesDefer indefinitely

Carnegie Mellon University © Robert T. Monroe Management Information Systems Risk Management

Carnegie Mellon University © Robert T. Monroe Management Information Systems Some Definitions A project risk is an uncertain event or condition that, if it occurs, has a negative effect on project objectives Risk management is the process of proactive and ongoing identification, analysis, and response to risk factors. Source: [HBP09] Stephen Haag, Paige Baltzan, and Amy Phillips, Business Driven Technology 3rd Edition, McGraw-Hill Irwin, 2009, ISBN

Carnegie Mellon University © Robert T. Monroe Management Information Systems Risk Identification This is generally done early in the SDLC, and revisited at various points throughout the IS project Ask questions such as: –What could go wrong in completing the project? –What could go wrong for the business once the project goes live? –What other things could this project break? Be sure to have representatives for all of the key stakeholders involved in the identification process

Carnegie Mellon University © Robert T. Monroe Management Information Systems Risk Analysis and Response At this stage you need to figure out: –How likely is it that this risk will occur? –What would the cost be if the risk did occur? –What other risks might cascade from this event? –How can we mitigate this risk before it happens –Do contingency planning How would we respond to this risk if it does happen? How will we know when the risk has turned into a reality? Prioritize the risks based on this analysis and develop a plan to deal with them Revisit the analysis and plans regularly, or as important aspects of the project change

Carnegie Mellon University © Robert T. Monroe Management Information Systems Risk Management Matrix High Medium Low MediumHigh Likelihood of risk occuring Cost of risk occuring

Carnegie Mellon University © Robert T. Monroe Management Information Systems Exercise Consider the following proposed IS project: a large bank based in Doha is planning to move it’s system to a third party Software as a Service provider. The system it currently uses is failing frequently and the executives of the bank want to move this project forward as quickly as possible Identify and analyze five significant risks that this project either faces or introduces to the bank. Put them into the risk management matrix and identify the most important risks for the project team (and/or bank) to address.