Lecture 3: Flashcards
Software Project Management Plan
Review: Software Project
- A software project has a specific duration, schedule, consumes resources and produces work products
- All technical and managerial activities required to deliver the deliverables to the client
- Management activities to complete a software project: Tasks, activities, project functions
Software Project Management Plan (SPMP)
- The controlling planning document for a software project
- Specifies the technical and managerial approaches to develop the software product
- Companion document to the requirements analysis and system design documents: Changes in either may imply changes in the other documents
- The SPMP may be part of the project agreement.
Project Agreement
- Project Agreement: A document written for a client that defines:
- the scope, duration, cost and deliverables for the project
- the exact items, quantities, delivery dates, delivery location
- Client: Individual or organization that specifies the requirements and accepts the project deliverables
- Deliverables: Work Products to be delivered to the client
- Documents
- Demonstrations of functional requirements
- Demonstration of nonfunctional requirements
- Demonstrations of subsystems
- The form of a project agreement can be a contract, a
- statement of work, a business plan, or a project charter.
How much planning should you do?
- Two styles of navigation [Gladwin 1964]
- Europeannavigation (TraditionalPlanning)
- Polynesian navigation (Agile Planning)
- The main difference between the two styles is the reaction to unexpected events (“change”).
Project Plan (European Navigation)
Project Goal: Sail to Auckland Desired Outcome: Auckland is found Team: Captain and 50 sailors Organization: Hierarchical
Tools: Compass, speed meter, map
Methods: Captain determines course and writes it up before departure. Example: Start Lima. Sail West, keep the compass constantly at 97 degrees, stay at latitude 20 degrees
Tasks:
- Task T1 (Check direction): Determine current direction of ship
- Task T2 (Compute deviation): Determine deviation from course
- Task T3 (Course Correction): Bring ship back on course
Wayfinding Process: T1 and T2 are executed hourly. If there is a deviation, T3 is executed to bring the ship back on the planned course
Schedule: With good wind conditions: 50 days; with doldrums 85 days.
Project Plan Polynesian
Project Goal: Improve Living Desired Outcome: A livable place
Team: Navigator and 20 rowers Organization: Hierarchical
Tools: Navigator uses stars for navigation, checks water temperature with his hands
Methods: A set of event-action rules. When an event occurs, the action is based on the current context
Tasks:
- Task T1 (Determine direction): Set direction of ship to a course
- Task T2 (Check Clouds): Look for stationary clouds in the distance
- Task T3 (Check Birds): Look for birds and determine their direction
- Task T4 (Compute course): Determine new course for ship
- Task T5 (Change course): Change direction to follow new course
Wayfinding Process: Start with T1. Then execute T2 and T3 regularly. Interpret task results (cloud detected, birds detected) in the current context. If the interpretation makes a new course more promising, execute tasks T4 and T5.
Schedule: None
Situated action [Suchman 1990]
Situation Action: Selection of action depends on the type of event, the context (situation) and the skill of the developer. Also called context-dependent action
Events: Deviation from course, Birds are seen, Clouds are seen
- European Navigation uses context independent actions:
- Event: “Course deviation in the morning”
- => Action: “Course correction towards planned route”
- Event: “Course deviation in the evening”
- => Action: “Course correction towards planned route”
- Event: “Course deviation in the morning”
- Polynesian Navigation uses context dependent actions:
- Event: “Birds seen”, Context: “It is morning”
- => Action: “Sail opposite to the direction the birds are flying”
- Event: “Birds seen”, Context: Evening
- => Action: “Sail in the direction the birds are flying.
- Event: “Birds seen”, Context: “It is morning”
Software Project Management Plan: SPMP Front Matter
- Title Page
- Revision sheet (update history)
- Preface: Scope and purpose
- Tables of contents, figures, tables
SPMP Introduction
- 1.1 Project Overview
- Executive summary: description of project, product summary
- 1.2 Project Deliverables
- All items to be delivered, including delivery dates and location
- 1.3 Evolution of the SPMP
- Plans for anticipated and unanticipated change
- 1.4 Reference Materials
- Complete list of materials referenced in SPMP
- • 1.5 Definitions and Acronyms
SPMP Part 2: Project Organization
- 2.1 Process Model
- Relationships among project elements
- 2.2 Organizational Structure
- Managementstructure: reporting,decisionand communication structure , organization chart
- 2.3 Organizational Interfaces
- Relations with other entities (subcontractors, commercial software)
- 2.4 Project Responsibilities
- Major project functions and activities; nature of each; who is in charge
- Matrix of project functions/activities vs. responsible individuals.
SPMP Part 3: Managerial Process
- 3.1 Management Objectives and Priorities
- Describes management philosophy, priorities among requirements, schedule and budget
- 3.2 Assumptions, Dependencies and Constraints •
- External events the project depends on, constraints under which the project is to be conducted
- 3.3 Risk Management
- Identification and assessment of risk factors, mechanism for tracking risks, implementation of contingency plans
- 3.4 Monitoring and Controlling Mechanisms
- Frequency and mechanisms for reporting
- 3.5 Staffing Plan
- Numbers and types of personnel required to conduct the project.
Examples of Risk Factors
- Contractual risks
- What do you do if the customer becomes bankrupt?
- Size of the project
- What do you do if you feel the project is too large?
- Complexity of the project
- What do you do if the requirements are multiplying during analysis? („requirements creep“)
- Personal
- How do you hire people? Is there a danger of people leaving the project?
- Customer acceptance
- What do you do, if the customer does not like the delivered system?
SPMP Part 4: Technical Process
- 2.1 Methods, Tools and Techniques
- Specify the methods, tools and techniques to be used on the project
- 2.2 Software Documentation
- Describe the documentation plan
- 2.3 Project Functions
- Plans for (at least) the following project functions.
- Plan to ensure quality assurance
- Configuration management plan (IEEE Std 1042) • Verificationandvalidation plan
- These plans can be included in section 2.3 or there is a reference to a separate document.
- Plans for (at least) the following project functions.
SPMP Part 5: Description of Work Packages
Work Breakdown Structure (WBS) (Section 5.1) #
- Hierarchical decomposition of the project into activities and tasks
Dependencies between tasks (Section 5.2)
- Structural relationships between tasks: “consists of”
- Temporal relationship between tasks: “must be preceded by”
- ❖ Visualization of temporal dependencies: dependency graph
- Nodes are activities
- Lines represent temporal dependencies.
Work Breakdown Structure
Work Breakdown Structure: The aggregation of all the work to be performed in a project.
Creating Work Breakdown Structures
- Two major philosophies
- Activity-oriented decomposition („functional decomposition“)
- Example: Write the book, Get it reviewed, Do the suggested changes, Get it published
- Activity-oriented decomposition („functional decomposition“)
- Result-oriented decomposition („Object-oriented decomposition“)
- Example: Chapter 1, Chapter 2, Chapter 3
- Which one is best to manage? Depends on the project type:
- Development of a prototype
- Development of a product
- Project team consist mostly of inexperienced beginners
- Projectteamconsistsof experienceddevelopers