METHODOLOGY
Agile-Waterfall Hybrid Methodology
While we strongly believe in the principles of Agile, we find ourselves yearning for the comfort of the waterfall framework. With waterfall, we know exactly where we are headed and we know when and how we’d get there. With agile, every day is an adventure and the sheer joy of witnessing the project morph into something magnificent at each stage is indescribable. Like Sophie, we yearned for both worlds until we came up with an ingenious solution.
Our in-house crafted Agile-waterfall hybrid methodology bridges the best of both worlds and gives us the fun of both knowing and discovering. Our model employs the waterfall framework as an overarching structure with agile principles applied at each stage and in day to day practices. This allows us to define project frames including budget, time of delivery and trajectory while employing evolutionary development and continuous improvement principles of Agile.
But Wait! It gets better:
Our model also divides the development cycle into smaller, incremental waterfall models (sprints) in which our clients get access to the product at the end of each cycle. During the planning stage, we devise a structured yet fluid full-cycle plan while leaving room for adaptive planning at each sprint. This allows for evolutionary development, continuous feedback and effective collaboration with the client.
During our production phase, we employ multiple serial sprints and also parallel sprint cycles for simultaneous completion of related processes. For example, a website development project would have parallel sprints of designing, development, SEO, content creation, etc. all performed by different teams. Each cycle relies on feedback from the client and is subject to the highest quality standards. This allows us to reduce production time and offer the fastest possible time to market. While Agile principles strictly advocate serial sprints with frequent releases, certain projects allow us to implement parallel sprints to complete certain tasks simultaneously. This helps us complete intertwined tasks concurrently thus reducing unproductive wait times. While there are testing teams and development teams working on the same sprints, other teams are formed to carry out tasks in the parallel sprints. This would not be possible if it weren’t for our daily stand-ups, clear communication and efficient planning by our scrum master.
Our work starts with a thorough study of the requirement followed by sufficient research for benchmarking, competitive analysis and consulting. We make use of discovery workshops to bring everyone involved, up to speed on the project. This ensures that both the client and the team are on the same page. Then we create a master plan to establish project trajectory, budget and other constraints. After that, we also devise fluid plans for successive sprints before starting the development phase. After the successful completion of the production phase, we perform final deployment and verification wherein we perform regression testing to ensure the proper functioning of even previously tested components. We pride ourselves in our after service maintenance and support wherein we employ an agile approach to ensure product enhancement, regular maintenance and seamless functioning.