Overall Plan of Development
[Documents/01-OverallPlan.txt]
Ernest Prabhakar, September 23rd, 1993

These are my basic ideas on how to go about this.  If everybody agrees
with (or ignores) me, I'll proceed along these lines.  If anything
doesn't make sense, let me know.

The goal, as mentioned in the charter, is to develop:
	- protocols,
	- classes
	- nibs/pallettes, and
	- example games
(roughly in that order)
to aid in developing computerized wargames 

To do this, I believe we should do the following:

1.  Define what what we mean by a "wargame", to make sure we are all
talking about roughly the same things.

2.  Define the different things our wargame objects need
to do, so we know which problems we need to solve.  These will
eventually become our protocol declarations

3.  Create classes that use implement those protocols.  These serve
as testbeds, as well as potential base classes to distribute as part
of the kit.

4.  Write supporting classes, pallettes, and nibs.

5.  Build and test complete games using the above.

And most importantly.

6.  Repeat
  
I expect this to be an iterative process, where we start with a simple
case and work our way up to more sophisticated systems.  We need to
constantly balance between oversimplifying and biting off more than we
can chew.  My personal philosophy is to overdesign (go for
generality), then underimplement (test a small piece).  As we increase
complexity, I am sure we will soon discover that our earlier ideas
were too narrow, and have to start over from scratch.  That's okay, my
philosophy about this project is that getting there is half the fun.

I have spent a lot of time thinking about how things should work and
how they could be implemented, so I will probably provide a steady
stream of ideas to the group.  However, just because I've thought of
something does not mean I am wedded to it!  If you have a better idea,
even if radically different and still vague, post it to the list to
let people beat on it.  And feel free to tear my idea to shreds, as
long as you do it constructively.  I want discussion and dissent,
otherwise there would be no point in the list!