Day 7: User-side walkthrough
The home view of the application presents two lists: People that are employed by Basecamp-account-owner company are shown on the left; Projects that exist in basecamp are listed on the right. Both lists have a special column that presents the link “View Time” for every row.

The “View Time” link triggers a view showing detailed time information for the selected row. If the user clicks on “View Time” for a Person, the total hours logged on each date, against each project is presented as a line graph. Each line (data series) represents one Project on which the person worked, and dates increase along the x-axis. The sum of hours logged is shown along the Y-axis.
A list of all timeentries for this Person AND this Project is shown below the graph. The Person and Project columns are hidden automatically by ActiveScaffold (they are filter criteria and therefore all the same).
Lastly, clicking on “View Time” for a Project shows the total number of hours logged by each Person that worked on the Project, per date. As in the previous graph, the date increases along then x-axis and the y-axis shows the total number of hours worked. In this view, the lines (data series) correspond to individuals who worked on the Project.
That’s it! There are a few things that need to be done before this project is “presentable,” but IMHO these are eventualities and do not invalidate my proof of concept:
- Functional testing
- Improve abstraction of controller functions
- Subclassing the graphing controller from Person and Project
- Automated Functional test scripts
- Graph Readability
- Resize, rotate, or filter the dates so they are readable
- Resize the series legend so it fits on screen
- Basecamp object support
- Expand beyond current set
- Milestone
- Todo-list, Todo-item
- Dynamic background (not at-once) caching
- Logging/Study of bandwidth usage
- Expand beyond current set
…and many more. It’s not about that though –
I learned Ruby and Rails this week and am now ready to start a “real” project with it. Luckily I’ll be traveling for the next 3 weeks without a laptop and will have plenty of time to think of new challenges.



Leave a Reply