Wednesday, May 13, 2009

Devcathlon: Great Experience

It has been a while since the last blog entry. The spring semester of 2009 at University of Hawaii is almost over, only couple of days left. What have I been up to for the last couple of weeks – doing some coding on the Devcathlon system of course!

For those of you who are not familiar with what I am talking about, here is a quick summary of what the Devcathlon system is. The Hackystat "Devcathlon" (http://code.google.com/p/hackystat-ui-devcathlon/) is a software engineering game where individuals and groups "compete" based upon their actual software development practices. A software development rule they follow or practice (for example, commit code at least once to a main repository) will be turned into an event, that event have a negative and positive score. A team or programmer follows an event is award points, and not following will a deduction in their score. The Devcathlon system is now running and functional (http://dasha.ics.hawaii.edu:9880/devcathlon/).


The whole Devcathlon development team was given the task to test run the system and jot down findings of what works and what does not work. So I have been test driving the system. What I found
  • (1) should have added scroll option to the events’ panel.
  • (2) The team main, team browse, and match invitation are working.
  • (3) Match invitation’s decline button does not delete the match from Match browse when one of the team owners decline.
  • (4) Preview icons after selecting one from list or uploading from local machine.
  • (5) Overall, the system is running and functioning.
Next, I invited a friend to test drive the system. I kind of notice at times where a scratch to the head and a face of confusing of what am I suppose to do next look. Anyways, here is the outcome:
  • (1) the scoreboard on the login page is great for people who do not have a login credential to get a small “preview.”
  • (2) Liked the whole personal profile managing system, it is like editing your own Facebook, MySpace user account.
  • (3) Commenting on a match lets users “turn up the heat” on the opposing team.
  • (4) The events panel should be scrollable, the list gets too long.
  • (5) There should be more images on the site, it looks a little bland.
  • (6) Link to a user guide should be included within the menu.
  • (7) Add a little more color to the current color scheme, it did not give a “kick.”
  • (8) Overall, the system is a new kind of “game” that programmers might use. I do agree with my friend’s observations and opinions, testing driving the system were somewhat straight forward.

Well, it was a great semester in Dr. P. Johnson’s software development 2 class. Here is my Top Five Lessons Learned from ICS 414:”
  • (1) Working with a team of eight programmers is a lot harder than with four and two programmers.
  • (2) Do not start programming late, input some hours into a program everyday.
  • (3) Fixing merge conflicts when uploading to main repository is a pain in the butt.
  • (4) In the team, there will be someone who is willing to parallel/pair program with you late in the night.
  • (5) All team members have their own style and habits, but we all should communicate with others and follow a standard so there will not be a “silo” effect on the system.

My software development habits have changed a lot – now I know what “siloing” a system means – where people do not communicate with each other, causing people to not be productive and difficult to achieve milestones. Program earlier in the week, so there will not be a late night session at a library. My strength is that once I get the train rolling, then I am on it. My weakness is that the first couple of minutes, I do not know what to do, or I get distracted by other things. I will be working on staying focus and get the trains rolling. Overall, it have been a great experience to work in a team, meeting milestones and deadlines, having the experience on what it is like when a deadline is not met, and programming in a big project like this one.

No comments: