Jump to content


Photo

Do We Use Uml?


  • This topic is locked This topic is locked
2 replies to this topic

#1 Guus

Guus

    Sergeant

  • Forum Members
  • PipPipPip
  • 34 posts

Posted 12 May 2003 - 09:36 AM

Are we using some sort of modelling language like UML to support software developement?

yes? where can I find the diagrams?
no? why not?

#2 red knight

red knight

    Xenocide Project Leader

  • Xenocide Inactive
  • 3,310 posts

Posted 17 May 2003 - 12:19 PM

The plain truth about UML is that most of the time in projects that require UML (specially for managers) the designers design using their own methodology and then after the work is done they do the UML design for managment. And another truth is that nobody ever takes the time to keep that book, as Stewart call it, updated. Who would ever keep updated (not to mention correct) 400 Pages of nice, costly to correct graphics. A general blueprint is needed and a statement of what the subsytem might work, after that is domain of the designer to "DO A GOOD WORK" (that was a shamelessly quote of an american astronaut that had addressed to the engineer team that was going to put him on orbit).


How do we communicate between developers what the interfaces between different classes/object in the game look like, which responsibilities what classes have, and more questions like those?


First you have to break down the whole system (or what you already know of it) in separate subsystems... I'm gonna address the example with the engine (the one that is already posted and we are working to finish working on GCC or whatever compiler suit we will end up using)....

A game engine is composed of several key subsystems, The Renderer, The object Scene management, Sound Managment, Texture and model management, Input Device (with limited output like Force Feedback Joysticks) management, etc...
Each of them has a very specific part in the play (even though some are more separable than others), the important is to highlight what that specific subsystem will address, what functionallity is intended to give to the system, which ones are the key entities, how the whole mechanism will blend with the already known subsystems, limitations, exceptions, functionality, if needed specific hard control sequencies, contraints, etc...

If you could respond in a simple but pretty detailed way all that, and you were able to put it on paper and others can read it (dont restrict to prose here, if you need graphics use them, theres nothing wrong about it instead it is encouraged*) and ask you detailed questions on all of that, you are on the right way. If questions get messy and you cannot understand most of them, then there is something that is not completly right, maybe is not the system inself is just the spec of it....

After that you propose a header file (not implementation allowed, most of the times even without attributes defined) clearly specified and well documented for review. Given that you gave the outline of how the system you are designing will behave the header file with the internal docs would be more than clear to understand... after that the system design is fleshed out to get deeper on the design and correct or address specific implementation dependant stuff, but the high level spec has been already done (with its documentation too in just one simple step)...

After that the idea is to start working on the subsytem's features that you can tackle in no more than a short (1 or 2 weeks) time with little or no help at all. Then send it to the mailing list for peer review.

When the peer review is done the code faults are the team's faults cause you maybe forgot an if, but we knew the spec and we didnt see it in the peer review so it is our fault too...

For instance i had been working with a friend in the network library that will implement most of the features we had been speaking of in the thread about the network layer functionality. This week i am not going to be in my home (i am in my parents 700Km away) however we think we will have an outline and a header file ready for review in maybe 1 week after i come back...

The most important thing is that when you write down all your ideas for the subsystem you are designing, you will end up understanding far better the scope of what you really want to do and can do in a limited time...

Any question, critic, and everything is welcomed as always...

Greetings
Red Knight

EDIT...
* Even if that means some kind of UML based diagrams. But be careful dont mistake using kind of UML diagrams is not doing UML...
Sourceforge Nick: flois - Federico Andres Lois
Visit my blog at: flois.blogspot.com

Posted Image

Pookie cover me, I am going in.

#3 red knight

red knight

    Xenocide Project Leader

  • Xenocide Inactive
  • 3,310 posts

Posted 28 June 2003 - 10:36 AM

I had pin this thread cause everyone involved in programming MUST use the procedure specified above.
Greetings
Red Knight
Sourceforge Nick: flois - Federico Andres Lois
Visit my blog at: flois.blogspot.com

Posted Image

Pookie cover me, I am going in.