We are currently working on a data intensive product. We have a great team - top class developers and team lead, a great system architect and I hope a pretty good product manager. The requirements are well understood and we received a well researched specification from the project sponsor. We are working using Agile and although this is a start from nothing project we produced some impressive user flows with demonstrable value even in the first sprint.
So as the product guy I am very happy and keen to demo the product to anybody and everybody.
There is, however, a problem. At almost every Discovery meeting, after every daily and at working meetings in between we change the data model, just a bit to tweak it; (almost two sprints into the development.) I have tried to analyse the situation and reached several conclusions. I don't think that we are tweaking it just for the pursuit of perfection. Almost all the changes are because there were some soft areas in the requirements and because the model isn't yet fully functional. I am sure that in another couple of weeks we will have resolved most of the issues and things will reach some equilibrium.
Secondly I think that the discovery team and developers are so switched on and involved that we are really working the topic. We get involved and we have opinions (and the problems are quite involved and tricky.)
As an aside; this intensive (re-)design method leads to uncertainty, the changes are so intense (and actually quite subtle) that the documentation is less than perfect. Partial explanation is found in different user stories with open editing rights. This makes things just a bit harder for the team. There is plenty of readjusting and rewriting.
My last conclusion is that in this project we needed a more traditional approach that involved a full system design that was analysed, debated over and clarified for a (hopefully short) period of time before the first line of code was written.
A stable well defined design at the outset would have saved us a lot of time, debate and on the fly design and development. It would also have improved the communication and stability through better design documentation. I am sure that we would have missed a few points, but then the Agile method would have allowed relatively small and painless corrections.
I think that there are many products where more forethought before starting the sprints will lead to more efficient implementation (and necessary corrections) in the development phase, It isn't always easy to do this - often the requirements are still in development or there is pressure to start work, and perhaps in subsequent releases where the changes maybe quite small relatively it isn't even necessary. However, I think that it is a valuable question to ask when initiating product development can we improve the design before we start work? There is a subtle balance to be achieved between over design/slow customer interaction and impulsive coding/multiple revisions.
Dedicated to improving the craft of technology product management & marketing
Search This Blog
January 14, 2015
January 11, 2015
Which way out? - The Importance of Exit Criteria
One of my fundamental criteria for starting a new product release is being able to define the Exit Criteria.
As a rule of thumb it is being able to answer the following five simple questions with accurate and complete answers (the questions are simple - the answers less so ...)
Once defined these criteria should be critically analysed to ensure that they are coherent and meet the SMART (Specific, Measurable, Achievable, Relevant & Time-bound) criteria. Will they meet the overall objectives? Will the product as defined meet customer expectations? Is the product definition correct? Can it be delivered in the time-available? Is the target customer the correct one to achieve the overall aims? Is the target environment feasible. Answering these questions will often force a rethink and changes, but should result in a clear definition of expectations. The entire team can adopt the final definition adding purpose and clarity. It is also critical in managing any changes that maybe needed during development
Overall the Five W's set out to define what does the product need to do, by when in order to make somebody very happy?
In my experience this is an iterative process, but, answering these five simple questions adds significant clarity to the product objectives and can make the difference between a successful product and a poor executed product that takes significantly more time and resources to develop and then fails to deliver most of what was expected.
As a rule of thumb it is being able to answer the following five simple questions with accurate and complete answers (the questions are simple - the answers less so ...)
- WHAT? - What are we building? What the key features and product values that the release will deliver?
- WHY? - What are the key benefits that the customer will derive from the product when it is released? What are the values and advantages that the release will bring to the product family/company?
- WHO? - Who needs the product? If this is a release for the market then define the customer - specific accounts or profile the type of user that the product is targeting. Also state who will help with the necessary integrations, GTM efforts and other internal stakeholders. If this is an internal development effort then who is the internal sponsor and who is tasked with supporting the integration and deployment.
- WHERE? - Where should the product be delivered? Describe the internal or external deployment scenarios and any pre-requisites that will make the difference between a successful launch and failed one.
- WHEN? - What is the timeline for this release? When must the product be in the marketplace or delivered internally?
Once defined these criteria should be critically analysed to ensure that they are coherent and meet the SMART (Specific, Measurable, Achievable, Relevant & Time-bound) criteria. Will they meet the overall objectives? Will the product as defined meet customer expectations? Is the product definition correct? Can it be delivered in the time-available? Is the target customer the correct one to achieve the overall aims? Is the target environment feasible. Answering these questions will often force a rethink and changes, but should result in a clear definition of expectations. The entire team can adopt the final definition adding purpose and clarity. It is also critical in managing any changes that maybe needed during development
Overall the Five W's set out to define what does the product need to do, by when in order to make somebody very happy?
In my experience this is an iterative process, but, answering these five simple questions adds significant clarity to the product objectives and can make the difference between a successful product and a poor executed product that takes significantly more time and resources to develop and then fails to deliver most of what was expected.
December 22, 2014
Being Customer Passionate
Customer service with passion makes a difference. You can feel it. You know it when you get it.
An example - my company recently changed cleaning contractors; you know the people in blue uniforms who sweep and clean and who seem to change with alarming frequency . (A small digression; they make a huge difference to our lives and you see them every day so be friendly and grateful to them a quick hello is really appreciated.)
The new team are pleasant enough as people and seem to be full of activity doing the regular cleaning stuff. They sweep, their managers buzz around and they all fill in the standard inspection forms. So seemingly all is well. However, actually things are just almost OK, but are certainly not to the right standard. The floors don't quite sparkle, often there are shortages of paper and unexpected messes seem to take a long time to be cleared.
On our floor the old contractors had a super team. As far as I could understand (they were immigrants and we didn't really have a common language) they were actually a husband & wife team.
What is for certain is that the worked very hard and
cared for our office just like it was their own home. They did extra inspections and made sure that everything was just right or even better. I am sure that our toilets and kitchen were as clean as in their home. They cared- actually they really cared and they had pride when you showed appreciation. Some other company now has their services and is very lucky - Anna & Anatoly come back we miss you!
They were true cleaning professionals and worked from the heart and it really showed. The new team just do their job and that also really shows. We all appreciate people who are customer passionate.
We need that professional passion in all our products - that is a difference that the customer notices. It is true differentiation.
December 14, 2014
The Value of Business Value
Business Value is often the holy grail of Product Management (and rightly so) especially when working in Agile.
Business value is genuinely very important; product managers are tasked with building products that offer some real value to somebody. Business values impact almost everything that we do with our product - its positioning, its go to market, its roadmap and its customer centric focus. These core elements of the art of product management are derived from and driven by the business values.
Classically we build things that people want to buy, advancing the business plan of our company. In other cases we may be trying to build infrastructure or experimenting with some novel ideas. However, in almost all cases we can define the objective with business value even if it is a stage or more removed from an actual sale to a customer. I plan to explore business value in these indirect cases in a future post.
So given that business value is one of, if not the primary objective of our professional lives it seems surprising how little attention many of us pay to the business value. Sure we read and write documents with some lip service to the business value. When we do a kick-off meeting we feel forced to generate a couple of statements on the subject and every so on a senior manager will feel the need to talk to even more senior people and have a mini crisis trying to generate a set of business values across all the products that they sponsor. It is possible that this is mainly a feature of big organisations; but my suspicion is that it is a common feature. It is more fun to build and design than to make bold declarations of future business value.
The crux of the issue is that it is really very important and on the critical path of everything that we do. If you are lucky enough to be constantly customer facing then you probably have a pitch maybe even several for different segments, but for the rest of us it is rarely on the agenda.
So here is an idea that I plan to put into action tomorrow - to have a slide deck or excel or some other file with every product that I manage together with its business value. So far, relatively easy, now for the hard part - to try to keep it updated - say four times a quarter. At most reviews I think it will just be a critical read through and add the review date; but every so often things will change.
I think that this exercise will help in a few ways -
Business value is genuinely very important; product managers are tasked with building products that offer some real value to somebody. Business values impact almost everything that we do with our product - its positioning, its go to market, its roadmap and its customer centric focus. These core elements of the art of product management are derived from and driven by the business values.
Classically we build things that people want to buy, advancing the business plan of our company. In other cases we may be trying to build infrastructure or experimenting with some novel ideas. However, in almost all cases we can define the objective with business value even if it is a stage or more removed from an actual sale to a customer. I plan to explore business value in these indirect cases in a future post.
So given that business value is one of, if not the primary objective of our professional lives it seems surprising how little attention many of us pay to the business value. Sure we read and write documents with some lip service to the business value. When we do a kick-off meeting we feel forced to generate a couple of statements on the subject and every so on a senior manager will feel the need to talk to even more senior people and have a mini crisis trying to generate a set of business values across all the products that they sponsor. It is possible that this is mainly a feature of big organisations; but my suspicion is that it is a common feature. It is more fun to build and design than to make bold declarations of future business value.
The crux of the issue is that it is really very important and on the critical path of everything that we do. If you are lucky enough to be constantly customer facing then you probably have a pitch maybe even several for different segments, but for the rest of us it is rarely on the agenda.
So here is an idea that I plan to put into action tomorrow - to have a slide deck or excel or some other file with every product that I manage together with its business value. So far, relatively easy, now for the hard part - to try to keep it updated - say four times a quarter. At most reviews I think it will just be a critical read through and add the review date; but every so often things will change.
I think that this exercise will help in a few ways -
- We will really understand why we are building the product
- We will be able to remain true to the objective and not get inadvertently side-tracked in the natural drift of a dynamic product
- We will make any necessary changes actively after due thought
- Of course finally we will always be able to provide answers to anybody who needs to know right now
December 8, 2014
Optimal Length of Agile Sprints
Agile is a popular development methodology sometimes it seems to be the only method in use today.
At the core of Agile is to break work down into small
chunks that can be managed by the scrum team in a short period of time known as the sprint. Ideally the sprint delivers some or several useful
functions that can be shown (demo) to stakeholders and ideally to customers in order to gain feedback and to change and improve as quickly as possible. This objective is often to deliver MVP or Minimal Viable Product although this is in our experience often beyond the realistic scope of a single sprint.
The idea is that the team commits to a given quanta of work
that can be experienced by the customer and get quick feedback. It also
allows flexibility to change direction or priorities of the overall development.
In our organisation one of the big questions is the ideal
length of the sprints.
To set the context most of our development
does not get released to customers on a one or two sprint basis. We use sprints as a meaningful checkpoint and as a way of involving other
teams, stakeholders, sponsors and management.
Previously we used three week sprints and in this specific business unit the custom has been sprints of two weeks. We are now in the process of moving to
three weeks; partially at my initiative.
The reasoning is that two week sprints are valuable when
the output does get delivered to users and especially if it is user
interface rich. Fast work and rapid feedback and intense market dynamics seem to fit in this context.
However for work that develops over time especially with a
lot of infrastructure or core development then there are many
disadvantages to short sprints.
Agile sprints have high overheads in each and every stage of preparation, execution and post sprint
analysis (Discovery, Pre-planning, Planning, Retrospectives etc.) There is also management overhead in driving an
organisation with several projects each with short sprints and low
capacity. Overall these overheads that amount to high costs that the organisation can not
afford over time. Longer sprints have lower overhead and so are more
efficient. Our analysis indicates that moving from two to three work sprints cuts most of the overhead linearly.
Shorter sprints present a challenge in trying to deliver
real value (MVP or MVP-like) even more so if the team is quite small. It is
perceived that the small capacity presents its own challenges in
preparing and planning the sprint trying to customise the business needs to the limited time.
Another critical issue is the vulnerability to planned and
unplanned absences. It only takes a couple of days vacation, course or
sickness to wipe out the content of a sprint. Bugs, tricky integrations
and environment issues have a similar disastrous impact.
Finally, short sprint cycles place a large demand on the Product Manager and his team. The cycle times are so short that there is never any time to pause and consider the bigger picture and to research new ideas and future directions. Again we think that there are almost linear savings available by increasing the sprint length.
Overall short sprints are considered expensive, hard to
plan and prone to delay. Our analysis indicates that three week sprints
are a better balance of flexibility (Agility) and efficiency.
Subscribe to:
Posts (Atom)