Main Page
Title Page
Executive Summary
Project Overview
Installation Guide
Users Guide
Architecture Diagrams
Maintenance Guide


6. Post Mortem


6.1. What went right

It was a great help that three of the team members were living within 100 
feet of each other for several reasons. First it made having meetings 
simple, the scheduled meeting would start whenever the fourth person would 
arrive. He would simply knock on doors collecting members until everyone 
was present. This made it convenient for the three members waiting for the 
meeting to start, because they could be doing things in their room while 
waiting for the meeting to start.

Secondly it provided an easy way to get support. If you had a question or 
needed some help you didn't have to e-mail or call you could simply walk a 
few steps down the hall and knock on the door of the person you wanted help 
from. Being this close increased the overall communication between team 
members, which in turn helped the project proceed at a faster rate.

Another thing that went right and that can be easily overlooked is that we 
had no major disasters. Small problems popped up all the time but there were 
no things that we found it hard to recover from. In team projects with 
multiple members we should consider ourselves lucky that we had no such 
large-scale disasters.      
 

6.2. What went wrong

To put it simply, CVS and POSE.

The problem with CVS was whenever we did a CVS update, CVS would overwrite 
all the code that we had just written. We ended up rebuilding our repository 
several times try to fix this. We think we finally solved it by checking the
permissions of the files in the repository. It seems that one of the
undocumented features of CVS is that the repository keeps the permissions of
the file from it's commit so that a new commit is forced to overwrite it.

With POSE the problems was different. The problem with POSE was that it did 
not always emulate the Palm. Sometimes problems would show up in POSE but 
not the Palm, and sometimes problems would show up in Palm and not POSE. 
One problem was that of scrolling. Scrolling would work fine in POSE but 
when ported to the Palm it was a problem. Another problem with POSE was 
that when your program was loaded it would crash Pose, but when loaded 
into the Palm it worked fine.  


6.3 Lessons learned

We have a better understanding of how to set up and use a CVS repository.  
We also have learned possible problems that can occur with CVS and ways of 
mediating those errors.

One lesson all of us have learned during this project is the sooner you 
start learning the API the better.  We all looked at the API during last 
semester but we didn't truly learn the API until this semester.  This 
caused some aggravating reworks of our code and time delays on completion 
just trying to figure out how to implement a command using the API.
 
Similarly getting the development environment set up as early as possible 
would have been a help.  Without a good development environment on each 
machine it was hard to play with the hello world and see how to make it 
and break it.