One of the things I like to do is to watch cooking shows. Some of them have a soothing quality that helps me relax after a stressful day. And why am I telling you that in an article about creating proof of concept quickly? Well, one of my favorite end products of a cooking show is cake. And, creating a PoC should be a piece of cake. In short, a PoC should be a PoC.
The best way to cook lovely meals or bake an amazing cake, really quickly, is to create a mise en place that allows you to have everything that you need at any time when cooking. This is practically the same thing that I write about in my first article.
Having a reliable set up that caters to all your needs during the process of making a hearty meal is a key to success, but you still have to cook it. So let’s cook up our PoC
Stirring Up a Tasty PoC at the Speed of Light
Now that you have all conditions, accelerators, and team in place it is time to start. For a typical five-day PoC there are four main stages:
- Stage 1: Discovery and Definition
- Stage 2: Development and Intermediate demo
- Stage 3: Final sprint and Demo preparation
- Stage 4: Demo
These stages happen according to the following timeline:
Stage 1: Discovery and Definition
The discovery and definition stage occurs before development. The engagement manager meets with the client, gathers all requirements, and defines the scope and evaluation criteria.
It is essential that the engagement manager completely understand the client’s expectations and can translate all client inputs into a tangible PoC, defining the main user story, which is usually business-oriented, and also some wow factors. This is a crucial step for success!
Also, any specific integration, VPN needs, or databases to configure should be addressed at this time to test all the infrastructure before the PoC development begins.
At the end of this kick-off, there must be a clear understanding of:
- Main user story (and other stories, when applicable)
- Seed data
- Success criteria
- Wow factors
Stage 2: Development: Baking Your PoC
Developing a PoC usually takes five days and starts with a kick-off meeting between the engagement manager and the development team. All the inputs from the customer are provided to the team, and they discuss requirements, main user story, scope, seed data to bootstrap, specific UX and UI, wow factors to implement, and environment to build the applications. It’s critical that everyone is aligned on all those topics before beginning the development.
The engagement manager must be available for daily meetings. And, the tech lead must be available to mentor the team, helping them solve problems, suggesting solutions and being open to discussing ideas and any issues that the team might have during the development. The tech lead also helps with the data model design, tests the main user story, and has an overall grasp of the PoC by supervising the implementation of all features.
During the first three days, typically the work is divided into the following chunks.
First Day: Bootstrap Day
On the first day, after the kick-off meeting, the main developer tasks are:
- Implementation of data models, bootstrapping, and testing
- Reporting to the engagement manager by email at the end of the day
Before any work starts, make sure the developers know that, on this day, if there is any issue that may endanger the completion in five days, they must raise a red flag. Then, everyone involved gets almost instant feedback on the issue and can act accordingly.
To create the data model and bootstrap it, the team first analyzes the seed data provided and designs the data model based on this data.
Then, all the delete actions must be built. These actions can change when adding new entities or if the data model changes. If there are complex BPT (Business Process Technology) requirements, they must be addressed on the first day, also.
If you are developing a mobile app PoC, start with the synchronization and finish the mobile bootstrapping and delete actions on the same day.
Second Day: Starting the Primary Use Case
The second day is focused on implementing the primary use case, including building business logic and implementing the user experience (UX) on top.
For a mobile PoC, the developers assemble the use case, including plugins without UI implementation or only with UX considerations.
At the end of the second day, they should generate the mobile app and send it to the engagement manager and tech lead to get feedback.
Third Day: Finishing the Primary Use Case
The primary goal by the end of the third day is to have the main use case and every screen structure implemented, even if there is still business logic or features to execute. If the main use case is simple, by the end of the third day, then the logic should be implemented, too.
On this day, you need feedback from the engagement manager and, if possible, from the customer. To gather it, an intermediate demo is done to allow time for the team to implement all relevant feedback. In this meeting, the engagement manager presents the UX mockups done by the design team and every implementation so far, such as scaffolding screens and some features, to the customer. There is a review of the goals, timeline, and plan defined before the project started, and the client sees the accomplishments to date.
By the end of the meeting, the engagement manager refers to the user stories and the client is invited to change or add something, if appropriate, to implement during the final sprint
Stage 3: Final Sprint and Demo Preparation: The Icing on the PoC
Stage 3 begins on the fourth day after the intermediate demo is done.
Fourth Day: Feedback Implementation, Testing, Testing, and Testing
On the 4th day, you should implement any feedback from the intermediate demo or continue the development of other use cases.
This means implementing any business logic that is still missing. Finish the missing screens. Adjust, correct, and implement easy common business logic functions or actions. Then, start implementing the UI.
For a mobile PoC, apply components like the customizer and app feedback tool.
Test everything! Make sure that your PoC is bulletproof when under fire from the user stories. Set up a reset data timer (with bootstrap and delete actions) to run whenever there is the need to change data.
After everything is tested, it is time to move the PoC to production. In the production environment, make sure it can access additional apps and technology for user management, business processes, and user feedback. After pushing the PoC to production, run the Bootstrap Timer to make sure you have initial data. Then, open the app and check all the screens to see if everything is in the same working condition as it is in the development environment, and test it test it test it!
If your PoC has emails, it’s also the time to test them in production and check if all necessary configurations are done in this environment.
Fifth Day: Wrapping up
On the fifth day, the team must finish the UI implementation and finalize all the user stories and features that are not yet finished. If there is time, implement WOW factors.
At the end of the day, test everything from top to bottom and implement all the necessary last-minute fixes, then proceed to the handover meeting with the engagement manager. The tech lead and the team will pass all relevant information on how to showcase the new app and also what was left undone and why, if anything. At the end of the meeting, the engagement manager should be able to do a flawless demo that showcases the app.
Stage 4: Demo - The Moment the PoC Is Served
Now that all the development is done, the engagement manager must be well prepared to present the PoC. Along with showing the customer that all main use cases were implemented and available, it is essential that the engagement manager is able to demonstrate to the final decision maker that pains and business goals were address. Therefore, before rushing your plated PoC out of the kitchen, define the scope of what the PoC is delivering and make that the strategy for your demo.
Remember the success criteria that were defined with the customer on the kick-off meeting? Make sure that all user stories were developed in alignment with those business goals.
How Do You Prepare a Successful Demo?
Test, test, test! Knowing by heart the user stories,features and proof points behind each step helps to emphasize the values of the technology. Understand each role played in the user stories and the client’s pains. Put yourself in their shoes, be theatrical in your demo and give the users some life!
What Does a Customer Typically Value More During a Demo?
A demo session must be adapted to the audience, depending on the type: technical people, business users, CEO or CIOs, decision makers, and so on.
The techies always love to see all the technical parts of the app—the cool integrations, plugins, NFC, fingerprint, GPS, integration with complex systems, efficient and performance algorithms, and so on.
Show everything that you built. Customers tend to enjoy seeing how you can implement in only five days and appreciate the correct mapping between the user stories, screens, and application for their needs, and how you can help achieve the solution they need.
Also, this may seem a bit strange to say, but do not disclose the essential features upfront. Use a wow factor as a wow factor and surprise them!
Main Key Points of Every Demo
In every demo session, the engagement manager presents all the use cases that were agreed upon as the success criteria for the PoC. The user stories that were implemented or not, and why. After every user story presentation, the engagement manager should do a wrap-up to help the customer connect the user stories with the business goals.
All the user stories must be connected to the main user story, and in the end, everything must be related: project methodology, business goals, what users want and so on. A successful recipe for the demo is to base it on the philosophy of design thinking, making sure you show the client how to involve all the different areas of expertise (like marketing, business, IT, operations) to solve a business problem or to stay ahead of the competition. It’s crucial that a customer gets out of a demo with this notion.
Wrapping Up a Demo Session
A demo session is wrapped up after all the goals for the demo are shown and accepted by the customer. You’ve done your best, demonstrated what you can deliver in a short period, and the customer is happy. Party on!
Time for Dessert
Now that you have built and presented your successful PoC, it is time to take a moment to enjoy your accomplishment and start working on the next cake. And the next. And many, many more. Creating successful PoCs is not an easy task, much like cooking. It requires method, discipline, commitment, talent, and above all, passion. But if you commit to it, you will feel a bit like those celebrity chefs on TV who can create a fantastic looking dish in no time.
But, since this is the dessert, here is something sweet. A list you can print and put somewhere for everyone to see and use during your PoC adventures:
- Before Development Phase
- Bridge the gap with the client
- Understand client success factors (interest, availability, etc.)
- Kick-off with the developer before or at the beginning of the PoC Development Phase
- Have the UX/UI mockups
- Have seed data
- Development Phase
- Detailed requirements (well-fulfilled request)
- Data model should meet the requirements
- Contact and availability from the EM and the client during the development Phase
- Daily meetings during Development Phase with real feedback and testing
- Meet the EM’s expectations
- Do a good delivery to the EM (explain every user story in detail and show/explain whatever he needs to know)
- Meet the client goals and requirements
- Make sure that the client loves it
- Post Demo
- Do a lessons-learned or post-mortem
- Take a component or some code piece that can be reused and put it ready to be reused
Now, you’re ready to dazzle your clients! It’s a piece of cake, really.