Software product management Inge van de Weerd
Hoe ben je naar dit college gekomen? A. Lopend B. Met de fiets C. Met het openbaar vervoer D. Met de auto E. Anders
Agenda Software Product Management Requirements prioriteren SPM in de gaming industry
What is Software Product Management? Software product management (SPM) is the discipline that governs a software product over its whole life cycle, from its inception to customer delivery, in order to generate the biggest possible value to the business.
What is a product manager? A product manager is a mini CEO representing the enterprise or business unit in strategy definition and operational execution. Ebert (2007)
Origins of SPM 19th/20th century: manufacturing industry Last decades: Microsoft, sony-ericsson, SAP,...
What s so special about SPM? High frequency of releases Complex requirements organization & tracking Product manager has many responsibilities but little authority over development Interaction with many stakeholders
The poor product manager Market Board Sales Development R&D Partners Customers
Competence model for SPM Why a competence model? To aid product managers in their work To structure education in SPM To structure research in SPM Based on deliverable structure of a product software company
Deliverable structure Portfolio Portfolio: The complete set of products of a company
Deliverable structure Portfolio: The complete set of products of a company
Deliverable structure Portfolio Product 1 Product 2 Product k Product: A packaged configuration targeted to a specific market
Product: A packaged configuration targeted to a specific market
Deliverable structure Portfolio Product 1 Product 2 Product k Release 1.0 Release 1.1 Release 2.0 Release: A formalized sellable version
Release: A formalized sellable version
Deliverable structure Portfolio Product 1 Product 2 Product k Release 1.0 Release 1.1 Release 2.0 Requirement 1 Requirement 2 Requirement n Requirement: Wish for a future product feature
Requirement: Wish for a future product feature
Model levels Deliverable structure Business function Portfolio Portfolio Management Product 1 Product 2 Product k Product Planning Release 1.0 Release 1.1 Release 2.0 Release Planning Requirement 1 Requirement 2 Requirement n Requirements Management! Deliverable structure leads to business functions! Responsibility for business function implies accountability for deliverables
SPM Competence Model
Stakeholders
Internal functions
Requirements management
Requirements management Requirements gathering techniques Market requirements vs. product requirements Functional requirements, quality requirements & constraints Linking requirements, dependability, traceability
Functional, quality of constraint? Ik ga jullie een aantal requirements laten zien Jullie mogen met het stemkastje aan geven om wat voor soort requirement het gaat: Functional requirement Quality requirement Constraint
The system shall provide an option to withdraw money A Functional requirement B Quality requirement C Constraint
The application shall run on a smart phone A Functional requirement B Quality requirement C Constraint
A product cannot be purchased until an email address is given A Functional requirement B Quality requirement C Constraint
The system shall be available 99% of the time for any 24- hour period. A Functional requirement B Quality requirement C Constraint
The system must be developed using the SCRUM development process A Functional requirement B Quality requirement C Constraint
Product planning
Product planning Product roadmap A high-level sketch of where the company s product(s) is/are going to give internal and external stakeholders the ability to plan accordingly
Portfolio management
Portfolio management
SPM Competence Model
Release planning
Agenda Software Product Management Requirements prioriteren SPM in de gaming industry
Requirements prioritization Need to select what to implement Stakeholders (usually) ask for way too much Balance time-to-market with amount of functionality Decide which features go into the next release And what if stakeholders disagree?
Triage Before applying prioritization techniques: perform triage Origins in medicine Some requirements must be included Some requirements should definitely be excluded That leaves a pool of nice-to-haves, which we must select from.
Requirement evaluation concepts (1) Importance Business value / benefit Absolute values ( How much extra money will we earn when we implement this requirement? ) Relative values ( Requirement A will generate two times as much revenue as requirement B. ) Penalty if not developed / harm avoidance Absolute values ( How much money will we lose due to decreasing sales if we do not make a web version of our product? ) Relative values ( The harm done will be higher if we leave out the requirements submitted by customer C than customer D. )
Requirement evaluation concepts (2) Cost of development In or $ In man days Relative ( Requirement A more than requirement B ) Development risk Requirement volatility / stability ( Is the requirements likely to change? ) Development difficulty ( This requirement concerns a new technology, which our developers have never used before. )
MoSCoW M - Must have this requirement in the current release, in order to make it a success. S - Should have this requirement if possible, but is not critical for the release. C - Could have this requirement since it is a nice to have, but it should not affect anything else. W Won t have this requirement this time but possible would like to have it in the future.
Binary search list Based on binary search tree sorting algorithm Example Prioritized requirement list:!requirement 4!Requirement 2!Requirement 3!Requirement 1!Requirement 5
We gaan weer stemmen We gaan twee prioriteringstechnieken vergelijken: MoSCoW Binary search list Eerst moeten we een lijstje met requirements hebben Laten we Facebook als voorbeeld nemen
Requirements 1. I would like to integrate Facebook with my email 2. I would like to use a dislike button 3. I would like to share my Facebook pictures in Picasa 4. I would like to see who visits my profile 5. I would like to be able to customize the layout of my Facebook page 6. I would like to integrate Facebook with Google calendar
MoSCoW De requirements die jullie zagen, komen één voor één langs. Geef voor elke requirement aan, onder welke categorie je vindt dat ie hoort: A. Must have B. Should have C. Could have D. Won t have
I would like to integrate Facebook with my email A. Must have B. Should have C. Could have D. Won t have
I would like to use a dislike button A. Must have B. Should have C. Could have D. Won t have
I would like to share my Facebook pictures in Picasa A. Must have B. Should have C. Could have D. Won t have
I would like to see who visits my profile A. Must have B. Should have C. Could have D. Won t have
I would like to be able to customize the layout of my Facebook page A. Must have B. Should have C. Could have D. Won t have
I would like to integrate Facebook with Google calendar A. Must have B. Should have C. Could have D. Won t have
Binary search list Ik begin met requirement nummer 1: I would like to integrate Facebook with my email In de volgende slides komen de overige requirements langs. Bij elke requirement: geef aan of deze (A) belangrijker is of (B) minder belangrijk dan de vorige requirement. Ik teken de binary search tree op het bord
I would like to use a dislike button A. Belangrijker B. Minder belangrijk
I would like to share my Facebook pictures in Picasa A. Belangrijker B. Minder belangrijk
I would like to see who visits my profile A. Belangrijker B. Minder belangrijk
I would like to be able to customize the layout of my Facebook page A. Belangrijker B. Minder belangrijk
I would like to integrate Facebook with Google calendar A. Belangrijker B. Minder belangrijk
Binary search list: tool support Paper written by former MBI student Thomas Bebensee Excel spreadsheet Bebensee, Th., Weerd, I. van de, & Brinkkemper, S. (2010). Binary priority list for prioritizing software requirements. Proceedings of 1the 6 th International Working Conference on Requirements Engineering: Foundation for Software Quality (REFSQ 2010), LNCS 6182.
Questions?
Pauze
Agenda Software Product Management Requirements prioriteren SPM in de gaming industry
SPM in de gaming industry
Games...... are very specific type of software product: Games have requirements Games are planned in releases and roadmaps Valve-time Games are part of a portfolio Valve ascribes their delays to their mentality of team-driven initiatives over corporate deadlines to make sure they provide a high quality product to their customers.
However......there are also many differences with traditional software products
Let s take the Fallout example 1997: Fallout, for MS-DOS/Windows 1998: Fallout 2, for Windows, Mac 2008: Fallout 3, for PC, Xbox 360, PlayStation 3 2010: Fallout Las Vegas, for PC, Xbox 360, PlayStation 3 Each new release : New plot New features New game mechanics
Compare it with the evolution of facebook 2004 Mark Zuckerberg and co-founders Dustin Moskovitz, Chris Hughes and Eduardo Saverin launch Facebook from their Harvard dorm room Groups application is added; the Wall is added as a Profile feature 2008 Facebook launches Facebook Chat Facebook updates privacy controls to include Friend List privacy 2010 Facebook launches Places Facebook launches beta of Questions
Differences in product management Regular software products (Microsoft Word, SAP, SPSS, Facebook) tend to build upon the old product: New features are added Some old features are deleted or replaced Once in a while the whole code is refactored Games have larger innovation steps: Creation of a new story line Introduce new game mechanics No need to support old game versions Gamers are spoiled Cost and complexity rise with every new game release One bad release and you can say your customers goodbye
Parallels with the movie industry (1) Creative process Definition of game ideas, vision Developing game art, storyboards
Parallels with the movie industry (2) Business model: publishers (producers) & developers (directors) Publishers: Activision, EA, Microsoft Games Studios Similar to producers: Universal, Warner Brothers Developers: GuerillaGames, Obsidian, Lionhead Similar to directors: Quentin Tarantino, Guy Ritchie Both: Nintendo, Sony, Bethesda, Ubisoft Similar to Disney, Dreamworks SKG
Parallels with the movie industry (3) Publishers need to sell about one million copies of a game on the PS3 or Xbox 360 just to break even Growth 2006-2007
Does the gaming industry have product managers?
Specific challenges for product managers in the gaming industry (1) Which platform to choose? For example: Games for Nintendo DS can be developed more cheaply than those for consoles
Specific challenges for product managers in the gaming industry (2) Business model of selling and distributing games is undergoing fundamental changes Online subscription For example: Activision Blizzard earns with its World of Warcraft $1B in revenue and more than $500M in profit Casual market For game players who don t have a lot of time to learn complicated rules For example: Activision s Guitar hero In-game advertising
Research challenges Which parts of the SPM competence model can be applied to product management in the gaming industry and which should be changed? How do different game genres affect the product management practices? Which SPM processes are implemented by Dutch game? How can they improve? Interested? " Contact me for your bachelor project
(Questions?)