managing innovation projects with scrum in a cmmi environmentagiles2008.agiles.org/common/pdfs/intel...

50
Managing Innovation Projects with Scrum In a CMMI * Environment Daniel Battistelli, Process Engineer [email protected] Pablo Passera, Software Engineer [email protected] Agiles 2008 – October 08 * Other names and brands may be claimed as the property of others.

Upload: others

Post on 18-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Managing Innovation Projects with Scrum

In a CMMI* EnvironmentDaniel Battistelli, Process Engineer

[email protected]

Pablo Passera, Software [email protected]

Agiles 2008 – October 08* Other names and brands may be claimed as the property of others.

Page 2: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 2

Page 3: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Tentative Agenda (to add to the other)

• Introduction (6 slides)• Projects we have (1 slide)• Innovation Process (5 slides)

– Phases– Gates– Deliverables– Exit Strategies

• SCRUM usage (5+ slides) [use http://asdc.ic.intel.com/bin/view/Main/ScrumASDC ]• Reasons why we have chosen SCRUM (1 slide)• How we are applying/using SCRUM? (1+ slides)

– Non traditional deliverables, Tailoring, Auditing• SCRUM Tool framework (2 slides)• CMMI scampi a (1 slide)

• Conclusions (2 slides)• Next Steps• Review and final remarks• QA

3

Page 4: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 4

Page 5: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

About Intel and Software

• World leader in silicon based advanced technology innovation

with almost 40 years of leadership in computer science and

communications

• Incorporated: 1968

• Employees: 90,000+

• Sales : $35.3 billions (2006)

• Net income : $5 billions (2006)

• Products and services: 450+

• Offices and Installations worldwide: 294

10/28/2008 5

Page 6: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Software @ Intel• 50+ R&D centers in 20+ countries• 10.000+ software engineers

WesternUnited StatesArizonaFolsom, CASanta Clara, CA Southern CAColoradoNew MexicoPortland, ORUtahWashington

Eastern / Midwestern United StatesIllinoisMassachusettsNew HampshireTexasVirginia

Latin AmericaArgentina

Israel /Western EuropeKoln, GermanyMunich, GermanyUlm, GermanyIsraelStockholm, SwedenWinnersh, UK

RussiaMoscowNizhniy NovgorodNovosibirskSarovSt. Petersburg

ChinaBeijingHong KongShanghaiShenzhenXi’An Zizhu

AsiaSydney, AustraliaBangalore, IndiaMumbai, IndiaJapan

10/28/2008 6

Page 7: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Argentina Software Development Center (ASDC)

• Mission

– Software Center of Excellence for Intel in the region; delivering quality products, enhancing Intel’s offerings, and enabling the LAR ecosystem

• ASDC is part of Intel's Software and Solutions Group (SSG)

– SSG works to increase the value of Intel's products by enhancing all levels of software executing on IA platforms

• Initiated activities in May 2006

• We work together with engineering groups all over the world

• Create new products is part of our job

• We keep growing

– The center anticipates growing to 400+ engineers by 2011

10/28/2008 7

Page 8: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Our people’s profile

Maturity

• A healthy mix of seasoned professionals and recent college graduates, averaging 7 years of experience in software development

Academy

•7 PhDs and 26 Masters• University teachers

Currently, 90+ employees ramping up towards 400+ in five years

From all over the place

• England, Italy, Germany, Spain, UK, Kazakhstan, USA

Leadership

• Papers published in national and international forums• Lectures and talks at congresses, seminars• Patents submitted

8

Page 9: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

ASDC Engineering Groups

PPQSProcess and Product

Quality Services

ASPIArgentina Software

Pathfinding and Innovation

SwSSSoftware

& Services Solutions

ASDCSoftware

Design and Development

Research & Innovation

Process Engineering,

Quality & Dev. Tools

10/28/2008 9

Page 10: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 10

Page 11: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Defining Innovation

Innovation• Any product or service that creates unique and compelling solutions

valued by our customers, real and sustainable competitive advantages, and extraordinary value for our shareholders

Creativity vs. Innovation• Creativity is to have ideas• Innovation is to make the ideas real

10/28/2008 11

Page 12: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Three Types of Innovation

Radical• Thinking out of the box• Shifting the paradigm• Leaping ahead

Incremental• Taking the next logical step• Making something better and better

Reapplied• Thinking laterally• Using something in a whole new way

10/28/2008 12

Page 13: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Radical Innovation

• Goes beyond competitive positioning

• May lead to major paradigm shift

• Usually an individual achievement; champion driven

• Proactive and opportunistic

• Risky with high failure rate; rare in mature companies

1860 19701910

10/28/2008 13

Page 14: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Incremental Innovation• Address issues in non-traditional ways

• Necessary to retain competitive position but does not threaten status quo

• Responsive to problems, opportunities or trends

• Team driven; high expectation of success

• Lots of recognition and reward for success

1903 1920 1940 1980

14 10/28/2008 14

Page 15: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Reapplied Innovation: Super Glue*

The re-application of an existing concept or solution into a new context is innovation.

Superglue was used as surgical stitches

* Other names and brands may be claimed as the property of others.

10/28/2008 15

Page 16: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Innovation Projects

What do we mean by innovation projects in ASDC?

• Project driven by new usages

• Software development on hardware prototypes

• Innovation software projects

– Radical innovation

– Incremental innovation

– Reapplied innovation

• Innovation teams of ~5 engineers

• Not only software development but also business model research

• Main goal

– Influence the architecture and definition of future Intel platforms

– Guide/grow existing businesses & help create new ones

10/28/2008 16

Page 17: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Innovation Projects Characteristics

• Very risky. Uncertain results• New Technology or a new

application of a known technology• Very difficult to measure success

– Number of patents?– ROI?– Time to market?

• Early prototypes needed• Requirements not clear and high

volatility• Result driven

10/28/2008 17

Page 18: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 18

Page 19: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

What is the Innovation Funnel?

Goals:

• Idea Incubation

• Systematic and Incremental

• Visible and Traceable progress

• Risk mitigation

• Early go/no-go decision

• “Even” development of Tech, Biz, and Usage aspects

• Deliver a ready-to-productize idea

What it is NOT:- a methodology for project planning & resource management

Page 20: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Funnel Stages

Production Process

Ideation Concept Feasibility Commit

Creation of a new project

InnovationProcess

The idea is

developed

PoC andidea

validation

Prototype + biz

strategy

Delivery+Uses+Biz+Tech

Page 21: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Phase 1: Ideation

Goals: • To state what is known, what is projected to be true, and what is

completely unknown. • Evaluate the idea’s alignment with the company's business. • Classify the project main rationale. • Show why the project should be carried out.

Deliverables:• Executive summary• Usages and associated technology• Value Prop. (for the company, clients, or end users)• Tentative Biz strategy

Planning and resources: Short duration (aprox. 50h)

21

Page 22: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Phase 2: Concept

Goals: • Showcase the idea with a Proof of Concept(PoC) explaining how it

will work.• Validate the idea (its concept) with the relevant stakeholders. • Consolidate idea’s value and spot potential risks.

Deliverables:• PoC• SWOT analysis• Alignment with company’s roadmap• Estimated ROI

Planning and resources: Formal planning and resources (~5 eng.) assignment is required.

22

Page 23: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Phase 3: Feasibility

Goals: • Reduce future business, planning, and implementation risks.• Determine the technology and business aspects required to fully

develop the idea.• Obtain engagement from a productizing group.

Deliverables:• Functional prototype• Technology requirements• Implementation suggestions• Agreement with productization group

Planning and resources: The resources are increased or decreased depending on the project needs. Ideally, productizing group becomes one of the main stakeholders.

23

Page 24: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Phase 4: Commit

Goals: • Ensure the correct adoption of the project by the productizing

group.• Ensure the complete and correct knowledge transfer to the

productizing group.

Deliverables:• Implementation documents• Agreement about the post-commit support • Formal documentation about project transference

Planning and resources: Minimum resources needed for transferring the project. Productizing effort starts on this stage.

24

Page 25: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Funnel Summary

• Well defined phases for an innovation project

• Clear milestones to measure advance

• Baselines that allows change management control

• Management methodology flexibility

25

Page 26: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 26

Page 27: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Adding Scrum into the Picture

• Innovation projects are inherently difficult to manage• Challenges posed by Innovation Projects

– Planning • No long term planning• Need early go/no go decision for project

– Product• Not clearly defined requirements• Volatile requirements• No customer figure• Unknown or very new technologies • Need rapid feature prototyping for showing concept idea and engage

stakeholders– Metrics

• How to measure innovation• How to measure the project evolution

10/28/2008 27

Page 28: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

ASDC/SPI Organization

• We have technology areas encompassing related projects

– More synergy among members

– Improve in-depth technical expertise

– Improve and organize communication flow

• Quarterly goals per area

– Members’ individual goals must cover area goals

– Areas goals must cover division goals

10/28/2008 28

Page 29: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

The Area Owner

• The area owner is responsible for– Identifying potential projects related with the area

– Coordinating the projects in the area

– Proxy to the Manager

• The area owner vs. the scrum master– Can both roles be played by the same person?

• The area owner role is more similar to a product owner, but it is a member of the team

10/28/2008 29

Page 30: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Sprint Planning

• One unified backlog for the area– Each project is a component in SCRUM tool framework.

• Sprint planning meeting– Tool’s Planning Board is used– Features are discussed previously with the product owner

• The product owner not always has time to participate in the sprint planning

• Negotiation on committed features is done offline using SCRUM tool framework

• Estimating tasks– Poker estimation is used to estimate features

• Each sprint is a version in the SCRUM tool framework

10/28/2008 30

Page 31: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

The Planning Board

* Other names and brands may be claimed

as the property of others.

10/28/2008 31

Page 32: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

During a Sprint

• Task board is used to track the status of each task• Area members can work in tasks from different projects

– Tasks are self-assigned based on task priority/dependences– Pair programming is used to leverage skills– The task owner resolves its tasks, other team member verifies and

closes the task

• Quality audits are performed at the end of the sprint– PCA/FCA

• Area-related tasks are considered inside the sprint– Area meetings, process quality assurance…

10/28/2008 32

Page 33: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

The Taskboard

10/28/2008 33

Page 34: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

The Burndown Chart

10/28/2008 34

Page 35: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Scrum Compliance

• Most useful practices from scrum include

– Daily meetings

• Keep them short, stand up meetings

– Sprint retrospective

• Helps improving the process in following sprints

• Difficult to apply

– Scope freeze

• Usually some time is reserved for unknown subtasks

– Estimations

• Some features are related to research, it may demand 4hs and a no-go or a go decision uncovering many new tasks

10/28/2008 35

Page 36: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Challenges

– How to identify the Product Owner (PO)?• Each project has different stakeholders, PO must be

impartial– Can we have many PO?

• How do we prioritize during the Sprint planning in such case?

– How do we engage an external PO?– How to manage Risks and dependencies?

• SCRUM tool framework is used for risk management– How does this empirical process align with defined process

(CMMI)?• Traceability from requirements to test cases• Evolving architecture vs. PoC ad-hoc architecture

10/28/2008 36

Page 37: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Dealing with Innovation usingFunnel + Scrum

10/28/2008 37

Page 38: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 38

Page 39: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

CMMI and Agile Perception

• Agilists defend highly motivated teams and frequent releases

• CMMI followers believe in defined processes and plans

So… we plan our frequent releases of highly motivated teams using defined processes

Page 40: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

CMMI Maturity Level 3

• How are we going to eat this elephant?*(a.k.a. “How are we going to achieve our

objectives?”)Obviously in small bites.

• No elephants were harmed during the making of this presentation, nor in any of our process improvement initiatives.

Page 41: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Process Improvement Roadmap

10/28/2008 41

Page 42: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Process Definition

• Our Driver: Simplicity

Policies

Procedures

Standards, Guidelines and Templates

CMMI is about processes, and processes are what people do. Improving our process definitions to better reflect this is critical to

achieve our goals

10/28/2008 42

Page 43: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Institutionalization Strategy

• Champions task forces– Requirements Management– Metrics– Configuration Management– Project Planning– Monitoring and control– Technical Solution– Product Integration– Organizational Training– Requirements Development– Verification and Validation.

10/28/2008 43

Page 44: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Policies

• Policies per Process Area – Requirements Management and Development– Software Configuration Management and Product Integration– Project Planning and Risk Management– Measurement and Analysis– Project Monitoring and Control– Process and Product Quality Assurance– Data Management– Verification and Validation– Org. Process Focus and Org

Process Definition.– Organizational Training– Integrated Project Management– Decision Analysis and Resolution

10/28/2008 44

Page 45: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Process

• All the PAs have one process associated with, in some cases (PP) are more than one.

Approaching the model this way allow us to manage each process area as an independent streamlined workflow and have a solid basement to grow and ensure that future improvements do not impact in several process, affecting the integrity of the defined development process. This allow us parallels process definitions with flexibility and consistency

10/28/2008 45

Page 46: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Putting all together….Architecture

• The process definition is fully implemented in EPF. This is fullautomated Eclipse framework. With tools we ensure a proper process change control, integrity from origin and a collaborative environment

10/28/2008 46

Page 47: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

We are walking….

• The version 2.0 of the process is in production. Full supported by tools

• The defined process will have an “acid test” during Dec 08.• The Institutionalization effort has been launched thorough

taskforces, these are lead by champions.

10/28/2008 47

Page 48: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Agenda

• A bit of history about Intel ASDC• What do we mean by “Innovation Projects”?• Our innovation funnel• Adding Scrum for daily management• How does this fit into a CMMi environment?• Open questions

10/28/2008 48

Page 49: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Challenges (revisited)

– How to identify the Product Owner (PO)?• Each project has different stakeholders, PO must be

impartial– Can we have many PO?

• How do we prioritize during the Sprint planning in such case?

– How do we engage an external PO?– How to manage Risks and dependencies?

• SRUM tool framework is used for risk management– How does this empirical process align with defined process

(CMMI)?• Traceability from requirements to test cases• Evolving architecture vs. PoC ad-hoc architecture

10/28/2008 49

Page 50: Managing Innovation Projects with Scrum In a CMMI Environmentagiles2008.agiles.org/common/pdfs/Intel - Innovation Projects With... · Managing Innovation Projects with Scrum In a

Thanks!