Program Management for Agile Product Development
-
Upload
tathagat-varma -
Category
Technology
-
view
1.715 -
download
1
Transcript of Program Management for Agile Product Development
program management for agile product development
tathagat varmahttp://managewell.net
about me
• 21y software product learner• architect, engineering manager, pgm, gm, coach • telecom, datacom, medical, embedded, internet• cmm, iso, pmp, prince2, agile, scrum, kanban• think, do, learn, blog, talk, share
the world around us!
tech bubble?
adoption @ net speed!!!
https://lh4.googleusercontent.com/-SQ1ugOgu8Ds/TimaHjH0VpI/AAAAAAAAApU/za0BhEjhoio/w402/google%2Bplus%2Bgrowth%2B20mil.png http://thesamerowdycrowd.wordpress.com/2011/12/26/a-moment-of-our-time/
darwin at work on internet
http://www.flickr.com/photos/stabilo-boss/93136022/sizes/o/in/photostream/
2006 2009
http://rossdawsonblog.com/weblog/archives/2009/05/rapid_turnover.html
yet, our product development sucks!
http://blog.amplifiedanalytics.com/2011/07/musing-on-difference-between-successful-product-innovation/ http://www.nickblack.org/2009/10/how-brand-trust-affects-new-products.html
so, why do new products fail?
http://www.bioplanassociates.com/services/newproduct.htmhttp://www.innovarsity.com/products/bec_mc_npd.html
product innovation process at google
• Flat organization• Innovation culture• “Innovation Reviews” force management focus • Lean – Agile development, early release• Launch and iterate• Release 5 products and 2 of them will really take off• “Invitation” model buys time to scale
http://www.slideshare.net/anirudhoswal/google-new-product-development-process
http://evelynrodriguez.typepad.com/crossroads_dispatches/files/GoogleProductDevProcess.pdf
how facebook ships code• Developer-driven Culture
• Culture of speed – fast releases, fast feedback
• Project resourcing is purely voluntary -PM lobbies to engineers, Engineers decide which ones they want to work on
• Engineers handle entire feature themselves – front-end, back-end, etc.
• Mandatory code reviews
• No separate QA team. Engineers responsible for testing, bug fixing and maintenance of their own work
• Use user-sample data to settle argument
• Changes are released daily, often multiple times a day. New features released every Tuesday
• Fail fast but recover quickly
• Some slogans at Facebook
– Done is better than perfect
– What would you do if you weren’t afraid
– Move fast and break things
– Proceed and be bold
– HACK
http://framethink.wordpress.com/2011/01/17/how-facebook-ships-code /, http://c2reflexions.com/2011/03/23/how-people-and-process-enabled-facebook-to-become-a-phenomenal-company/
https://www.facebook.com/notes/facebook-engineering/keeping-the-site-reliable-while-moving-fast/10150277682538920, http://www.limitedwipsociety.ch/en/case-study.html
apple’s top-secret product development process
• Every product starts with Design• A start-up is formed• Apple New Product Process (ANPP)• Products reviews every Monday• EPM Mafia – absolute control on production process• Once a product is done, it is redesigned, built and
tested again• Small, Simple -> Add features and iterate
http://thenextweb.com/apple/2012/01/24/this-is-how-apples-top-secret-product-development-process-works/, http://www.macworld.com/article/151235/2010/05/apple_rolls.html
so, what are the “success factors”?
The Path to Successful New Products
#1: Keep it focused#2: Nurture a Project Culture#3: Talk to the Customer
Companies that did this were:
17x likely to be on-time5x likely to be on-budget2x likely to meet ROI targetshttps://www.mckinseyquarterly.com/The_path_to_successful_new_products_2489
is agile a solution?
http://blog.mountaingoatsoftware.com/agile-succeeds-three-times-more-often-than-waterfall
does iterating help?
http://viniciusvacanti.com/2011/12/12/when-do-you-throw-in-the-towel-on-your-struggling-project/
are small teams more productive?
http://drewcrawfordapps.com/2.0/the-agility-of-small-teams/
does colocation impact team performance?
http://sloanreview.mit.edu/the-magazine/2009-summer/50412/how-to-manage-virtual-teams/
is small batch size faster?
http://www.andrejkoelewijn.com/wp/2011/06/30/is-team-productivity-a-responsibility-of-the-product-owner/
does agile work as advertised?
software development life cycles
• Ad-hoc• Serial• Iterative• Incremental• Iterative/Incremental
risk management in SDLCs
notion of ‘progress’ vs. time
test-code-refactor loop
feedback loop in agile lifecycles
agile lifecycle – big picture
from daily builds to project
scrum
so, where and how does program management fit in this?
project vs. program managementArea Project
ManagementProgram Management
Focus Non-strategic StrategicObjectives Singular MultipleExtent of Change Narrow BroadBenefits Realization Once IncrementalDeliverable Complexity
Low High
Deliverable Quantity Few ManyOverall Time Scale Rigid LooseScope Change Exceptional DesirableFunctional Diversity Minimal MultidisciplinaryFrom “Program Management Complexity”
program management issues
• Competencies– Professional Competencies– Foundational Personal Competencies– Critical Competencies
• Process Framework• Org Structure
what is a program?• a group of projects related through the
common outcome or collective capability. If the relationship between projects is only that of a shared client, seller, technology or resource, the effort should be managed as a portfolio of projects rather than a program
• Programs may include elements of related work outside the scope of the discrete projects in the program
program management• Program Management is centralized coordinated management of a
program to achieve program’s strategic objectives and benefits that are not available from managing the sub-projects individually
• Program Management focuses on the project interdependencies and helps to determine the optimal approach for managing them. Action related to these interdependencies may include:– Resolve resource constraints and/or conflicts that affect multiple projects
within the system– Align organizational/strategic direction that affects project and program goals
and objectives– Resolve issues and change management within a shared governance
structure
competencies
Levin-Ward Program Management Competency Model
professional competencies
defining the program• Strategic benefits of the program are understood
by all stakeholders• A plan to initiate the program is prepared• The program’s objectives are aligned for the
program• A number of stage gates or check points are
identified when program status (including benefits realization) will be reviewed
initiating the program
• A program charter is prepared• The program vision is documented to describe the end state and its benefits to the
organization• Key program decision makers are identified• Stakeholders’ expectations and interests are identified• High-level risks to the program are identified• Candidate projects to be in the program, as well as non-project work, are identified• An initial infrastructure for program management is determined• The timetable to complete the program is determined• Initial estimates of the program’s cost are prepared• Key resources for program management are identified to set up the program• The program charter is approved
planning the program• A program management plan is prepared• A benefits realization plan is prepared• Key program risks and issues are identified• The program’s budget is determined• Dependencies, constraints, and assumptions are documented• A strategy to manage the program and its components is agreed upon and documented• Necessarily feasibility studies are conducted• A roadmap or architecture showing the interrelationships among the component projects and non-
project work in the program is prepared• A communications strategy for each key stakeholder is determined• A Program Management Office (PMO) is approved and implemented• Tools, processes and techniques required for program management are obtained• The program management plan is approved and implemented• A program management governance structure is determined• A program control framework is established to assist in benefits measurement as well as in overall
management of the program’s components
executing the program• Projects are initiated as part of the program• Shared resources required for component projects and the non-project work are
coordinated• Change request are reviewed• Additional work is authorized as required• Communication with stakeholders is fostered and encouraged at all levels• Communication with members of the Program Governance Board occurs on a
regular basis• Alignment of the program’s goals and benefits is assessed against that of the
organization• Common activities among the program’s projects and non-project work are
coordinated• Dependencies with other organizational initiatives are coordinated• The program management plan is executed
monitoring and controlling the program
• Progress is analyzed according to the program management plan• Benefits realization is analyzed according to the benefits realization plan• Issues and risks are continuously identified, and corrective actions are taken as required• External environmental changes are analyzed to determine possible impact on the program and its
realization of benefits• Governance oversight is regularly practiced at the program and project levels• Program changes are implemented in accordance with established integrated change control
procedure• Program execution is monitored according to the program management plan• Schedule slippages and opportunities are identified and managed• Proactive cost control is practiced• Stakeholder expectations are managed• Performance data are considered to determine appropriate resource to deliver benefits• Components transition to closure
closing the program• The program is formally closed• Products and services transition to operations• Program benefits are realized• Customer support is provided, as applicable• Lessons learnt are integrated into the organization’s knowledge
management system• Feedback is provided on areas outside the scope of the program• Program documents are archived for reuse• Contractual obligations are met• Intellectual property is captured for reuse• A legacy of benefits sustainment is achieved
personal competencies
communicating
• Actively listens, understands, and responds to stakeholders
• Uses the key channels of communication• Ensures the quality of the information that is
communicated• Tailors the information to the audience• Effectively uses each of the different
communications dimensions
leading
• Implements the program’s vision• Establishes the program’s direction• Recognizes the interdependencies within the
program• Takes calculated risks; is venturesome• Assumes ownership of the program
building relationships
• Builds trust among stakeholders, clients, and team members• Leverages the organization’ political dynamics to promote
program goals• Advocates for diversity and treats others with courtesy and
respect• Establishes and demonstrated high standards for personal
and team member performance• Promotes and demonstrated ethics, integrity, and adherence
to corporate values in all interactions
negotiating
• Obtains needed program resources• Ensures program alignment with the
organization’s strategies• Works proactively with the Program
Governance Board• Promotes overall stakeholder support
thinking critically
• Conducts ongoing analyses to identify trends, variances, and issues
• Applies fact-based decision making to current and prospective issues
• Works proactively with the Program Governance Structure that provides for decision making at the appropriate levels
• Constructively challenges common beliefs and assumptions – always looking for a better way
facilitating
• Plans for success from the start of the program
• Ensures that all team members work together to achieve program goals
• Effectively resolves issues to solve problems• Effectively handles personal and team
adversity
mentoring
• Supports mentoring for program team members
• Establishes a formal mentoring program• Supports individual and team development
activities• Recognizes and rewards individual and team
accomplishments
embracing change
• Establishes an environment receptive to change
• Influence factors that may result in change• Plans for change and its potential impact• Manages changes when they do occur
critical competencies
• Initiative• Managing at Interfaces• Leading without Authority
scale of initiative
Level 1: Wait
Level 2: Ask
Level 3: Recommend
Level 4: Act independently but report Immediately
Level 5: Act independently and report routinely
managing at interfaces
• “agency theory”• Collective outcomes more important than individual
outputs• Optimize “whole” and not just the “parts”• Even more critical with self-organizing agile teams• Move away
– from “back-seat driving” to trusted coalition– from pushing dependencies to facilitating
interdependencies
leading without authority
• Leading with influence
• Key is to establish credibility
• Move away from “command and control” to collaboration
process framework
agile pmo
http://fastfrontier.com/services/
process framework considerations
• Align top-down strategic planning and bottom-up project planning
• Create adequate visibility for senior stakeholder• Need not be built for 100% pure methodologies• Focus on early feedback loops and move away
from ‘compliance to plan’ to ‘inspect and adapt’
org structure considerations• Individual vs. Team performance and rewards• How do you redeploy existing managers?
– Scrum masters?– POs?– Who does people management and admin?
• Does every team need a PgM?• Is PMO = Scrum of Scrums?• Is PMO = Agile Coach?
conclusions• Conventional product development approach fails to
meet current challenges• Agile product development (in some shape or form)
are here to stay• Program management is all about leading without
authority to create collaboration among component teams by managing at interfaces
• Skill is far more important than any process• “Horses for courses” is more effective than a “one size
fits all” process
further reading• Manage It! – Johanna Rothman• Program Management Complexity: A Competency Model – Ginger Levin and J. LeRoy
Ward• The Agile PMO – Adrian Quinney• An Agile PMO – Mike Griffiths• PM at Microsoft – Steven Sinofsky• Agile Program Management Best Practices – Pete Behrens• Agile Program Management: Another Approach to Large Project – Johanna Rothman• Project Management vs. Program Management – Tathagat Varma• What are the Program Management Competencies – Tathagat Varma
connect
Twitter: @tathagatvarmaBlog: http://managewell.net
Email: [email protected]: http://slideshare.net/managewell