24 January Software Engineering Processes Risk Management.

Slides:



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

Diane Pozefsky. Interactions  There is no “right answer”  Typically people and product are fixed  … can adapt process  (which is where we will start)
Software Process Models
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
Planning Iterative Software Development Projects Raj Agrawal, PMP Unisys.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
CS487 Software Engineering Omar Aldawud
AgileMan Consulting So what the heck is Agile? It came about as a response to the high failure rate of software projects (> 60%), where failure means late,
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
29 September Interactions  There is no “right answer”  Typically people and product are fixed  … can adapt process  (which is where we will.
Processes. Outline Definition of process Type of processes Improvement models Example Next steps… 1.
Software Life Cycles ECE 417/617: Elements of Software Engineering
8 September ProcessWithin the Steps  Put together minimal solution Start with external commitments Introduce internal milestones  Focus on the.
6 December ’s  60’s “Cowboys” wrote software anyway that they could Difference between best programmers and worst as high as 28:1 (many sources)
20 September Importance of People Most important factor in the quality of software is the quality of the programmers If your life depended on.
11 October Project Management Discipline of planning, organizing, and managing resources to bring about the successful completion of specific project.
Review 20 March. Announcements EA here today Let me know if you are looking for a job or summer internship John Smith Current Events: John BackusJohn.
CS 5150 Software Engineering
Software Configuration Management
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
© 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke
Agile Software Development. Traditional Software Development 1.Initiation (RFP) 2.Feasibility study Technical – can we build it? Economic – should we.
Software Engineering.
Introduction to Software Engineering Dr. Basem Alkazemi
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Risk Management 25 January. What is due next week Website: Monday (send me URL as soon as you have it) Team rules: Monday Functional spec: Tuesday Project.
Diane Pozefsky. 1960’s  60’s “Cowboys” wrote software anyway that they could Difference between best programmers and worst as high as 28:1 (many sources)
“80% of software projects fail”  Standish Report (1995) Standish Report 16.2% completed on-time and on-budget with all features and functions as initially.
1 Design and Integration: Part 1 Nuggets about Design vs Project Management.
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
1 CSE 403 Software Lifecycle Models Reading: Rapid Development Ch. 7, 25 (further reading: Ch. 21, 35, 36, 20) These lecture slides are copyright (C) Marty.
Software Development Landscape
(from Dr. Diane Pozeksky. “80% of software projects fail” Standish Report (1995) Standish Report 16.2% completed on-time and on-budget with all features.
CS3300 Fall 2015 Software Development Lifecycles.
CS CS 5150 Software Engineering Lecture 3 Software Processes 2.
Industry SDLCs and Business Climate. Justin Kalicharan Credentials Director and Senior Technology Officer Over 14 years of coding experience in various.
1 Software Process Models-ii Presented By; Mehwish Shafiq.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Engineering  Turning ideas into reality  Creating something useful from other things using science and math.
1 김 수 동 Dept. of Computer Science Soongsil University Tel Fax
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Basic Approach Development driven by time boxing May sacrifice requirements in order to keep schedule (time boxed) Steer project as you go based on user.
Software Project Management Iterative Model & Spiral Model.
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
CS223: Software Engineering Lecture 5: Software Development Models.
Waterfall Model Software project Management. Waterfall Model  The Waterfall Model was first Process Model to be introduced. It is also referred to as.
Software Engineering Overview 23 January. Software Engineering Overview What is engineering? Why is software engineering different than other engineering.
1 Introduction to eXtreme Programming Remko Popma Azzurri Ltd.
10 September Interactions  There is no “right answer”  Typically people and product are fixed  … can adapt process  (which is where we will.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Slide 3.1 © The McGraw-Hill Companies, 2002 SOFTWARE LIFE-CYCLE MODELS.
Project Management Software development models & methodologies
What is a Functional Spec?  Defines what the functionality will be NOT how it will be implemented  Describes features of the software product product's.
Software Development.
Methodologies and Algorithms
Software Configuration Management
Appendix B Agile Methodologies
Lecture 3 Prescriptive Process Models
Game Design, Development, and Technology
Chapter 18 Maintaining Information Systems
Chapter 2 SW Process Models
Software Testing and Maintenance Maintenance and Evolution Overview
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
Chapter 8 Software Evolution.
Agile Development – a new way of software development?
Appendix B Agile Methodologies
Adapting Agile in Pharmaceutical Industries
Presentation transcript:

24 January Software Engineering Processes Risk Management

Web site content project description contact information schedule of weekly meetings project plan functional spec contract design document all user manuals test plan journal of meetings and decisions related links

What’s Happening: Games Tonight: IGDA meeting 7-9 Emergent Technologies 54 and I-40 (exit 273) Going Online with Emergent's Shared Entity and Simulator Framework Next-Gen Narrative Design Saturday: Carolina Games Summit 10-9 Wayne Community College, Goldsboro David Sipple, Piano WizardJoel Gonzalez, 1 st Playable Productions Dana Cowley, Epic gamesTim Buie, NCSU School of Design Mark Myth, 3-D Learning SolnsAlex Macris, Themis Group Bruce Shankle, Microsoft

Processes

Software Engineering Fundamental Steps Requirements Design Implementation Integration Test Deployment Maintenance Sunset

Processes Differ by how often you do the steps Points on the spectrum Differences in overhead Three fundamental models Waterfall Spiral Iterative

Waterfall Do it once Traditional model Used for large next version releases, especially when tightly coupled changes Pros Simple documentation management Clean design phase Cons Least flexibility No early feedback

Spiral Few iterations Each iteration adds new requirements Used often for projects with less well defined requirements Pros Adaptation to changes based on risks Good customer interaction Early version Limited iterations provide phase structure Cons Document maintenance

Iterative Many iterations Each iteration is on a fixed cycle Typically weekly Used for projects with lots of small independent, but well understood, changes Pros Fast feedback on problems Very adaptable to any changes Lots of versions to work with Cons Document maintenance Code maintenance Requires good automation

Risk Management Life is a risk. Diane Von Furstenberg

Should we eliminate risk? Take calculated risks. That is quite different from being rash. (Patton) Great deeds are usually wrought at great risks. (Herodotus) Great deeds are usually wrought at great risks. (Nehru) No risk => no challenge

Risks “80% of software projects fail” Standish Report (1995) Standish Report More recently: Sauer et al claim 67% “delivered close to budget, schedule, and scope expectations”Sauer et al Two types of risk Avoidable Unavoidable

Risk Management 1. Identification 2. Mitigation plan 3. Prioritization 4. Retirement

Sources of Risk 1. Top management commitment 2. User commitment 3. Misunderstood requirements 4. Inadequate user involvement 5. Mismanaged user expectations 6. Scope creep 7. Lack of knowledge or skill Keil et al, “A Framework for Identifying Software Project Risks,” CACM 41:11, November 1998

Technical Risks New features New technology Developer learning curve Changes that may affect old code Dependencies Complexity Bug history Late changes Rushed work Tired programmers Slipped in “pet” features Unbudgeted items

What can be controlled? Cost Number of people Hours worked Hardware and software used Capability Function that you ship Quality Procedures that increase cost and quality Testing Delivery Dates

So what will you do if you’re behind?