Wednesday, May 6, 2009

Devcathlon Critique

Introduction
The user testing phase of Devcathlon is under way and is going through an evaluation from all team members. Devcathlon is a working system that needs a database which will be implemented this Summer. There are several issues that will be addressed in the next build which includes more unit tests.

Issues
There is an understanding that all systems in its infancy are not perfect. Devcathlon has many issues which seem to be mainly cosmetic and not affecting the functionality. The list is an overview of the May 9 build.
  • Teams: The only issue with Teams is when a user accepts an invitation he or she becomes a member of all created teams.
    There should be only 4 members in this team.
  • Matches
    • Matches tab: Something should display in the Match Details panel.
    • Matches Manage tab: Something should display in the Match configuration panel.
  • Scoreboard
    • The matches panel(left panel) needs to be paginated *already done*.
    • The Event panel needs to be paginated *already done*.
    • The Teams List should display names not emails, that function is part of the implementation not sure what is wrong.
    • Display the date of an invoked Event in Events panel *done, date needs formatting*.
The Review
To critique system I asked Peter Rodrigues an ICS graduate 2007 to examine Devcathlon. To checkout the system, Google's Chrome on a Dell was used. Naturally Devcathlon is not intuitive each section had to be explained. Peter liked the overall design thought it was clean. One major error we found while doing the review was in the match details panel when clicking on the headers a NullPointerException popped up. The panel with the NullPointerException.

Other minor issues we stumbled accross.
  • Not all user IDs (email addys) are clickable, the page below is from the Browse Profile.
  • Matches Manage page should display something
  • Peter did not like the dynamic panels because the user name at the bottom of the page moves and is distracting.
  • Its difficult to understand the layout in the Matches panel(the list of matches). It is not clear what one needs to do within the page. What does the user do with this page?
Top Five Lessons Learned from ICS 414
  1. Patience in team development - Cannot expect perfection when developing code with a group of five or more. All users must be strongly encouraged to constantly communicate with each other. Get all developers to write daily emails about their progress and implementations.
  2. HTML and CSS - First time using CSS for a real project took some adjusting but finally figured it out. I found CSS to be useful and easy to manage.
  3. More Wicket - I wonder if Wicket will catch on? I hope so, it would be a shame to throw away everything I learned. I complained about Wicket in previous blogs which was more out of frustration because I am a novice with the framework.
  4. More Java - Got more practice implementing code in Java. Got to use Hashmaps and Hashsets in production code. It was interesting to see how Java interacted with different languages and frameworks.
  5. Presentation of a System - A lot of preparation needs to go into a presentation before showing it off to management. It can get uncomfortable when explaining a section of the project that is either incomplete or not working. Nothing like blank or angry stares from the boss to make you sweat.
Conclusion
Developing Devcathlon was frustrating yet fruitful I got to work on a system that will be used for ICS 413 in Fall 2009. I believe my software development skills are much sharper. I feel more confident and less fear when working with code. I hope the students in ICS 413 have fun with Devcathlon.