Project Management Building the Project Plan Managing the Project Plan Results and Progress Mike McKerns, Caltech.

Slides:



Advertisements
Similar presentations
PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
Advertisements

Web Development Engineering Processes Introduction to Web Development Outsourcing Processes.
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Software Process Models
Project Scope Management
Degree and Graduation Seminar Scope Management
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Project Change Management
Rational Unified Process
Management of Change Project Status –Schedule, Cost, and Earned Value –Issues and a Path Forward Project Management Infrastructure –Agility of the WBS.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
(c) 2007 Mauro Pezzè & Michal Young Ch 24, slide 1 Documenting Analysis and Test.
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Copyright © 2007 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Chapter 3: The Project Management Process Groups
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Introduction to Software Testing
Project Scope Management
CSSE 375 Software Construction and Evolution: Configuration Management
What is Business Analysis Planning & Monitoring?
Chapter : Software Process
Process: A Generic View
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Process: A Generic View n A software process  is a roadmap to building high quality software products.  provides a framework for managing activities.
UML - Development Process 1 Software Development Process Using UML (2)
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
RUP Fundamentals - Instructor Notes
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Chapter 2 The process Process, Methods, and Tools
Page 1 MODEL TEST in the small GENERALIZE PROGRAM PROCESS allocated maintenance changes management documents initial requirement project infrastructure.
© Blackboard, Inc. All rights reserved. Back to the Feature: An Agile, User-centric Software Development Lifecycle Cindy Barry Senior Product Manager Martha.
RUP Implementation and Testing
Rational Unified Process Fundamentals Module 4: Disciplines II.
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
1.  Describe an overall framework for project integration management ◦ RelatIion to the other project management knowledge areas and the project life.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Executive Summary Target Deployment – January 4, 2005 Actual Deployment – December 22, 2004.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Brent Fultz; Co-PIs are Michael Aivazis, Ian Anderson; PM is Mike McKerns California Institute of Technology.
Managing CMMI® as a Project
Apply Project Scope Management Techniques Project Scope Processes – Part 2 Certificate IV in Project Management Qualification Code BSB41507 Unit.
Develop Project Charter
CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Quick Recap Monitoring and Controlling. Lesson 11: Monitoring and Controlling Project Work Topic 11A: Identify the Monitor and Control Project Work Process.
PRJ566 Project Planning & Management Software Architecture.
1 / x CMMI Technical Solution Rob Vanden Meersche Dieter Van den Bulcke.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Recent trends in IT projects – Globalization, outsourcing, and virtual teams Project management process groups – Initiating, planning, executing, monitoring.
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
6/6/ SOFTWARE LIFE CYCLE OVERVIEW Professor Ron Kenett Tel Aviv University School of Engineering.
TMP3413 Software Engineering Lab Lab 01: TSPi Tool Support.
Development Project Management Jim Kowalkowski. Outline Planning and managing software development – Definitions – Organizing schedule and work (overall.
Information Technology Project Management, Seventh Edition.
Software Configuration Management (SCM)
Managing the Project Lifecycle
Software Engineering I
Presentation transcript:

Project Management Building the Project Plan Managing the Project Plan Results and Progress Mike McKerns, Caltech

Goals & Objectives The goal of DANSE is to build a software system for neutron scattering research that: - integrates the basic data reduction capabilities that are available today - enables new types of science in all major subfields of neutron scattering research - provides a coherent framework onto which software components can be added by scientists - is maintainable by the SNS software group before the end of the project

Identifying the Project Scope Planning begins: January, requirements collection with neutron scientists - software workshops & reviews - polls & surveys First draft for five-year project plan: November identified project tasks - problems with estimation of effort, risk, & duplication of effort First draft for Scope Baseline (WBS): August risk assessment & mitigation plan - resource leveling, task dependencies, & external drivers Project Descoped ($16.7M – $11.9M): March identified critical tasks & scope contingency

Building a Scope Baseline (task-by-task)

The Scheduling Process … is highly constraint-driven

Five Year Software Construction Plan

The Project Plan Must be Agile The Project Plan must accommodate: - new developments in available software - the talents of current developers - refinement of ideas, scope, requirements, and design Regular refinements of schedule and tasks (6 months) - improve architectural design of common algorithms packages - create new tasks as code design becomes more extensible Baseline plan was good; however, not detailed enough… Difficulties encountered with planning occurring at task start - drive to design more reusable code lessened when “clock is ticking” - new requirements make Central Services & Common Algs schedule unstable

Solidify Initial Scope & Design… Ensure a clear definition of all deliverables - identify all of the project deliverables (especially the flagship applications) - break deliverables into well-defined conceptual components - specify information to exchange between the components - draw UML diagram of components and data objects for each deliverable Ensure identification of all tasks - list our objectives and our requirements for each subgroup - associate each requirement with at least one task - associate each deliverable with at least one task - identify if task is well-defined, digestible, and meets design requirements - identify if software has the desired interfaces

…then Refine the WBS Building tasks with narrower scope - creates additional tasks - tasks tend to be shorter duration with better-defined scope - code tends to be more reusable - development is more efficient and there is less rework - creates less surprises Schedule tasks once WBS dictionary is updated - developers focus on more than one task - more tasks run simultaneously, thus durations can be lengthened - more akin to development in a small dynamic group - less well-defined tasks must be scheduled later in the project

Capture High-level Specifications

Capture Good Engineering Design in WBS

Capture Vision in WBS Dictionary

Ensure Well-defined Package Evolution … - … … - … … - … … - … Instrument simulation is simulation engine, neutron buffer, and neutron components… and uses instrument and geometry Initially, McStas components provide monitors, guides, samples, detectors Extend by building neutron component with generic sample construction API

Standardized Software Production Process - review and quality control process integrated with development - review and testing process enable efficient software engineering - producing documentation and specifications early in the process minimizes rework and eases user manual generation - full code construction and core documentation by beta release

Standardized Reviews (SQA Guidelines)SQA Guidelines Planning Review - vision statement summarizing purpose, functionality, and acceptance criteria Design Review - UML & auto-generated interface documentation for architecture specification - refinement of requirements and use cases into behavior specification Code Review - both component/application and test code inspected - automated test for quality standards, manual inspection for code functionality Reviews involve Architect, PM, QA, SubPI, developers - reviewers should be stakeholders in the code - review action items entered to project tracking system - reviews are critical in developing the most commonly reused tasks - audits by PM, QA to verify progress and quality standards

Software Testing Process - automated builds tied to code repository & reporting system - automated tests of process and standards adherence - manual inspection of functional behavior - tests developed concurrent to code - rapid bug identification, notification - overall product quality and developer efficiency increases

Resource Management Tools - centralized code repository - ticketing system - systematic tracking - structured design process - build/testing infrastructure - release management - standardization - quality assurance - reporting mechanisms - review & design steering Successful development with distributed resources requires centralized management.

Communication Processes Coordination and Planning Mechanisms - mailing lists and ticketing system - weekly technical and management meetings; breakout sessionsbreakout sessions - control boards Production Mechanisms - versioning repositoriesversioning repositories - standardized development and release process - 1-on-1 VNC sessions Configuration Control and Reporting Mechanisms - repository trackingrepository tracking - feature and bug tracking - automated builds and testing

Tracking the Development Process Integrated tracking system monitors development & bugstracking system - based on standard bug tracking system - bug reports from users and developers - WBS tasks added as feature requests - review action items entered as feature requests - error reports from automated builds and test harness Repository check-ins provide additional information - check-in messages reference to archived design documentation - finer-grain detail provided by repository 'diff' command EVM metrics will be tested for weighting task completion - tracking based on production process (design, review, test, release) - tracking based on functional requirements and specifications

Metrics Captured as Audit Checklist Action items are submitted as tickets in the online bug and issue tracking system.

Earned Value Management Earned Value Management provides estimate of project progress and adherence to project plan - Sequenced tasks in WBS provide coupling of expected (scheduled) work completion to expected cost - Software Production Plan identifies basis for estimation of % complete, and is captured in the Statement of WorkStatement of Work - Project Manager and Subproject Leader use project tracking tools to map work done to % complete - Monthly reports from subproject business systems provide actual costs EVM serves as a guide for project change decisions

Monthly Capture of EVM & Issues Please inquire to Mike McKerns or Brent Fultz for access to information contained on this slide.

Project is on-schedule, but… Please inquire to Mike McKerns or Brent Fultz for access to information contained on this slide.

Summary Project Plan is good, and always improving Project is on schedule Requirements gathering & scope clarification progressing Design and planning sessions have been successful Collaboration with the SNS & community has accelerated

End Presentation