Applying Quality to the Project and Product Management Process

12
Applying Quality to the Project and Product Management Process rundner – Vice President Software Development– Fidelity Investments oject Management Institute er 10, 2013

description

Quality Management is one of the nine knowledge areas of PMBOK, and also an important factor in IT project success. This discussion will be centered on practices in both project and product management that fully enable a technology team to deliver high quality software. In today’s fast paced technology field, often times quality is seen as a luxury item that can or will be built in as an afterthought. The discussion in this presentation is to show how an escalated attention to quality actually provides faster, more reliable and predictable results.

Transcript of Applying Quality to the Project and Product Management Process

Page 1: Applying Quality to the Project and Product Management Process

Applying Quality to the Project and Product Management Process

Jim Grundner – Vice President Software Development– Fidelity InvestmentsNC Project Management Institute October 10, 2013

Page 2: Applying Quality to the Project and Product Management Process

Why Quality?• At Fidelity our goal is to have

“The best Customer Experience in the Financial Services industry”

• This is our quality statement and has created laser focus within our overall organization.

• There is a perception that quality and speed to market are at odds – this is inaccurate.

• Speed CANNOT happen without quality

Page 3: Applying Quality to the Project and Product Management Process

This is a place to start

Defects

…but it is not enough

Page 4: Applying Quality to the Project and Product Management Process

High Quality & On-time Delivery: 4 Steps To Success

Developer

Accountability

Developer

Accountability

Focus on

Quality

Focus on

Quality

Product

Management

Planning

Product

Management

Planning

Developer

Education

Developer

Education

Page 5: Applying Quality to the Project and Product Management Process

Implementing Product Management• Backlog of all work

• In priority order – 1,2,3… (not H,M,L)• Estimated accurately

• Understand development team capacity and utilization• Be Lean & Agile

• Stand-ups at least 3 times a week• Show & Tells – augment the UAT early

• Reqts with solid acceptance criteriaQA Sign-off

N-30

Dev Complete N-60

Deployment

“N”

•Design, code, code review and unit testing

•“ Hands off the Keyboard & Pencils down”

•Code should be defect free to QA

•No additional development needed

Planning 60 Days Development 90 days Test 30 days Deploy Plan 30 days

•Work Intake

•Estimation

•Prioritization

•Release Commit

•Test & Review •Validation•Regression•Perf Testing

•Training Set

•Tickets Set

•Deployment activities

Planning Complete N-150

Product

Management

Planning

Product

Management

PlanningRelease 1

Release 2

Release 3

Release n

Page 6: Applying Quality to the Project and Product Management Process

Quality• Focus on Quality

• Consistent and continuous leadership focus on Quality• People will react to what is being emphasized and measured

• Identify and baseline quality measures• Defect density in test cycle• Incident tickets in production• Do it right the first time – no rework!• Limit change controls & monitor them weekly

• Set quarterly improvement goals• Recognize individuals and teams for quality improvements and

innovation

Focus on

Quality

Focus on

Quality

Page 7: Applying Quality to the Project and Product Management Process

Accountability• Personal accountability to high quality development and to each other

• Developers should target to put the QA “testing phase” out of business• Thorough code reviews and unit testing• Use of tools to check code quality – Sonar, TFS• Show & tells with business teams during development window• “Pencils down” means “Pencils down”!

• Great software is a team sport!• Dev, QA, Performance assessment, other IT partners• Create a collaborative environment

• Great output starts with great input (Requirements)• Description – Give a good description of the functionality and its use• Actors/users - Describe all roles and users of the function• Acceptance Criteria

• Describe the way we will know the function works (This ideally would be the way to test it)

• Describes the way the function should NOT work (This ideally would be the way to negatively test it)

Developer

Accountability

Developer

Accountability

Page 8: Applying Quality to the Project and Product Management Process

Consistent Development Process & Education

• Consistency of development process

• Agile or Waterfall – does not matter• Education needed: development is

not just “coding” • Get the developers close to the end

users if possible• Participation in requirements

definition• How to thoroughly code and review

code with Architects and peers• How to thoroughly unit test and

challenge software prior to SIT• Lessons Learned review at end of

each iteration • Focus on 2-3 improvements and

measure them.

Developer

Education

Developer

Education

Page 9: Applying Quality to the Project and Product Management Process

High Quality & On-time Delivery: 4 Steps To Success

Developer

Accountability

Developer

Accountability

Focus on

Quality

Focus on

Quality

Product

Management

Planning

Product

Management

Planning

Developer

Education

Developer

Education

Page 10: Applying Quality to the Project and Product Management Process

What do Software Managers need from the Project Management Team?

Fid

elit

y In

tern

al

A drive for quality enables a drive for speed Everyone is accountable to improving quality We need to consistently manage all projects Adhere to the defined release plan and schedule Backlogs tracked and managed in consistent format Challenge Estimates – Can we do more? Work identified for dev start

Enough to keep team busy Flexible enough to business & customer teams

Dev teams on track through consistent check ins 2-3 check ins per week

Show and Tells throughout – 3-4 per release All reviews facilitated – Design, Code, Unit Test All criteria met for on time System Integration

Testing entrance as part of an effective handoff to QA

Page 11: Applying Quality to the Project and Product Management Process

Here is what we should expect

• Quality improvement• Process consistency leads to “muscle memory” • Teams execute better when repeating the same approach

over and over• Creativity is focused on the product, not the process

• Faster delivery• Productivity gains based on elimination of rework• Defined delivery dates take the guess work out of planning

• Consistent on time delivery• Repeatable, reliable delivery

Page 12: Applying Quality to the Project and Product Management Process

Questions, comments or thoughts?