+ All Categories
Home > Documents > IBM Software Group Proposals and Statements of Work Gordon Lee.

IBM Software Group Proposals and Statements of Work Gordon Lee.

Date post: 27-Dec-2015
Category:
Upload: grace-davis
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
40
IBM Software Group Proposals and Statements of Work Gordon Lee
Transcript

IBM Software Group

Proposals and Statements of Work

Gordon Lee

IBM Software Group | Lotus software

Agenda

Why learn how to do proposals?ƒ In the workplaceƒ For this course

Exercise 1ƒ 2 teams, build your first Statement of Workƒ Review

Exercise 2ƒ 2 teams, build your second Statement of Workƒ Review

Lectureƒ Business Integration Projectsƒ Different components of a Statement of Work

Exercise 3 (optional)ƒ 2 teams, build your third Statement of Work

Acknowledgements: Patricia Oberndorf, Carnegie Melon Software Engineering Institute

IBM Software Group | Lotus software

Why is this lecture included in the curriculum?

Real world contentƒ The Apprentice – 3rd season: Booksmart v Streetsmartƒ “What you learn in school” vs “what it is like in the real world”ƒ “Theory” vs “practical”ƒ Don’t confuse “sell” with “install”

Business Integration – special considerationsƒ Preparation for the real worldƒ Avoid making the mistakes that others have experienced

Course Workshopsƒ You will experience some of the practical integration challenges

IBM Software Group | Lotus software

Requirements gathering and Proposal writing

How do companies do business with each other?ƒ Company A needs to have some work doneƒ Company A issues a RFP – request for proposals. This action initiates an open competition. It is

important that they do as much as possible to eliminate any appearance or possibility of an “inside job”.

ƒ Companies B, C, D, and E want to compete for the job. Each company will prepare proposals, and will submit these proposals to Company A by the due date

ƒ Company A reviews the various proposals, and selects winner, Company C, sayƒ Company C is invited to submit a Statement of Work (contract)ƒ Company C prepares the SOW, including scope, price, and presents it to Company Aƒ Negotiation occursƒ Signature on both sides – work starts

For this courseƒ I will give you the complete format of a SOW, with all the sections describedƒ It will help structure your thinking of how to approach a business integration problemƒ You may choose to use this format for project reports/assignments

Have some funƒ Learn from each otherƒ Form two teams, come to front of the class

IBM Software Group | Lotus software

Exercise 1 – Write a Statement of Work

Learning Situationƒ A metaphor which uses a different context will help bring out key learning points

Team 1ƒ You are parents of a 2 year old boy, looking for a babysitterƒ Prepare a SOW that you want the babysitter to sign

Team 2ƒ You are a babysitter, looking for workƒ Prepare a SOW that you want the parents to sign

GO!ƒ You have 20 minutes

IBM Software Group | Lotus software

Exercise 1 – Review

Team 1ƒ Present SOWƒ Team 2: Critique Team 1’s effort

Team 2ƒ Present SOWƒ Team 1: Critique Team 2’s effort

Discussionƒ Why is SOW important?ƒ What should it cover?

IBM Software Group | Lotus software

Exercise 2 – Write a Statement of Work

Same teamsƒ Switch roles

Team 2ƒ You are parents of a 2 year old boy, looking for a babysitterƒ Prepare a SOW that you want the babysitter to sign

Team 1ƒ You are a babysitter, looking for workƒ Prepare a SOW that you want the parents to sign

GO!ƒ You have 20 minutes

IBM Software Group | Lotus software

Exercise 2 – Review

Team 1ƒ Present SOWƒ Team 2: Critique Team 1’s effort

Team 2ƒ Present SOWƒ Team 1: Critique Team 2’s effort

Discussionƒ Did we get better?ƒ Does your role (buyer vs seller) influence what you look for in a SOW?

IBM Software Group | Lotus software

Today’s Environment – What are SW Projects really like?

Booksmartƒ In school, students learn how to take projects from start to finish in a clean room

(sterile) environmentƒ Projects follow the traditional project planning processƒ Problem statements are often contrived or artificial to ensure learning points are

achievedƒ Project assignments are known to be do-able from a technical perspectiveƒ Time needed to finish assignment is also pre-determined and known

Streetsmartƒ Nothing is as simple as it should be, eg. Gathering requirements, testingƒ Murphy’s law around every cornerƒ Many project managers are naïve about Business Integrationƒ You don’t know what you don’t knowƒ What you do know isn’t always so

IBM Software Group | Lotus software

Today’s Environment – What are SW Projects really like?

Budgetsƒ Companies are spending more and more of their IT budget on maintenance of

existing systemsƒThere is never enough money to do everything that is neededƒPriorities and tradeoffs

ƒ Fresh projects are rarely startedƒExisting code is not thrown outƒWe never start with a “clean slate”

ƒ Use what we have vs create newƒThis includes older versions of code that have not been upgradedƒEspecially if the existing systems still work

Business Integrationƒ The world is moving towards increasingly complex systemsƒ Many of these systems are actually be systems of systems

ƒmultiple pre-existing systems networked togetherƒ The frequency with which off-the-shelf items are being used is rising

ƒBuy vs Build

IBM Software Group | Lotus software

What Makes Integration Challenging?

• built-in assumptions of end-user processes that may not match yours

• licensing, data rights, warranties

• Frequent, continuous change of Vendor products and marketplace

• Vendor products driven by marketplace, not your system context

VendorProducts

Vendors

Integrated System

???

IBM Software Group | Lotus software

What Makes Integration Challenging?

VendorProducts

Vendors

Integrated System

???

• varying architectural paradigms across system components

• dependencies among system components

• limited control of frequency or content of Vendor releases

• limited visibility into Vendor product internals and behavior

IBM Software Group | Lotus software

Thoughts

How do you create systems from a variety of pre-existing parts that weren’t built to work together and that you don’t own and/or are not free to change arbitrarily?

Interoperability is the fundamental problem Scope is far greater than simply interoperability of data Scope includes degrees of coupling, ownership Scope includes interoperability at the programmatic (and other) levels

We can never anticipate fully the boundaries within which a given system will be expected to operate

ƒ There will always be new things to integrate into the systemƒ Integrating systems in a network can affect all other systems in the network in

unintended ways

IBM Software Group | Lotus software

An Instance of the Problem

System “C”

We know quite a lot about constructing systems from components (over which we may have little or no control).

We know very little about constructing an interoperable network of systems…the key distinction being that the network is unbounded (or very loosely bounded) and has no single controlling authority.

We know something about composing systems of systems from individual systems (over which we may have little or no control).

System “B”

System “A”

Network “X”

Unplanned, unexpected, emergent behavior here…

IBM Software Group | Lotus software

Automobile Microprocessors

… and thisdoesn’t include things like on-

board entertainment and navigation

systems

IBM Software Group | Lotus software

Digital Cameras

There is code (logic) reused in many cameras, related to lighting/exposure

This is in place to prevent users from taking “bad pictures”

How many times have you wanted to “just take the picture” and had the camera prevent you from doing so?

IBM Software Group | Lotus software

Airbus

From: http://www.aboutairline.com/safety_eng.htm

IBM Software Group | Lotus software

Diet Coke + Mentos

http://eepybird.com/exp214.html

IBM Software Group | Lotus software

Exercise 3

Your examplesƒ Unintended interactions between products/systemsƒ Eg. Add a USB external hard drive and your webcam stops workingƒ Eg. Install a new game, and your internet connection is brokenƒ Eg. Take an Aspirin, lowers risk of heart attack or stroke

IBM Software Group | Lotus software

Conclusions

We are all facing the challenges of integration and interoperability Of components – subsystems – whole systems

That we do not control Installing one software product may require JVM V1.2.3 Another software component requires JVM 1.2.2, patch level 1 The JVMs should be backward/forward compatible, but aren’t Product support for each component won’t look at your problems unless the

full stack (which they have tested) is present Every vendor is pointing their finger at each other The number of possible combinations of products, release versions, patch

levels, etc. is uncountableDespite the potential problems, smart reuse and componentization is absolutely the way of the future

Companies can’t afford to build from scratch each time The ability to build systems by connecting existing components will be a

competitive differentiator Those students who are able to understand and master this skill will be in

great demand

IBM Software Group | Lotus software

Components of a SOW

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

1. Project Description

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

1. Project Description

Why do we need this section?ƒ People who have management and financial responsibility to sign this contract are

often further away from the project details ƒ Should be written in the language of business, appropriate to the industry and

parties involvedƒ Use appropriate level of detail (relative to size of deal, complexity, expectation of

the client)ƒ It will also be reviewed / critiqued by technical people, so a reasonable amount of

technical content (eg. Architectural drawings, component description, interface standards, etc.) should be included

Requirementsƒ Client will always want everything (wish list)ƒ Up to the vendor to draw out what is Negotiable v non-negotiableƒ Prioritizing and trading-off the negotiablesƒ Assigning costs to each requirement is often a good way of helping the client

prioritize

IBM Software Group | Lotus software

2. Our Responsibilities

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Schedule

ƒTestingƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

2. Our Responsibilities

Why do we need this section?ƒ When a project goes well, everyone fights for creditƒ When a project fails, blame is assigned

Assumptionsƒ You can’t know everything about all componentsƒ Your SOW will be overwhelming if every detail is documented

Dependenciesƒ How can we verify supplier assertions?ƒ If we know the right properties of all the constituents, how do we use that

information? Is that enough?Questions/challenges

ƒ Predicting properties of composite systemsƒEven if you know all about the constituents, how do you know how the aggregation will behave?

ƒ Behaviour of unbounded systemsƒGetting the right balance of centrality and independenceƒEg. When you have a system of autonomous constituents, how does one communicate failure so the others can react appropriately?

IBM Software Group | Lotus software

2. Our Responsibilities

Examples of Responsibilitiesƒ We will validate your requirementsƒ We will design and test the solutionƒ We will deploy to end usersƒ We will set up production environmentƒ We will provide documentationƒ We will do training of your staff

Examples of Assumptionsƒ How many users will be supportedƒ What hardware is supportedƒ What operating systems are in the user communityƒ Coexistence with other software, systems

IBM Software Group | Lotus software

3. Your Responsibilities

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

3. Your Responsibilities

Why do we need this section?ƒ When a project goes well, everyone fights for creditƒ When a project fails, blame is assigned

Assumptionsƒ Who buys the hardware, who buys the software?ƒ Who owns the hardware, who owns the software after the project is complete?

Dependenciesƒ Who is responsible for setting up the network, and what response time?

Examplesƒ You will provide a project managerƒ Your staff will be available to make decisions and clarifyƒ You provide office space, facilities, and machinesƒ You provide the necessary documentation and clerical support for photocopyingƒ You will provide access to data for testingƒ You will give us access to your lab

IBM Software Group | Lotus software

4. Estimated Schedule

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

4. Estimated Schedule

Why do we need this section?ƒ Timeline – associated with deliverables, milestonesƒ Resources – staffing, hiring

Examplesƒ Phase 0 – Workshop and Interviewsƒ Phase 1 – Solution Design and Testingƒ Phase 2 – Solution Implementationƒ Phase 3 – End User Deploymentƒ Phase 4 – Deployment to production

What to includeƒ Schedule (eg. Microsoft Project), with critical path clearly identifiedƒ Dependencies you have on the clientƒ Deliverables that you must deliver to client

Assumptionsƒ Testing, testing, testingƒ Testing, testing, testingƒ Testing, testing, testing

IBM Software Group | Lotus software

5. Completion Criteria

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

5. Completion Criteria

Why do we need this section?ƒ Both sides need to agree, beforehand, how we know a project is “finished”ƒ Protect both sides

Examplesƒ Number of hours spentƒ Calendar dateƒ Delivery of functional systemƒ Delivery of reportƒ Completion of function testƒ Completion of performance standard

IBM Software Group | Lotus software

6. Charges

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

6. Charges

Why do we need this section?ƒ The almighty dollar

Examplesƒ Upon project startƒ At major checkpoints, deliverablesƒ Penalty clauses for missed milestonesƒ Different rates for different skill levelsƒ Include software and hardware, travel costsƒ Minimum charges (hours)ƒ How to change ratesƒ Accounts Payable terms

IBM Software Group | Lotus software

7. Acceptance Process

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

7. Acceptance Process

Why do we need this section?ƒ When the solution is delivered by vendor, project is not finished until accepted by

clientƒ Payment is often tied to customer acceptanceƒ Need to describe, in advance, what acceptance criteria, acceptance tests will be

used to evaluateExamples

ƒ Reasonable timelines for acceptance (within 3 days of deliverable)ƒ How to rectify, correct, resubmit

IBM Software Group | Lotus software

8. Ending Project Early

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

8. Ending Project Early

Why do we need this section?ƒ An “out” for both sides

Why?ƒ Sometimes things just don’t work outƒ Consultants unable to deliverƒ Changing environment

IBM Software Group | Lotus software

9. Project Change Request procedure

Sectionsƒ Project Descriptionƒ Our Responsibilities

ƒAssumptionsƒ Your Responsibilities

ƒAssumptionsƒ Estimated Scheduleƒ Completion Criteriaƒ Chargesƒ Acceptance Processƒ Ending Project Earlyƒ Project Change Request procedure

IBM Software Group | Lotus software

9. Project Change Request

Why do we need this section?ƒ Projects are so complex that not all requirements or assumptions can be

anticipated at the start of the projectƒ Used primarily by project managers to control scope creepƒ Used by clients as a vehicle to communicate new requirementsƒ Investigated and sized, costed out, and mutually agreed to


Recommended