...
- Heuristic: -Details-
- Severity: -Details-
- Description: -Details-
- How to Solve: -Details-
Reflection
...
Early Stages
- Overall, we think that paper prototyping is very effective, especially since most people don’t think to do it in this high-tech day and age.
- One thing we noticed was that we took safety into consideration early on. However, when we were developing the paper prototype, our designed emphasized efficiency; as young people without children, we had a preference for efficient designs. It was only after user testing on the paper prototype that we realized how important safety was.
- We learned that it is really important to understand our user class because that defines what they want. It sometimes takes multiple iterations to get usability right. It took three iterations of scrapping what we did in order to make the Swap Dates and Full Schedule features intuitive for users.
Back End Implementation
- Regarding implementing the backend, we should have branched the code just before we started implementing with Django. That would have allowed us to scrap our implementation and start over without wasting the front-end HTML and CSS that was fine.
- We also think it would have been better to design the data model first before integrating that into our front end code, so that we could take variable names into consideration when writing the HTML.
- In general, we did not fully take advantage of Git as a consequence of inexperience. We learned at the end that when implementing a feature, it is best to create multiple branches, finish implementing individual features, and then merge them with the main branch. Because all of our changes were located in the main branch, whenever we reverted the code, we lost a lot of other useful changes as well.
Overall Observations
- As a group, we benefited strongly from user testing results because we discussed them together and bounced ideas off each other. We assessed the results from user testing as a group to distill what we felt should be implemented. Thus, we left such meetings with an actionable list of improvement ideas.
- We chose not to prototype certain features that would not come up in user testing. For example, our the prototype for our mobile app lacked breadth. We did not prototype the Get Contacts or Get Maps and Directions features because the main focus of our mobile app was the Enable Ride Tracking feature. We also did not include a backend (i.e. actually using a GPS system) because we knew that the test user would only interact with the front end.