What is Software Contracting?

advertisement
Software Contracting Process and
Guidance
Neil Potter, Mary Sakry
The Process Group
P.O. Box 700012
Dallas, TX 75370-0012
Tel. 972-418-9541
Fax. 972-618-6283
E-mail: help@processgroup.com
Web: http://www.processgroup.com
Licensed from Karl E. Wiegers
Version PBv3 contains Pitney Bowes templates and modifications
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
1
Course Objectives
At the end of this workshop you will be able to:
 Summarize the Software Contracting Process.
 Use the process templates, checklists, and other work aids.
 Identify and manage risks for a contracted project.
 Develop a Request for Proposal.
 Select a qualified vendor.
 Manage a contracted project.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
2
Agenda
 Introduction to Software Contracting
 software contracting to outside vendors
 selecting a project for software contracting
 The Software Contracting Process
 Process Steps and Tips for Successful Execution




requirements development
risk management
project management
key deliverables
 Statement of Work
 Request for Proposal
 Contract
 Contract Provision Tracking Matrix
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
3
What is Software Contracting?
 Contracting with an external vendors to develop or
maintain a system or software product
 Think of it as “partnering” or “collaboration”
 Not the same as staff-augmentation contracting
 With Software Contracting the agreement is between
Pitney Bowes and a Vendor to produce a series of
defined deliverables
 With Staff Augmentation the agreement is between a
manager and a specific individual to perform specific
tasks
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
4
Possible Motivations for
Software Contracting
 Insufficient resources available in house
 Parallel or joint development
 Reduce time to market
 Offload legacy or non-core competency work
 Exploit vendor’s technical or quality capabilities
 Control development costs
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
5
Some Key Software Contracting Issues
Cultural Differences
Communications
Infrastructure
Issue
Management
Intellectual
Property
Ownership
Time Zones
Active Project and
Risk Management
Use of Effective
Processes
Accurate and Complete
Requirements
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
Knowledge and Skills
Transfer
www.processgroup.com
Version 1.2 PGv2-PBv3
6
Our Mission
Work collaboratively with customers worldwide to
improve their software engineering process capability.
Provide assessments, training, and consulting to meet
their specific needs, resulting in improved software
quality and delighted customers.
help@processgroup.com
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
7
Your Class Expectations
• Your job.
• Contracting problems / issues?
• Expectations for this class (e.g., 5/5 score?)
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
8
Some Definitions
Contract
Legally binding agreement of project terms
Vendor
Organization that contracts to build product
Request for Proposal
Pitney Bowes (PB) description of project
and invitation to vendors to bid
Statement of Work
PB description of work to be performed by
vendor
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
9
Technical Issues with Outside Vendors
 Many are at high process maturity levels.
 You still need to get the requirements right.
 You still need to actively manage the relationship with the
vendor.
 You still need to ensure that they follow their stated process.
 Is it effective?
 Do they expect the process to replace people?
 Do they expect staff to be interchangeable?
 Their process won’t compensate for weaknesses in yours.
 They should have data from previous projects.
 Ask to see size, schedule, effort, defect data.
 Request status, quality, and peer review data
for project tracking.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
10
Group Discussions:
Software Contracting Issues
List contracting-related problems, concerns, and questions
that your project has. For each problem, also state the
impact of the problem and identify root causes.
Example
Problem:
Multiple PB individuals are identified
as points of contact.
Impact:
Time is wasted as vendor attempts to get
questions answered.
Root cause: Unclear project roles and responsibilities.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
11
Selecting a Project for Software Contracting
 Well-understood, stable requirements
 Well-defined scope, limitations, and interfaces
 Not highly innovative
 Not subject to critical design or integration constraints
 Core competency
 Proprietary knowledge or technology needed
 PB needs to develop internal technical expertise
 Emergent or exploratory projects
 Extensive, ongoing customer involvement needed
 Very short projects (weeks)
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
12
Software Contracting Process
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
13
Software Contracting Process
 Based on industry standards




Capability Maturity Model for Software
Software Acquisition CMM
CMMI/SE-SW
IEEE Std 1062-1998, “Recommended Practice
for Software Acquisition”
 Incorporates industry best practices for software contracting,
requirements engineering, project management
 Defines roles, responsibilities, process steps, deliverables
 Includes many PB templates
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
14
Process Roles
PB Staff:
Vendor Staff:
Software Contracting Mentor
Project Manager
Systems Engineer
Legal Department
Enterprise Procurement
Technical Staff
Senior Management
Test Lead
Software Configuration Manager (SCM)
Software Quality Engineer (SQE)
Project Manager
Senior Management
Legal Department
Technical Staff
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
15
Process Entry Criteria
 Senior management has approved the software contracting
decision.
 An overall project manager has been assigned.
 A software contracting mentor has been informed.
 A team has been assembled to prepare the RFP.
 A schedule has been defined for developing requirements,
preparing the RFP and selecting a vendor.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
16
Process Overview
Define Product
Requirements
A1
REQUIREMENTS
CAPTURE WORKFLOW
Prepare
Statement
of Work
A2
Execute
Contract
A4
Solicit and
Select
Vendor
A3
Manage
Contracted
Project
A5
IF VENDOR NOT ALREADY
IDENTIFIED FOR PROJECT
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Close Out
Contracted
Project
A6
Version 1.2 PGv2-PBv3
17
Process Overview
Prepare
Statement
of Work
A2
Define
Proposal
Evaluation
Criteria
A3.1
Select
Vendor
A3.4
Prepare
RFP
Package
A3.2
Solicit
Vendor
Proposals
A3.3
Execute
Contract
A4
Solicit and Select Vendor (ACTIVITY NOT REQUIRED IF VENDOR KNOWN)
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
18
Process Exit Criteria
 The vendor has delivered all contracted products to PB.
 The deliverables from the vendor have satisfied all
acceptance criteria.
 A vendor performance review has been performed.
 Enterprise Procurement has sent a Letter of Closure to the
vendor.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
19
Define Product Requirements
Define Product
Requirements
Process Entry
Criteria
Purpose:
Outputs:
Key Roles:
Prepare Statement
of Work
To identify and document the product’s functional and
nonfunctional requirements. Typically performed as part
for the Requirements Capture Workflow in PUP

Release Definition Document (RDD)

Product Requirements Document (PRD)

Use Cases

Project Manager and Systems Engineer
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
20
Prepare Statement of Work
Prepare
Statement of
Work
Define
Product
Requirements
Execute
Contract
OR
Solicit and
Select Vendor
Purpose:
To describe the work the vendor will perform, when
the work is due, how PB will evaluate the work, and
the working relationship between PB and vendor.
Outputs:


Key Roles:



Statement of Work
Risk analysis
PB Project Manager
Software Contracting Mentor
Engineering Services
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
21
Contents of the Statement of Work
1
Introduction
1.1 Purpose
1.2 Applicable Documents
2
Overall Product Description
2.1 Product Description
2.2 Scope of Work to be Performed
3
Artifacts
3.1 [Artifact Name]
4
Project Planning
5
Project Control
5.1
5.2
5.3
5.4
5.5
5.6
6
Meetings, Reviews, and Conferences
Scope Change Control
Artifact Configuration Control
Build Process
Acceptance Testing
Contract Provision Tracking Matrix
Evaluation Criteria
Appendix A – Roles and Responsibilities
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
22
Risk Analysis and Risk Management
 Both PB and vendor should perform risk analysis.
 Have multiple team members identify risks.






PB Project Manager
Software Contracting Mentor
Systems Engineer
Testers
Marketing/Product Managers
Team Leads
 Use the PUP Risk List template
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
23
What Is Risk Management?
Risk management is the process of
identifying, addressing, and
controlling potential problems before
they threaten the success of a
software or system project.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
24
Areas of Risk
Dependencies
 Customer-furnished items or information
 Inter-component or inter-group dependencies
 Availability of trained, experienced people
 Reuse from one project to the next
 External standards being issued
Refer to Appendix B
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
25
Areas of Risk
Requirements Issues
The
Spec
 Lack of clear product vision
 Requirements are not prioritized
 New customers with uncertain needs
 New applications with uncertain requirements
 Lack of agreement on product requirements
 Rapidly changing requirements
 Ineffective requirements change management process
 Inadequate impact analysis of requirements changes
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
26
Areas of Risk
Management Issues
 Inadequate planning and task identification
 Inadequate visibility into actual project status
 Unclear project ownership and decision making
 Managers or customers with unrealistic expectations
 Ill-defined project roles and responsibilities
 Staff personality conflicts
 Poor communication
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
27
Areas of Risk
Lack of Knowledge
 Inadequate training
 Lack of experience with languages, methods, or tools
 Inadequate application domain experience
 New technologies or development methods
 Ineffective, poorly documented, or neglected processes
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
28
Areas of Risk
 Professional attitude, strong focus on quality
 Reluctance to say “no” or “I don’t understand”




want to save face
might be too agreeable and eager to please
might not ask for help or clarification
can lead to misinterpretations, unresolved issues, and
unachievable commitments
 need to read between the lines
 Might not accept responsibility for problems
 Likely to interpret requirements literally
 Might be cultural differences in UI designs
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
29
Risk Mitigation
Communication
 Time to learn how to work together.
 meet on-site initially to begin building a relationship
 keep some staff at the vendor site if possible
 build long-term vendor relationships
 Times when both parties are available.




plan for national holidays, work schedules, vacations.
rotate the inconvenience for meetings and reviews
log questions and issues for overnight handling
schedule nightly handoffs carefully
 Common tools.
 change control, version control, issue tracking
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
30
Risk Mitigation
 Date formats vary, so use the name of the month.
 Watch out for English/metric system conversions.
 Learn about passport and visa issues for vendor staff.
 Going through Customs can delay shipping by weeks.
 learn Customs rules
 expect to pay high duties
 shipping by cargo can be faster than by courier
 Use “non-employee” to identify co-ops,
trainees, and apprentices.
 Check into staff turnover rates.
 Respect U.S. export control laws.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
31
An Approach for Risk Management
Identify
Track
• plan group session
• participants identify risks
• hold group session
Analyze
• individuals rate probability
and impact
• collate into single risk list
• identify top 10 risks
• track status
regularly
• take corrective
actions if needed
Control
Plan
• determine approaches
• assign responsibility
• implement mitigation approaches
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
32
Documenting Risks
#
Risk Description
P I
E
Impact Description
Mitigation Strategy and/or
Responsibility
Contingency Plan
Date
Submitted
Date
Resolved
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
P = probability of risk taking place (1-3)
I = impact if risk does happen (1-3)
E = total risk exposure from this risk item, = P * I




Quantify relative impact of each risk
Identify mitigation approaches for each risk
Assign responsibility and due dates
Record risks in the risk list
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
33
Exercise: Risk List
 List some risk categories that might threaten the success
of your contracted project. Select from the lists on the
previous slides.
 Identify several risks from each of your categories.
 Develop actions for the top 2 risks
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
34
Solicit and Select Vendor
 Activity only required if the vendor is not already known for
the project
 Consists of 4 sub-activities




Define Proposal Evaluation Criteria
Prepare RFP Package
Solicit Vendor Proposals
Select Vendor
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
35
Define Proposal Evaluation Criteria
Define Proposal
Evaluation
Criteria
Prepare
Statement of
Work
Prepare
Request for
Proposal
Purpose:
To determine how PB will evaluate vendor
proposals to select the best one.
Outputs:

Proposal evaluation criteria using template
Key Roles:



Software Contracting Mentor
PB Project Manager
Systems Engineer
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
36
Proposal Evaluation Template
Criteria
Architecture
Interfaces to External Functions
Proposed Hardware and Third Party Software
Proposed Middleware
Software Development Process
Project Planning
Change Management
Configuration Management
Design, Code and Test Review Process
Defect Tracking
Unit Test Plan and Process
System Test Procedures
Requirements Understanding
Acceptance Testing Methodology
Oversight Process
System Support
Maintenance Updates
Training
Post Deployment Support
Pricing
Vendor Experience
Release Processes
Transition Plan
TOTAL
RATED CRITERIA
Vendor A
Vendor B
Vendor C
Vendor D
Vendor E
Weight
Raw Rated
Raw Rated
Raw Rated
Raw Rated
Raw Rated
Score Score Score Score Score Score Score Score Score Score
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Refer to Proposal Evaluation
Template
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
37
Optional Exercise: Proposal Evaluation Criteria
 Select your own proposal evaluation criteria, starting with
the list given.
 Change or add individual criteria.
 Assign weights to the criteria.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
38
Prepare Request for Proposal
Prepare RFP
Package
Define Proposal
Evaluation
Criteria
Solicit Vendor
Proposals
Purpose:
To prepare an invitation to prospective vendors
to submit bids for the project.
Outputs:

Request for Proposal Package
Key Roles:

Software Contracting Mentor
PB Legal department
PB Project Manager
Enterprise Procurement



[Bud Porter-Roth, Request for Proposal, Addison-Wesley, 2002]
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
39
Request for Proposal Template
1
OVERVIEW
1.1
1.2
1.3
2
2.16
2.17
2.18
2.19
2.20
2.21
2.22
2.23
2.24
2.25
2.26
2.27
Purpose
Document Organization
Definitions
ADMINISTRATIVE INFORMATION
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
2.15
Proposal Due Date and Time Table
Issuing Office Contact Information
Oral presentation
Clarifications, Addenda and
Interpretations
Free and Open Competition
Vendor Representation
Mandatory Requirements
Reservation of Pitney Bowes
Rights
News Releases
Vendor Qualification
Changes in RFP
RFP Text Availability
Return Date
Technical Manuals
Alternate Responses
3
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
Response Duration
Product Support
Demonstration of Proposed Items
System Performance
Pricing Commitment
Discounts and Allowances
Direct Support
Tax Provisions
Vendor Evaluation
Gratuities
Contracting and Notification
Vendor Incurred Costs
RESPONSE FORMAT AND CONTENT
3.1
3.2
3.3
3.4
3.5
3.6
www.processgroup.com
Response Submission
Response Authority
General Appearance
Response Organization
Economy of Responses
Additional Recommendations
Version 1.2 PGv2-PBv3
40
Solicit Vendor Proposals
Prepare RFP
Package
Purpose:
Outputs:
Key Roles:
Solicit Vendor
Proposals
Select
Vendor
To send the RFP Package to potential vendors
and invite them to prepare a response with a
proposal that PB will evaluate.
 Nondisclosure agreements
 Proposals from vendors
 Addendum of clarifications to RFP



Enterprise Procurement
Project Manager
Software Contracting Mentor
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
41
Handling Communications With Vendors
 Send RFP Package to contact person on vendor
information sheet.
 Ask vendors to indicate if they intend to bid.
 identify single point of contact at vendor
 Vendor submits questions in writing.
 identify PB single point of contact (Enterprise Procurement)
 share all questions and answers with all
vendors who received RFP Package
 Vendor submits hardcopy proposal.
 specify final submission date
 identify proposal recipient
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
42
Select Vendor
Select
Vendor
Solicit Vendor
Proposals
Execute
Contract
Purpose:
To choose the most appropriate vendor to develop
the contracted software.
Outputs:



Accepted vendor proposal
Issues requiring vendor response
Proposal Evaluation, Due Diligence Investigation
Results, Award Letters, Rejection Letters
Key Roles:



Software Contracting Mentor
PB Project Manager
Enterprise Procurement
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
43
Guidance for Selecting Vendors
Management
Issues
Legal
Issues
Technical
Issues
Financial
Issues
Refer to Appendix C for further information
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
44
Evaluating Proposals
 Make sure every proposal is complete and in good form.
 could invite vendor to make modifications
 Assess proposals using Proposal Evaluation Template.
 use subteams for different categories
 understand the basis for vendor’s estimates
 Contact references that vendor provided.
 Arrange for site visit if possible.
 Select primary and alternate vendor.
 identify issues and questions for vendor
 confirm that vendor still wants a contract
 Notify rejected vendors.
 Complete Proposal Evaluation Template.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
45
Completed Evaluation Template
Criteria
Architecture
Interfaces to External Functions
Proposed Hardware and Third Party Software
Proposed Middleware
Software Development Process
Project Planning
Change Management
Configuration Management
Design, Code and Test Review Process
Defect Tracking
Unit Test Plan and Process
System Test Procedures
Requirements Understanding
Acceptance Testing Methodology
Oversight Process
System Support
Maintenance Updates
Training
Post Deployment Support
Pricing
Vendor Experience
Release Processes
Transition Plan
TOTAL
RATED CRITERIA
Vendor A
Vendor B
Vendor C
Vendor D
Vendor E
Weight
Raw Rated
Raw Rated
Raw Rated
Raw Rated
Raw Rated
Score Score Score Score Score Score Score Score Score Score
50%
7
3.5
0
0
0
0
100%
6
6
0
0
0
0
100%
5
5
0
0
0
0
50%
6
3
0
0
0
0
100%
7
7
0
0
0
0
100%
4
4
0
0
0
0
100%
6
6
0
0
0
0
100%
4
4
0
0
0
0
100%
4
4
0
0
0
0
50%
8
4
0
0
0
0
100%
7
7
0
0
0
0
100%
5
5
0
0
0
0
100%
7
7
0
0
0
0
100%
8
8
0
0
0
0
100%
8
8
0
0
0
0
50%
9
4.5
0
0
0
0
75%
6
4.5
0
0
0
0
100%
6
6
0
0
0
0
100%
7
7
0
0
0
0
100%
8
8
0
0
0
0
75%
8
6
0
0
0
0
100%
7
7
0
0
0
0
100%
10
10
0
0
0
0
0
0
0
0
0
134.5
0
0
0
0
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
46
Communicating With Your Vendor
 Establish communication plans with vendor.
 Address frequency and content of:
 regular teleconference meetings
 periodic status reports
 technical and management reviews
 Define conditions for senior management review.
 Agree on how to document risks, issues, decisions.
 Define communication methods.
 phone, e-mail, videoconference, face-to-face
 Web-based groupware tools
 plan for the additional costs
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
47
Software Development Plan Reality Check
 Do all the needed resources really exist?
 Does the plan address the agreed-upon scope?
 Are all expected deliverables in the plan?
 Are the estimates plausible at the 50% confidence level?
 Are contingency buffers included for growth and risks?
 Are any tasks missing?
 Are roles and responsibilities clear?
 Are there early milestones?
 Is the critical path clear?
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
48
Execute Contract
Execute
Contract
Select
Vendor
Purpose:
Manage
Contracted
Project
To document legal commitments PB and vendor are making to
each other.
 In some cases, a Master Services Agreement will be in place (MSA)
and the Statement of Work will form the contract.
 In other cases, both a Statement of Work (SOW) and separate
contract are required.
Outputs:


Executed Contract
Contract Provision Tracking Matrix
Key Roles:





PB legal department
Vendor legal department
PB Project Manager
Enterprise Procurement
Software Contracting Mentor
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
49
Contents of a Contract
 Statement of work and technical requirements
 Terms, conditions, and payment schedule
 License and confidentiality agreements
 Dependencies between vendor and PB
 Work products the vendor will deliver
 Milestones for formal management status reviews
 Performance monitoring and evaluation procedures
 Performance bonuses and penalties
 Conditions and procedures for changing the contract
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
50
Legal Aspects of Contracting
Pitney Bowes Legal Department
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
51
Negotiating Open Issues
 Think win-win.
 Consider long-term collaboration goals.
 Ensure that the point under dispute is mutually understood.
 Practice principled negotiation.
 Focus on interests, not positions.
 understand the underlying interests
 make sure you’re addressing the real issue
 deal with reality, not fantasy
 Separate the people from the problem.
 Invent options for mutual gain.
 Base discussions on objective data.
[Roger Fisher, et al., Getting to Yes: Negotiating Agreement Without Giving In, Penguin USA, 1991]
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
52
Contract Bonuses and Penalties
 Performance incentives
 monetary bonus for exceeding schedule and
quality requirements
 equity stake or shared IP ownership
 Performance penalties
 X% per month later than committed
 Risks of penalties and incentives
 don’t reward speed at the expense of quality
 penalties won’t motivate vendor who is already
losing money
 bonuses for time-and-materials contracts can
motivate excessive quality practices
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
53
Sample Performance Bonuses and Penalties
Contract: Supplier-tested code available: 12 months
Defects discovered in system test: <2.0/KLOC
Defects discovered after delivery: <0.2/KLOC
Bonus:
Penalty:
5%:
10%:
20%:
10%:
Supplier-tested code available 1 month early
Defects discovered in system test: 1.0-1.5/KLOC
Defects discovered in system test: 0.5-1.0/KLOC
Defects discovered after delivery: <0.1/KLOC
5%: For each month supplier-tested code is late
5%: For each additional 0.5 defects/KLOC discovered in
system test over 2.0 defects/KLOC
5%: For each additional 0.2 defects/KLOC discovered
after delivery to customers over 0.2 defects/KLOC
[from Neal Whitten, Managing Software Development Projects: Formula for Success, 1995]
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
54
Contingency Plans for Nonperforming Vendor
 Develop objective criteria for evaluating vendor progress.
 Deal with problems proactively and promptly.
 Attempt to resolve problems through negotiation first.
 follow your dispute-resolution process
 escalate if necessary
 Plan what actions you’ll take if you must terminate contract.




bring the work in-house
switch to a second vendor
re-scope the project
cancel or postpone the project
 Consider a second source for some work.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
55
Manage Contracted Project
Execute
Contract
Purpose:
Outputs:
Key Roles:
Manage
Contracted
Project
Close Out
Contracted
Project
To track actual progress against plans, resolve issues with
vendor, and manage change.
 Project status reports
 Review meeting summary reports
 Action items from status reports
 Accepted deliverables
 Updated Contract Provision Tracking Matrix
 Software Contracting Mentor
 Vendor and PB Project Managers
 Vendor and PB Senior Management
 Enterprise Procurement
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
56
Exercise: Project Management Problems
List several problems related to project planning or tracking you
have encountered. For each, describe the problem, its
impacts, and any root causes. Pick 1-2 problems and develop
improvement actions.
Example
Problem:
Vendor replaces key team member.
Impact:
Critical knowledge, skills, and time are lost.
Root cause:
You didn’t have management commitment to
keep key individuals on project.
Actions:
Train PB team members, invoke contract
provisions, replan project section for when
resource is available.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
57
Tracking Project Status
 Vendor project manager provides weekly or biweekly status report to PB
Project Manager.
 Software Contracting Mentor updates Contract Provision Tracking
Matrix
 Carefully review the status reports.
 Consider use of Team Services Project Websites, PUP Project Status
Assessment template
 Watch out for:






late, missing, or incomplete reports
unexplained cost, schedule, or effort deviations
reports that don’t jibe with reality
known risks that don’t appear
current issues being treated as risks
overdue action items, issues, or
dependencies by vendor or PB
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
58
A Possible Status Report Template
 Management summary
 Project performance assessment
 can use color () indicators
 include metrics summary to date
 examples: schedule, budget, resources, requirements status,
change management, staffing, training, technical infrastructure
 Major milestone table
 original plan, current plan, actual completion dates
 Progress against, and deviations from, plan
 Current risk list
 Current issues and action items
 status, who is responsible, target date for resolution
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
59
Some Metrics for Tracking Progress
 Size
 lines of code, function points, classes, size of executables
 Time
 planned and actual duration between milestones
 Cost
 planned and actual expenditures to date
 Defects
 number of defects found, open, and closed
 defect origin and classification
 Status
 percent of requirements implemented and verified
 satisfaction of performance or other quality goals
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
60
Monitoring Risks
 Assign ownership of each risk to an individual.
 Ensure that mitigation actions are implemented.
 Maintain a “Top 10” risk list.
 conduct periodic senior management review
 assess effectiveness of mitigation approaches
 watch for risks that persist on the Top 10 list
 Look for new risks.
10 tons
uh-oh...
 Retire obsolete risks.
 If risks materialize, treat them as issues.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
61
Managing Issues
 Maintain an issue log.
 ID, date identified, description, who’s responsible, target date
 track issues to closure
 resolve PB-side issues quickly
 Define a corrective action process.
 steps to take if issues aren’t resolved
 need a clear chain of command and scope of authority
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
62
Managing Changes
1. The Pitney Bowes Project Manager creates a scope change request
by completing the first page of the Scope Change Impact Analysis
Template.
2. The vendor provides an impact analysis by completing the Scope
Change Impact Analysis.
3. The Pitney Bowes Project Manager assembles a review team made
up of personnel appropriate for the changes being proposed.
4. Once the review team has approved the scope change request, the
Pitney Bowes Project Manager informs the vendor of the decision
by faxing the approved Scope Change Impact Analysis.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
63
Warning Signs of Trouble
 Uncompleted action items or failed dependencies
 Unqualified vendor or PB staff; staff turnover
 Missing, incomplete, or incorrect deliverables
 Processes that aren’t working well or are bypassed
 Unimplemented or unrequested functionality
 Reviews that aren’t performed
 Slow decision-making
 Missed early milestones
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
64
Deliverable Acceptance Criteria
 Pass means no major problems encountered.
 Fail means major problem encountered, such as:








installation or integration failure
GPF or similar abnormal termination
UI or control functions that don’t work correctly
violations of UI or interface standards, constraints, or
business rules
failure to achieve performance or other quality attribute goals
failure to build correctly in PB’s environment
unimplemented requirements
supporting deliverables or documentation missing
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
65
Deliverable Acceptance Procedures
 Define procedures to follow for evaluation.
 user acceptance test
 peer review
 standards check
 Determine who will accept and evaluate delivered products.
 Define how to report defects to vendor.
 defect origin might dictate who pays for correction
 Acceptance testing doesn’t replace a full system test!
 focus on high-probability usage scenarios
 check major exception conditions
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
66
Exercise: Acceptance Criteria
 Define several appropriate acceptance criteria for your
project.
 What documents to accept, acceptance criteria + how to
evaluate?
 What products to accept, acceptance criteria + how to
evaluate?
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
67
Skills and Knowledge Transfer
 Rely on multiple information exchange channels.
 Have a PB employee work alongside a criticalskilled vendor employee late in the project
 documentation
 design models
 peer reviews
 pair programming
 telephone coaching
 collaborative problem-solving
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
68
Manage Contracted Project
Refer to Appendices D, E and F for
further information
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
69
Close Out Contracted Project
Manage
Contracted
Project
Close Out
Contracted Project
Purpose:
To collect data and insights from completed
projects and record lessons learned for the
future.
Outputs:

Key Roles:

Vendor performance review
Letter of Closure to vendor



PB Project Manager
Software Contracting Mentor
Enterprise Procurement
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
70
Retrospectives: What and Why
 What’s a “retrospective”?
 a review conducted at the end of a project
or phase to consider how it went and identify
ways to perform future work more effectively
 also called post-project review, postmortem,
debriefing, after-action report
 Look for:




what went well? (repeat it!)
what didn’t go so well? (change it!)
what happened that surprised you? (manage risks!)
what still puzzles us? (figure it out!)
 Create action plans to address improvement items.
[Norman L. Kerth, Project Retrospectives, Dorset House, 2001]
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
71
Summary:
Software Contracting Traps to Avoid
 Poor requirements specification and scope management
 Selecting an inappropriate vendor
 Taking a fire-and-forget approach to the contract
 Gaining inadequate insight into the technical products
 Failing to respond quickly to vendor questions and needs
 Ignoring early warning signs of trouble
 Unsubstantiated assumptions
 Questions of intellectual property ownership
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
72
Software Contracting
Process and Guidance
NO
SURPRISES!
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
73
Contracting References - 1
Carnegie Mellon University/Software Engineering Institute. The Capability Maturity Model:
Guidelines for Improving the Software Process. Reading, Mass.: Addison-Wesley, 1995.
Carnegie Mellon University/Software Engineering Institute. “Software Acquisition Capability
Maturity Model (SA-CMM) Version 1.03. Technical Report CMU/SEI-2002-TR-010, 2002.
Creating and Managing the Outsourcing Relationship. Arlington, MA: Cutter Consortium,
2001.
Hooks, Ivy F., and Kristin A. Farry. Customer-Centered Products: Creating Successful
Products Through Smart Requirements Management, New York: AMACOM, 2001.
IEEE Std 1062-1998, “IEEE Recommended Practice for Software Acquisition.” IEEE
Standards: Software Engineering, 1999 Edition, Volume One: Customer and Terminology
Standards. New York: The Institute of Electrical and Electronics Engineers, 1999.
IEEE Std 1058-1998, “IEEE Standard for Software Project Management Plans.” IEEE
Standards: Software Engineering, 1999 Edition, Volume Two: Process Standards. New York:
The Institute of Electrical and Electronics Engineers, 1999.
Kerth, Norman L. Project Retrospectives: A Handbook for Team Reviews. New York: Dorset
House Publishing, 2001.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
74
Contracting References - 2
McConnell, Steve. Rapid Development: Taming Wild Software Schedules. Redmond, Wash.:
Microsoft Press, 1996.
McConnell, Steve. Software Project Survival Guide. Redmond, Wash.: Microsoft Press, 1998.
Porter-Roth, Bud. Request for Proposal: A Guide to Effective RFP Development. Boston,
Mass.: Addison-Wesley, 2002.
Project Management Institute. A Guide to the Project Management Body of Knowledge.
Newtown Square, Penn.: Project Management Institute, 2000.
Whitten, Neal. Managing Software Development Projects: Formula for Success, 2nd Ed. New
York: John Wiley & Sons, 1995.
Wiegers, Karl E. Software Requirements, 2nd Ed. Redmond, Wash.: Microsoft Press, 2003.
Wiegers, Karl. “See You In Court.” Software Development, vol. 11, no. 1 (January 2003), pp.
36-40.
Wiegers, Karl E. Peer Reviews in Software: A Practical Guide. Boston, Mass.: AddisonWesley, 2002.
Wysocki, Robert K., Robert Beck Jr., and David B. Crane. Effective Project Management, 2nd
Ed. New York: Wiley, 2000.
Copyright © 2003 by Karl E. Wiegers. Modifications & additions Copyright © 2004 The Process Group.
www.processgroup.com
Version 1.2 PGv2-PBv3
75
Download