Annotate had a three week deadline and I had a schedule for what features I wanted implemented each week. For the first week, I outlined my three-week plan and set up a CRUD application that served as the foundation of the app. I implemented the key part of my app, Direct-to-Image Annotation, just before the second week ended.
By my original schedule, I was supposed to add a Users feature. This addition involved updating my database to include a Users table. I would also need to introduce new associations such as a User having many Images and Annotations. Image would belong to a User. Annotation would belong to a User in addition to its current association of belonging to an Image. However, when I assessed where my app was at the time, I found it hard to use.
The app was working, it just wasn’t pleasant to use. The positions of the buttons were all over the place and the grouping of controls could improve a lot. With so many things to improve on, I was at a crossroads for what I want to do for the final week. It was either spend the final week polishing the app or adding a new feature. I had limited time so I couldn’t do both.
I asked my Project Manager (Bootcamp Instructor acting as one) what he was looking for in the final project. Did he prefer a polished app with less features or a feature-rich app that isn’t as pleasant to use? I presented my choices and he left it up to me as he was alright with either direction.
In the end, I chose to polish the app. After finishing the project, I think this was the right decision. I chose to have a polished product over a feature-rich product because at the end of the day, I thought it was more important that the product does its job well.