Introduction
Retrospective
Mistakes
There are a few glaring mistakes or problems that were overlooked
during the course of the development of Minirel II. An improved error
protocol was not enforced until late. Communication of special conditions
and errors was not handled until late and in a haphazard fashion. This
communication should have been done when the interfaces were planned and
before any code written.
Globals identifiers (in the form of C enumerated types) were used
by every group. This redundancy caused numerous headaches when trying to
pull the different systems together.
The project team should have mandated that every sub-group provide
a single-user and a multi-user version of their code.
Our Role
Project Managers
Our role gave us an invaluable insight into the project, however,
we were not knowledgable enough to easily grasp all of the problems as they
arose. We found ourselves trying to master the entire system, as well as
answer general project questions. In order to effectively deal with
problems as they arose, we needed to better versed in the real implementaion
issues for every one of the systems. This proved to be unacheivable. While
we were able to clarify and answer problems that arose in certain layers
(most notably, the access methods and front end), we were often "a step
behind" the concurrency groups. The result was that issues were often resolved
during conversations between the team and the instructor with ourselves having
a vague understanding of the issue at hand. In this respect, we were not as
helpful as we had hoped to be.
On the other hand, we were able to make sure that no glaring problems or
miscommunications existed between groups. When they did arise, we were in a
position to offer suggestions or better yet, answer the question outright.
Attending all of the project meetings is a must for anyone in the role of
project manager.
One of the negative side effects of our role was that we placed a greater
emphasis on learning what the issues were that individual groups faced, and
allowing broader points to be deemphasized. Errors, global data types, and global
variables received less attention than they needed. Confusion at the end of the
semester is an indication of the importance of these details.
Another problem for our team was the catalog work. The reowrk of the catalog
turned out to be a huge task. The utilities were also non-trivial and required
a great deal of time and energy which distracted from other aspects of the
project.
Suggestions for future:
In the future, project managers should be better placed to deal with problems
BEFORE they arise. The managers could be: 1) someone who has taken the class
before and is doing a 990 or 999, 2) a TA, or 3) they should know well in
advance, how the system will work and what issues are at stake.
Conclusion
While Minirel II is incomplete, the subsystems are all in good shape.
Time constraints prevented us from pulling the whole project together, but with
additional time and energy, it is acheivable. There do not appear to be any
large unresolvable issues in the way of having Minirel II operate as
the multi-user it was designed to be.