Software Product Management Specialization
Learning the APMG Agile manifesto and project management techniques is an enriching experience, but understanding the hands on application of it as a software product manager is the key to creative studio and development management in the interactive entertainment industry. On a journey of cross specialisation such as mine, this is where the Software Product Management programme, provided by the University of Alberta & delivered by Coursera, comes in.
You begin with learning about a broad range of Agile process models commonly used within the software industry - everyone has heard of Scrum, but Lean (the origin of Kanban) and XP (Extreme Programming) are very prevalent in the course, as well as their evolution from Waterfall, V, Sawtooth, Unified and Spiral models.
Then comes the broad header of determining client needs. As someone with considerable experience commissioning software products for experiential marketing as part of a wider technical event strategy, I am already well versed in the complexities of exploring how to find the solution for the client that they actually need.
This module engenders collaboration with the client to express and elicit the requirements of the product in the form of User Stories and mapping these across the functional requirements of the product to create a Story Map and Release Plan. Wireframes, storyboarding and use cases are all proposed as the methods of determining the true requirements of the product and the best method of elicitation before heavy resource commitment in the production phase can begin.
Now it’s time to get truly Agile. We know what we need to achieve, but how do we manifest the product requirements into a work plan? Well, we develop our User Stories into a product backlog of tasks, we Story Point estimate them and we iterate our way through a long range Roadmap and Release Plan using the Sprint planning process that forms the backbone of Agile.
We identify and prioritise the highest risk items and those with the most dependencies through the backlog via our critical path and risk plans. We manipulate the Sprint backlog deliberately to keep our team laser focused, efficient and motivated to deliver the product goals based on our client’s needs. We stand up every day, remove those blockers and ensure that everyone stays on track to achieve the planned work and ultimately hit those major project milestones. This gives the team the sense of achievement and the client the tangible output that they need to see to maintain confidence in the project, the product and our ability to deliver it!
We continue to iterate through the release plan and dive into the User Stories to groom these into product tasks for the backlog. We build working software incrementally and demonstrate it at each Sprint Review. We define the ‘definition of done’ and build our testing and acceptance strategy upfront in the feature design process. We then Retrospective for continual team improvement and use Metrics to track our Story Point velocity in Release Burndown charts, enabling us to manage our next round of Sprint planning. Rinse and repeat!