Monday, May 11, 2009

It's Never Over Till It's Over

No.... TeamMS, we will get you! We will make our comeback just you wait and see.

While I get worked up occasionally seeing the score between all of our matches in Devcathlon, I have to wonder what flaws are in the system. Does this score really reflect the difference between our teams? If it does, maybe there's a loophole I'm not aware of that allows me to cheat in favor of my team? Also how does system usage feel? All of us have been working on this so much, we haven't really stepped back to see what could be improved.

Flaws in the System.

Let it be noted, I was purely looking up such flaws to "improve" the system, not cheat to achieve my ultimate goal of winning. o.O

1. Teams are not locked to a set of members at start of match -- As pointed out by Zhou, a team can start a match even with pending member invites. This means that team members can join or quit a team at any point Got a crappy player? Ask him to resign. Got a potential strong player that hasn't accepted? Ask him to join immediately.

2. Event Score relation to User. -- From what I recall, the EventScores were never tied to a user. I question the scores, since there is no true way to trace which member triggered the award/penalty. I admit my team lost the NoMIAs event, no doubt. But PassTheBuild? I think there were a couple of individuals on the other team who may have triggered in a negative way.
But I don't have proof!

4. Not enough system messages. -- Creating a team/match with an identical name is not allowed. But no error message is ever displayed on the page. Only on the console. I think a console ouput panel for all pages would be a good idea. It will even applies when a match is started, or when events run.

5. Team Record not 100% working. -- This is mainly my fault. I only tested this with the initialized data. It seemed to be working with positive scores, not sure what the cause is. Weird that it's not working with negatives.

6. Score in scoreboard should be more apparent. -- It was difficult for me to know what the score was without screenscraping the page for that information. Typically scores are placed near the team logos on a traditional scoreboard.
User Evaluation

I showed the system to a friend. The good news was he was able to quickly grasp that the application was a game based on the way scores are presented. He liked the layout, describing it as clean and easy on the eyes. He liked the simplicity of the menus.

However, his main issues revolved around system messages not being obvious (e.g. user needs to login). He also thought display of information could be cleaner. He didn't like how long the list the list of match events/explanations was and suggested using a vertical scroll for that panel instead. He would like to see simple things like "see details" to be displayed in one line instead of wrapped in its panel when there's a long match name. He also wished there was slightly more graphics to sort of "wow" him.

He found it somewhat funny that teams could be in negatives. It was something different but logical in respect to this game.

Top 5 Lessons Learned from ICS 414

(In no particular order)

1. Communication is key.

2. Working with a large group can be difficult.

3. Working with others can be helpful.

4. Everyone has something different to bring to the table.

5. High dependency on others' can be dangerous. Things can slow down if one falls behind. (similar to the "coupling" concept).

Who's that guy I see in the mirror?

I think this course really strengthened me in terms of dealing with reality. When you fail, it isn't as simple as just getting a low grade. You should get bashed because a client expects something working. We may not be so fortunate to have second chance opportunities. As far as improvements, I think I am more open to working with people on a regular basis. I found myself asking for pair programming opportunities. I don't know how many times I was at Sinclair library pair programming with Robin or Phillip.

Honestly, I think my programming skills are still somewhat unpolished, but I definitely feel capable. As far as what aspect I want to work on next, it may be to take more of a leadership role.

Wow. OMG! Phew. Sighs....

Well, that sums it all up right there. It was pretty unbelievable the different things we encountered throughout this semester. I can't say it was a great roller coaster ride. It was filled with more valleys than peaks. But I don't regret being a part of the process. I think I learned something from each individual and made some friends along the way.