Martin Fantini is a Project Manager at Making Sense and has written this article from his profession’s point of view. This article is part of the series of articles created to help you get to know us better. This time, we’ll be taking a look at how we at Making Sense make things work. You’ll get a closer look at our Development Framework, with emphasis on how we put it into action during the Discovery phase.
Since it’s written from a Project Management perspective, this post should provide you with a good, clear sense of how we work our magic here in the offices of Making Sense.
Key elements of success during the discovery phase
It is exhilarating to create a new software product, quite simply because it’s a wonderful challenge to transform ideas into reality. When a client comes to us with an idea for a new project, he’s mainly concerned with how much the development will cost and when it will be ready.
Of course, as a development team, we have much more than timeliness and budget constraints to consider. The Discovery phase is the one that addresses budget and timelines, but there is much more to it than those two factors. This important phase defines the right product to build and also delivers guidelines on how the project will be developed and what type of team we’ll need to carry out the job in a successful way.
A few weeks ago we concluded the Discovery phase for a product for the Healthcare industry and I was invited to write this article on how we did it. In order for readers to gain fresh new insights, it was important to describe our process from the project management point of view for a change.
I thought it would be pretty interesting to describe the key elements in the success of a Discovery phase.
1. Make sure there is a cross-functional team
The Project Manager (PM) usually gets to know the client needs even before the Discovery phase starts. He also gives support to the sales and operations department for the all-important job of assembling the work team for the Discovery.
A Discovery team should include people with diverse specialties, but it depends on the project and on what is required. It’s essential that in the Discovery phase the team members have diverse areas of expertise, so we normally include at least the following:
- Project Manager
- Business Analyst
- UX Designer
- Technical Lead
It’s very important that in this Discovery Phase that the client is also part of the team so we can work closely together throughout the entire project. It’s definitely a collaborative process, wherein we work with the client helping to identify the key stakeholders and contributors to Discovery success.
2. Encourage collaboration and creativity
The PM drives the Discovery process. We try to understand the product environment, its problems, and its solution. The ability to carry out those steps rests, in large part, on collaboration and creativity from the team.
Secondly, for any team who wants to take an agile approach to product development, the PM absolutely must foster a work environment that promotes big-picture thinking as well as the sharing of information.
3. Get everyone on the same page
Another important job of the PM is to get every member on the same page. This starts at the kick-off meeting and continues through the whole Discovery phase. In this meeting the process begins and every member is introduced, the objectives are stated, the constraints are analyzed, we define how we will be working and what’s expected from every member, and everything that has been discussed with the client is re-validated. The expectations are established and made clear, and then the team has daily and ad-hoc meetings.
4. Challenge any assumptions
Now we really start to get to know the client. That means getting to know who they are, their business, processes, why they are investing in this project, how they will finance their project, how they relate with their other products, who their competitors are, what their technical needs are, their deadlines, and their present and future objectives.
As a PM I try to challenge any assumptions and encourage the team to do likewise. Also, I want the team members to ask every question that comes to mind- it’s how we all stay on the same page. This allows us to start thinking in a different way, and it prevents us from going down the wrong path, working on the wrong problem. Ultimately, it colors how we make our own decisions, helping the client save time and money.
5. Explore ideas rapidly
One of the things I love most about the Discovery phase is what I call the “experimenting moment”. In the beginning, a lot of ideas will arise and eventually the product will emerge as we go on. My own objective is to make sure that communication is fluid and to share all our discoveries and advances continuously, in order to change direction as soon as possible, when necessary.
At this moment the idea is to have a wide range of possibilities to explore. We don’t want to frustrate creativity, because it’s what allows us to be innovative.
6. Define the product vision
The next objective of the PM is to see that:
- The team agrees on what problem is that needs to be solved
- They have enough information about the context of the project
- All alternatives have been explored
- Everybody has a shared vision of the project objective
- The team correctly envisions how to solve the problem
- The team clearly understands whom they are designing the product for
- The team clearly understands the product’s value to users and for the business
7. Identify the minimal viable product
The Minimal Viable Product (MVP) is the product with the minimum set of features that provides enough value to validate the product concept. By prioritizing what will be in the initial version we will define the scope of the project. Establishing scope at a high level and setting clear priorities helps us to remove uncertainty. This in turn helps us establish a plan that provides direction and support for the decisions to be made during the subsequent development phase.
8. Determine the project size
Finally, we need to size the project based on what we learned, considering the challenges and risks, the technical complexity and the technology. Also, we need to define who will be the people in charge of the project in order to achieve optimal success.
9. Tangible results
For the final phase of the Discovery, we have to check the tangible results we have so far achieved together. The minimum deliverables we suggest are:
- Scope document
- High level product backlog
- Interactive wireframes
- Schedule and team configuration
- Architecture and technical recommendations
- Estimated investment
Of course later, during development, there will be changes. That’s always inevitable, as new information arises and the requirements are updated.
Nevertheless, the Discovery phase is a solid foundation, providing the pathway to some of our greatest success stories here at Making Sense. It’s part of the reason we so wholeheartedly embrace the Development Framework we’ve adopted here in our offices – it works.