Canvas to Cloud
The Canvas to Cloud methodology, helps take your idea on Canvas (as nascent as on a paper napkin or your drawing board) to a fully functional, well tested and scalable application deployed to Cloud, along with Tier 3 customer support.
The methodology has 5 predefined phases, where each phase has a proven approach supported by best practices, skills and technologies, to ensure a successful outcome. While each of these phases can be a standalone engagement, BoTree has successfully worked with customers where the outcome of one phase acts as an input to the next phase.
The steps on this journey from the Canvas to the Cloud are productization, complex problem solving, rapid prototyping, moving to enterprise, support and maintenance. BoTree has the people with commitment and capabilities, to be your true software development and technology partner, as you go from concept to scale.
We would be honored to play a small part in your journey from the Canvas to the Cloud!
The outcome of the productization phase is
- A detailed functional specification of the concept.
- Identification of technically challenging and complex problems for implementing the concept.
- Understanding the concept: Our technical and functional team would spend time with you to understand the concept thoroughly.
- Breakdown: The team would breakdown the idea into multiple functional units for analysis.
- Analysis: Each functional unit would be analyzed and assessed for feasibility.
Complex Problem Solving
The outcome of this phase is a technical document detailing how the functionality of the software / product would be achieved. It would also distill the most suitable solutions for complex implementation problems.
- Structure: The problem would be structured and represented in line with the context of the software / product.
- Solutions: The team would brainstorm to identify solutions to the complex problems.
- Feasibility: Each solution would be assessed for feasibility with constraints like cost, time and technical limitations.
- Application: The most promising solutions would be applied for solving the problem.
- Assess: The outcome of the solution would be assessed for desired results.
- Iterate: In case the solution applied does not give the desired result, start again from step 4.
The final outcome of this phase is a Minimum Viable Product (MVP) through rapid iterations of prototyping.
- Identifying: The team would identify the bare minimum features to be incorporated in the MVP.
- Implementation: The team implements according to the specifications and releases for feedback.
- Feedback: The prototype is reviewed by the product owners and a trial group of users for feedback and comments.
- Changes: Based on the feedback received from the review group, recommended changes are analyzed and evaluated for next iteration beginning step 2.
Moving to Enterprise
To evolve the MVP to a secure, resilient, performant, fault tolerant and a highly scalable application deployed to cloud.
- Feature Identification: The features required for taking the MVP to a product / solution that can be used commercially are identified.
- Implementation: The identified features are analyzed and implemented by the team.
- Quality Assurance: The MVP would undergo tests for functionality, performance, load, security and availability to identify areas which need attention.
- Fixing: The issues highlighted in the above step would be fixed. It might require changes in code, it might require re-design and re-architecting the application or it might require changes in the proposed infrastructure.
- Deployment to Cloud: After multiple testing and fixing iterations, the application is deployed to cloud for access by a large group of users.
Support and Maintenance
To set up a team and a process to constantly monitor, maintain and support the application deployed over cloud.
- Identify and establish monitoring mechanisms, maintenance checklists, support escalation matrix for the application on cloud.
- Identify the DevOps practices to be adopted.
- Establish process for future enhancements and new development for the application / service.