CSE Senior Design I Building a Plan Instructor: Mike O’Dell Several of the slides in this module are a modification and amplification of slides prepared.

Slides:



Advertisements
Similar presentations
Instructor: Mike O’Dell
Advertisements

Software Process Models
What is Agile? Agile is a software methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration.
Agile Project Management with Scrum
SCRUM John Drew. SCRUM - overview Scrum is a project management discipline that has evolved since the early 1990s to deliver software that meets business.
Intro to Scrum. What is Scrum? An answer to traditional “fixed cost / strict requirements” contracts which had very high rates of failure Recognizes the.
Degree and Graduation Seminar Scope Management
Gu & Maher University of Sydney, October 2004 DECO2005 Monitoring Team Process.
Software Engineering.
Fundamentals of Information Systems, Second Edition
Iterative development and The Unified process
4. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the elements of project management and the responsibilities of a.
Chapter 3: The Project Management Process Groups
Information Technology Project Management – Fourth Edition
CHAPTER 9: LEARNING OUTCOMES
CSE Senior Design II Staged Delivery Instructor: Mike O’Dell.
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Management Adrian Marshall.
Planning. SDLC Planning Analysis Design Implementation.
CHAPTER 19 Building Software.
Information Technology Project Management, (chapter#2) Methods of IT Project Management, (chapter#2)
Agile Design and SCRUM Brent M. Dingle, Ph.D. “For the last few centuries, … science has been attempting to break matter down into ever smaller bits, in.
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 Project Management Introduction to Project Management.
Project Management Chapter 3. Objectives Become familiar with estimation. Be able to create a project workplan. Understand why project teams use timeboxing.
Business Systems Development SDLC and introduction to the Microsoft Solutions Framework Team and Process Models.
Understand Application Lifecycle Management
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
CSE Senior Design I Senior Design Specifications: A Guide Instructor: Vassilis Athitsos Several of the slides in this module are a modification and amplification.
Systems Development AIMS 2710 R. Nakatsu. Overview Why do IT projects succeed and fail? Two philosophies of systems development –Systems Development Life.
CSE Senior Design I Building a Plan Instructor: Vassilis Athitsos Several of the slides in this module are a modification and amplification of slides prepared.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
1 Requirements Management - General concepts - Noureddine Abbadeni King Saud University College of Computer and Information Sciences Based on “Software.
Ch 4 - Learning Objectives Scope Management You should be able to: n Discuss the relationship between scope and project failure n Describe how strategic.
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
AP-1 5. Project Management. AP-2 Software Failure Software fails at a significant rate What is failure? Not delivering it on time is an estimation failure.
5/30/20161 Iterative Project Management Chapter 2 – How Do Iterative Projects Function? Part 1 Iterative Project Management / 01 - Iterative and Incremental.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Develop Project Charter
Fundamentals of Information Systems, Second Edition 1 Systems Development.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
Copyright © by Mark J. Sebern Software Engineering Process I SE 2800.
Stand Up Comedy Project/Product Management
Feature-Set (a.k.a. Product Backlog) Management in Scrum
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
CSE Senior Design II Timebox Development Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell.
CSE Senior Design II Scrum Review/Discussion Instructor: Mike O’Dell.
Scrum Overview. Agenda What is scrum…and what it isn’t Scrum’s Characteristics The Scrum Process Scrum Phases Measurements Key Practices Backlogs Sprint.
Software Quality Assurance Chip Ene, February 14, 2015.
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
 System Requirement Specification and System Planning.
Prof. Shrikant M. Harle.  The Project Life Cycle refers to a logical sequence of activities to accomplish the project’s goals or objectives.  Regardless.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Scrum.
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
The Project Infrastructure
Fundamentals of Information Systems, Sixth Edition
Agile Software Development Brian Moseley.
Information Technology Project Management – Fifth Edition
Chapter 2: A Systems View and Systems Methodology
Chapter 3: The Project Management Process Groups: A Case Study
How to Successfully Implement an Agile Project
Teaching slides Chapter 1.
Summarizing Our Models to Date
Software life cycle models
Introduction to Agile Blue Ocean Workshops.
Project Lifecycle and IT Product Life Cycle
Scrum in Action.
Presentation transcript:

CSE Senior Design I Building a Plan Instructor: Mike O’Dell Several of the slides in this module are a modification and amplification of slides prepared by Mr. Tom Rethard for use in a prior Senior Design Class. They were originally for use with A Discipline for Software Engineering (Watts S. Humphrey), sponsored by the U.S. Department of Defense. Original slides are copyright SEI; modifications are Copyright © 2002, T. Rethard. Further modifications by Mike O’Dell. All Rights Reserved.

2 CSE Why Plan? focus  A plan helps you focus on the goal  “Begin with the end in mind. 1 ” estimate  A plan let’s you estimate job completion track progress  A plan helps you track progress milestones sense of accomplishment  A plan gives you milestones that provide a sense of accomplishment along the way identify problems  A plan helps you identify problems early establishes commitments  A plan establishes commitments for the team and each individual on it 1 Stephen R. Covey, The Seven Habits of Highly Effective People

2 CSE The Planning Process… Simplified  Plan the work … then work the plan  Refine, refine, refine…

2 CSE What is a Plan? agreement  An agreement by the team on the cost and schedule for a specified job structure  A structure for organizing the work framework  A framework for obtaining the required resources (people, funds, etc.) record  A record of what was initially assumed and committed CONTRACT  It’s a CONTRACT!

2 CSE Components of a Plan Lifecycle  A Lifecycle Planning Model: The Master Plan for the Project  Order and criteria for key events  Correct model for the job?  Work Estimates  How big is the job (size and effort)?  What can be done with resource/time?  Schedule and Work Breakdown  When do we expect to have things done?  What are we committing to?

2 CSE Representative Lifecycle Models  Pure Waterfall (the old granddaddy)  Code-and-Fix (and plan to fail)  Spiral (new age sophistication)  Modified Waterfalls (making the best of an old standby)  Evolutionary/Rapid Prototyping (design as you go)  Agile development – iteration in timeboxes  Staged Models (show as you go)  Design to schedule combination  Hybrids – some combination of above

2 CSE Agile Methodologies  Iterative and incremental development  Adaptive planning based on customer and market changes  Plan milestones are flexible and subject to change  “rolling wave” progression  TimeBox development  Staged (potentially shippable increments)  Scrum

2 CSE Clear Product Specifications what how  Provide the details of what will be done, and how it will be done: what  Requirements Specification (SRS – what), managed via the Product Backlog how  Design Documentation (DDS - how )  Test Plan (verify the what and the how)  These provide the basis for product acceptance

2 CSE Processes/Procedures how  Defines how things will get done  Provides the basis for establishing critical milestones and deliverables  Establishes entry and exit criteria for critical phases  Establishes the standards that will be used  Defines the tools that are required to complete the work

2 CSE 4316 (from Essential Scrum, Rubin) 10 Scrum Overview  Scrum Essentials  Roles  Activities  Artifacts

2 CSE 4316 (from Essential Scrum, Rubin) 11 Scrum Activities Overview

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Independent.  Independent. One of the characteristics of Agile Methodologies such as Scrum is the ability to move stories around, taking into account their relative priority - for example - without much effort. If you find user stories that are tightly dependent, a good idea might be to combine them into a single user story.

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Negotiable.  Negotiable. The only thing that is fixed and set in stone in an agile project is a Sprint backlog (and, even then, it can be broken). While the story is in the product backlog, it can be rewritten or even discarded, depending on business, market, technical or any other type of requirement by team members.

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Valuable.  Valuable. The focus here is to bring actual product-related value to the end-user. Coming up with technical stories that are really fun to code but bring no value to the end-user violates one of the Agile Principles, which is to continuously deliver valuable software.

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Estimable.  Estimable. If a user story size cannot be estimated, it will never be planned, tasked, and, thus, become part of an iteration. So there's actually no point in keeping this kind of user story in the Product Backlog at all. Most of the time, estimation cannot be executed due to the lack of supporting information either in the story description itself or directly from the Product Owner.

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Small.  Small. User story sizes should typically take only a few days to implement. Anything beyond that range should be considered too large to be estimated with a good level of certainty or even "epic" and broken down into smaller user stories. There's no problem in starting with epic stories, as long as they are broken down when the time to place them in a Sprint backlog comes closer.

2 CSE Characteristics of a Good Requirement (PBI/User Story)  Testable.  Testable. Bear in mind that a story should only be considered DONE, among other things, if it was tested successfully. If one cannot test a story due to lack of information (see "Estimable" above), the story should not be considered a good candidate to be part of a Sprint Backlog.

2 CSE Characteristics of a Good Requirement (PBI/User Story) I.N.V.E.S.T.

2 CSE Tips for Successful Requirement Determination features/functions  Start by establishing what the team thinks the features/functions of the system should be  Brainstorm as team and write everything down on the Product Backlog (using the template provided) sponsor  Meet with your sponsor to review/modify your list and discuss alternatives  Add any features/functions that the sponsor believes are required

2 CSE Tips for Successful Requirement Determination ancillary requirements  Consider and add ancillary requirements  E.g., performance, packaging, look and feel “non- functional” requirements  Discuss and add as necessary any “non- functional” requirements  E.g., standards that you must adhere to, maintenance and support, safety analyze the feasibility  Discuss and analyze the feasibility of meeting or exceeding each requirement within the budget, time and skills allowed. Assess effort required.

2 CSE What is a System Requirements Specification (SRS)? detailed description  A detailed description of the features and functions of a product, incorporating:  End-user and sponsor input  Developer input  Management input Product Backlog  The basis for your Product Backlog commitment  Your documented commitment to deliver contract  Your contract with your stakeholders that identifies WHAT you will create

2 CSE What is a Project Charter?  A document that summarizes the project  Defines the scope, product vison and objectives of the project  Delineates organizational relationships and key roles of the project team  Delineates individual authority and responsibility of those individuals  Identifies key risks and plans to handle them  Specifies dependencies on other organizations