
I estimated my time through the WODs and my confidence when it came to the issue I was working on. Rather than relying on exact numbers, I based my estimates on how complex the task seemed compared to previous work I had done. I also usually overestimated my coding effort because I believed it was better to account for potential bugs, integration issues, or refactoring that might be needed. This helped ensure I had enough time to complete tasks without rushing, even when the actual coding effort ended up being lower.
Although my estimates were sometimes inaccurate, pre-planning provided significant benefits. Estimating in advance allowed me to allocate my work schedule more effectively, ensuring I could prioritize tasks and reduce the risk of bottlenecks. For example, when working on user authentication features, I planned extra time for validation-related tasks, which helped avoid last-minute delays. Tracking my coding effort also showed that debugging and problem-solving often took longer than expected. Additionally, using AI tools like Copilot sometimes sped up development, but also required extra effort for reviewing, debugging, and integrating generated code. Pre-planning made it easier to account for these variations.
Tracking actual effort was useful even without having perfectly precise numbers. Recording time helped me notice patterns in my workflow, such as which types of tasks generally took longer and which were more straightforward. For example, debugging logic tended to require more time than writing new components. Even when tracking was incomplete, it still provided useful insight for improving future estimates and planning decisions.
During Milestone 1, effort tracking was inconsistent because our team did not fully establish a tracking process at the beginning of the project. In Milestones 2 and 3, I tracked my effort more consistently using the timer on my iPhone to record both coding and non-coding activities. Coding effort included writing, testing, debugging, and reviewing AI-generated code. Non-coding effort included planning, researching, and collaborating. While this method was not perfectly precise, it provided a reasonable and honest representation of the effort I spent on tasks.
In future projects, I would improve my estimation process by:
These changes would help make future estimates more realistic and effort tracking more useful.
In regards to this experience, I learned that effort estimation and tracking are important tools for managing a project, even when exact numbers are not available. Planning ahead helped me manage my time better and avoid rushing, while tracking effort helped me better understand my workflow. Using AI tools like Copilot sometimes reduced effort but also added time for review and integration. Overall, this experience helped me develop a more realistic approach to estimating and managing effort, which I can apply to future projects.