[MUD-Dev] MMORPG/MMOG Server design

Ted L. Chen tedlchen at yahoo.com
Tue Mar 4 23:38:41 New Zealand Daylight Time 2003

J C Lawrence wrote:
> ceo  <ceo at grexengine.com> wrote:

>> If you then stop, take a step back, and try and rationalize each
>> of these bits in each of the other two components, it's time to
>> take the YAGNI approach. The advantage is that you are using
>> YAGNI to bridge between what are actually (or should be)
>> exceptionally well-defined and well-understood components; this
>> means that you're likely to be forced into a pretty decent result
>> after only a few iterations.

> I've found YAGNI valuable in the opposite direction: from the
> trivial components on up.  It encourages in me a clearer
> understanding of which bits actually are skeleton, are factually
> essential (and not just wanted/liked), and a much better
> understanding of what the dependency graph is for the desired
> functionality (as versus the implementation).

On a slight tangent, I've noticed that using UML in the early design
stage tends to be a good way to force a reality check and use YAGNI.
Any attempt at adding 'future' interfaces clutters the diagrams.
Only things that really should exist remain in any effort to
communicate cleanly using class/object diagrams.

> Given that specifications in research projects (anything in a
> field which contains significant mysteries) will creep by
> definition, and that feature compleat is a function of the
> learning curve in defining a project which in turn is a function
> of the learning curve of researching the space...means you're
> dealing with human perception and second guesses.  <shrug> Or am I
> merely being too cynical again?

Nah, feature creep happened on the last research project I worked
on.  After so much work has already been put into developing, say a
test bed, it's always very enticing to say 'just a few more hours of
work and we can measure XXX as well'.  However, it appears that in
all but the worst projects, the development happens asymptotically.
That is, near the end of the project, features that would be 'nice'
to have will have almost no impact at all on the research, hence you
can easily cut it from the list.  Besides, you need to save a few
bulleted items for the next grant proposal.  :)


MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list