UML in game design?

Started by
9 comments, last by LilBudyWizer 18 years, 5 months ago
In doing general applications I find that UML, or similar modeling methods, seem to really speed up development time. Do any of you actually use UML?
--before honor is humility--
Advertisement
Quote:Original post by JayeAeotiv
In doing general applications I find that UML, or similar modeling methods, seem to really speed up development time.

Do any of you actually use UML?


Why not? UML is great for detailing complex systems before actually writing any code. The problem with game development, unlike other IT industries, is that the features of the game at the first stages of development and the ones on the final product are sooo different that you can't use UML to design an entire game beforehand. But some diagrams are great to explain mechanisms in meetings and stuff. In short, use UML modeling on specific features when you feel the level of complexity is high enough to justify it.
I've been using UML since freshman year of college (a while ago). I think its completely possible to design a complete game beforehand using UML. The problem with the game industry seems to be a mixture of poor software engineering skills (inflexible designs) and rampant feature creap.

A properly designed game (or any other type of software) should leave things very modular so that any features being added don't change the overall design much. That being said, the industry as a whole should learn to plan ahead better, as far as features go, and stop being distracted by every shiny new feature that they want to add (its kind of like a case of undustry wide ADHD). On top of having an easier to implement design, stopping feature creep would, itself, speed up game development. Anything that speeds up the development process decreases project costs and increases the chance that the project will actually get finished, thus avoiding another contribution to the massive pile of dead projects created by the game industry (lorded over by that king of dead projects, Duke Nukem)

-Daedalus
DM's Rules:Rule #1: The DM is always right.Rule #2: If the DM is wrong, see rule #1.

Yes, in our company most of us use UML in the design phase of the game. It's quite useful, not only for yourself, but to other people that reads your application's arquitecture/design documents.
Quote:Original post by EwIckq
Why not? UML is great for detailing complex systems before actually writing any code. The problem with game development, unlike other IT industries, is that the features of the game at the first stages of development and the ones on the final product are sooo different that you can't use UML to design an entire game beforehand.


This is an interesting point that I've been thinking about a bit lately. In other industries this would be called "feature creep". Why is it that in games it is taken for granted that things will change all the time, right up until the end, but not other industries? Surely it should be possible to describe a game using UML beforehand, or at least a majority of it. Of course, in games you might also require a higher level of prototyping of systems (to test, for example, controller schemes and such).

cheers
sam
'Beforehand' has nothing to do with UML.
That is all about iterative and incremental development.

UML is just a way of jotting it down.

Cheers
>other industries this would be called "feature creep". Why is it that in games
>it is taken for granted that things will change all the time, right up until >the end, but not other industries?
Good question.

You can construct many things beforehand - especially the technical
areas (sound, precaching, texturemanaging, ...) but where you'll
get into problems is the game-logic area.

In this area the 'fun' part plays an important role - and you can't know
if a feature is fun - until you try it while playing. Some features look
great on paper, but only frustrate when you play it.
... and this is where the iterative part comes in :)

Maybe also because software engineering is a relatively young discipline.
In other areas, like construction, it's easier to see beforehand
if the design meets the requirements - we've built buildings for hundreds
of years, so we know what we want and how it should look.

Anyway, I really dislike "liquid design documents" :)
visit my website at www.kalmiya.com
I'll probably start using more UML in my games. It makes much more sense. And when the game logic does need to be changed, before programming yourself into a hole, why not go back to the drawing board and change the diagrams to make sure it fits properly?

Most of my peers at work think I'm a naive idealist of sorts, oh well.
--before honor is humility--
Hi,

The problem of UML is that when you're quite inexperienced in the industry (as I am) it's difficult to use it before actually starting to code. Here, I generalize what I think (and what many of my friends think ^^) :
When you don't have much experience, you draw your UML diagram, it's fine, your architecture seems pretty good, evolutive, etc. But once you start coding, you realize that a lot of stuff can't be done the way you thought. So you need to re-think the architecture, etc. It always end up like that (for me at least :/)

I think that to write a good UML diagram and plan your game architecture beforehand, you have to actually have a good experience of game development to be able to see where the flaws are, what is possible and what not, etc.

Only my opinion ^^
>And when the game logic does need to be changed, before programming yourself
Usually it's not a matter of "when" the game logic needs to be
changed, rather a point of "how often".

Combined with tight schedules this usually leaves big chunks of unused
code, and pieces of quick-hacked-in code, where code-quality has a direct
relationship to "days-remaining-to-release" :)

visit my website at www.kalmiya.com

This topic is closed to new replies.

Advertisement