From Estimates to Outcomes

08 May 2025

IDPM Effort Estimation and Tracking

In hopes of efficiently managing time and keeping track of our progress for the ICS 314 final project, Campus Plate Mate, my team and I created an IDPM Effort Estimation and Tracking Document. We have a spreadsheet of the estimated effort it would take to complete each task assigned to us, and when completed, we put in the actual effort it took us.

For these effort estimates, I simply just estimated based on how many files I need to change and how difficult the task would be. If it was something I already had practice with and can easily implement. For example, I was assigned an issue (#77) where I had to allow users under the role of admin to delete any post from our website’s dashboard. I was already familiar with adjusting permissions of certain users so I knew that all I had to do was add another condition, making the delete button on every post visible to admin users. Although I have to say, my tracking was usually not accurate because I never timed myself with an actual timer. I was too immersed into implementing the code and making sure deployments were successful and there were no errors.

Did This Help?

The estimates somewhat helped me to manage my time and plan out how much time I need to allocate for a specific part. One issue I was assigned to, which was a crucial part of our website, required me to update schema.prisma to have a “Post” model (this model holds the required fields of information that is tied to each post). At first I thought it would only take about an hour to implement this and update all related files, but I really underestimated the time it would take. Even though I was familiar with updating schema.prisma and other related files like the validation schemas, I ended up coming across multiple errors that took a long time to debug. However, I knew this was going to take at least an hour, so estimating the time was somewhat helpful for me.

Tracking the actual effort expended on the issues allowed me to get a good idea of how I contributed to the project and how much time it usually takes to implement parts of the website. It also let me know whether or not I was using my time wisely and using resources efficiently. Sometimes it was more important to focus on functionality rather than UI design, especially under a time crunch. Looking back at actual efforts for previous issues reminded me of what I needed to prioritize.

Overall, tracking my effort did not take up much of my time while working on the project and based on my experience, the benefits seem to outweigh the disadvantages. It was a simple task we did on the side, it was not something that inhibited me from completing the project on time and with good quality code.