A Crucial First Step
Embarking on a new software project is an exhilarating experience. Endless possibilities await, ranging from radical success or total failure. We have done this many times and it is always exciting. The decisions made at this stage are the most critical to the long-term trajectory of the project. Therefore, it is extremely important to allocate adequate time to “set the stage” properly for all team members to align on goals, establish clear expectations, and identify potential risks. We refer to this period as “Iteration Zero”. This initial phase is dedicated to ensuring that your project not only gets off on the right foot, but is architected to keep and build momentum and deliver on its promises.
Plan and Design, Then Build
Iteration Zero is packed with high-level technical planning and decision making, followed by a preliminary project structure implementation. After gathering a clear understanding of the requirements, an architecture outline is formed, development tooling is established, and automated builds and continuous integration are configured and deployed. Major decisions on base-level frameworks and 3rd-party dependencies are concluded here. After that, infrastructure, servers and external services are allocated. User stories are added, and sprints and team member roles are set up. With your collaboration, cadences are agreed on and recurring planning and demo meetings are scheduled. These fundamental aspects must be complete before developers can start building features.
Developers as Force Multipliers
Once the stage is set, developers self-organize around building the requirements. With a clear, smooth runway and path to success already established, their entire cognitive energy and focus is now dedicated to building (or “stacking PRs”, as we refer to it). They are not caught up in critical architectural or technical problems as this work is already done. Adding additional developers is easy as they become force multipliers for the project once the stage has been set.
Why we’re experts
Starting a software project is not easy. If done incorrectly, it can have many downstream effects – missed deadlines, exceeded budgets, dissatisfied stakeholders, or even a failed project. These risks can’t be ignored and must be mitigated at every step. We put an emphasis on this initial stage because we know how important it is to the long-term success of the project and therefore your business. Our expertise lies in starting projects the right way to deliver projects that succeed, and Iteration Zero is crucial to that success.