How long will it take?
Inspired by Seth Godin's blog post titled "How long will this take?" this article will guide you through a series of questions that can help determine the timeline for a project. Recently, we experienced the consequences of not asking the right questions before starting a project. Here’s what we learned: increasing time spent on planning can speed up the overall project by creating a detailed roadmap, which reduces the risk of going off track.
Key Factors That Determine Project Duration:
- Budget
- Quality
- Available Resources
A realistic deadline considers all three factors. Tight deadlines assume that all necessary resources are either already in place or can be quickly assembled.
Our Experience
We were asked if a timeline of a little over a month was achievable for creating a web interface for our existing desktop software. Initially, this seemed reasonable. However, we failed to investigate the implications of this interface and its interaction with our desktop software.
Questions to Consider
Start by considering these critical questions:
- Will the spec change after we begin?
- Has this team done this work before?
- Are all the people, budgets, and assets in place?
- Is finishing it fast more important than doing it well or on budget?
Lessons Learned
Here’s how these questions could have helped us:
1. Specification Changes: Anticipate that the specification might evolve. Record how the project evolves to ask, "How important is this feature right now?" If high priority, adjust the timeline and budget. If low priority, table it for later.
2. Experience of the Team: Ensure the team has done similar work before. Our team hadn’t done this specific work, and we underestimated the learning curve involved in using a new language and framework while designing the web interface.
3. Resources: Set a budget based on an accurate understanding of the project scope and difficulty. Ensure you have the necessary assets. For us, the new web interface generated data that didn’t fit our current architecture, requiring us to reimagine data linkage and essentially rebuild our desktop software as a web application.
4. Balancing Speed and Quality: Initially, we prioritized speed over thorough planning, which backfired. Ultimately, delivering a high-quality product that meets the client’s needs is more important.
Project Outcome
We thought we could complete the project in a month, but it took five months. Spending more time planning at the start could have led to finishing within the quarter. A detailed specification document would have highlighted necessary changes to our desktop software, preventing surprises.
Conclusion
To ensure your project stays on time and within budget, spend adequate time upfront planning and defining the parameters. The more familiar you are with the project territory, the easier it is to estimate the timeline. For new and complex projects, even seemingly simple requests can become challenging.
Our Approach
At "We Don't Do Simple," we focus on creating tools that your business can rely on and grow with. Our software design process involves:
- Outlining Client Needs: Understand and document what the client requires.
- Creating a Specification Document: Develop a detailed roadmap.
- Generating a Quote: Provide an accurate estimate based on the specification.
- Working Towards the Final Product: Deliver a product that meets the defined needs.
For more information on how we work, check out our software design process or get in touch with us today!
By following these guidelines, you can better predict project timelines and avoid the pitfalls we encountered. Let’s ensure your project is well-defined from the start, leading to a successful and timely completion.