Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Is the software design process for a game similar to a non-game? Do developers create UML diagrams? I ask because of the iterative nature of game development, I wonder if creating a UML diagram would just be a waste.

share|improve this question
1  
Not an answer as it's an opinion. I think this question really depends on who you ask; and what the criteria for similarity are. My personal opinion is they are very different in terms of methodology and technique. There are things you would do in game development that you would never do in business software (and visa-versa). Take for example the level of abstraction that business system utilize - you would never do this in game development. Games use approximations; which you would rarely use in business software. –  Jonathan Dickinson Jan 6 '12 at 14:11
    
Rule number one: If you're on a game development team and hear "UML" mentioned, run away. Quickly. –  smokris Jan 9 '12 at 20:32

5 Answers 5

up vote 8 down vote accepted

UML diagrams have 3 purposes:

  1. Something that university professors can teach their students so that it seems like software development is a universally well defined structured process, and not some cowboy field where everyone does things their way.
  2. Being a way of stalling when you want to look like you do some real work, or bureaucratize a process to slow everyone down. Not only does the creation itself take time, but the subsequent requirement that development follows the diagram can greatly slow down or even derail the work.
  3. Helping people understand complicated data structures.

Point 1 and 2 are by far the most common.

This mocking is not to say that you shouldn't plan, but your initial plan probably doesn't need so much structured diagramming that a software framework is required.

The most important things for a game I'd say is:

  • A list of desired features, and a note on what considerations should be taken when designing the core engine to make it possible to implement them all.
  • A rough estimate of performance and possible issues, you don't want to have to deal with structural performance issues when the game is halfway done.
  • A plan for the gameplay. Story, theme and artwork can all be tagged on later, they are not mandatory at this stage, but if you haven't got at least a sketch of what mechanically makes the game exciting to play you won't have any direction for the work.

If you do prototyping you'd probably want to first do a quick round of planning, then do the prototype, and then make a more thorough plan.

As the work progresses the plan should continuously be adapted as new knowledge about the game is gained.

@everyone Is there anything else the planning list should contain?

Flamebait disclaimer: UML is a tool, some people regard it as a solution, which is wrong and potentially dangerous. There is noting wrong about UML itself, only the way it is sometimes (mis)used.

share|improve this answer

Yes, software design for games is very similar to non-games -- which is not to say that game developers create UML diagrams (because not all software design involves UML diagrams).

Software design is a very varied process and the methodologies employed will differ widely between companies and individuals. But at the end of the day, games or non-games, it's all just software. The requirements may differ but the fundamentals are similar.

share|improve this answer
    
I wish more people would realize this and take your point to heart. There is too much commingling of "game design" and "software design." –  Patrick Hughes Jan 4 '12 at 2:47

Most game development teams have been doing Agile since before Agile was a buzzword.

share|improve this answer

I think game development adds one step to traditional software developent, and that is creating some game art and sounds to demonstrate the look and feel. Since this is much more important then in regular software. In developing regular software you could work with mockups to show wich elements are positioned where and when on the screen, this would work for the gui part of the game, but the overall look and feel is best demonstrated using real art.

Most features in a game could be put in UML diagrams, entity diagrams and a database diagram (i think most games use some sort of internal database system for all the data)

share|improve this answer

I would say that game development is very different from software development. Mostly because game are artistics, while software aren't.

Actually I think it's closer to an animation movie than a software. Don't forget you're doing it for fun.

But I may be wrong, because I've never worked professionally in any domain.

share|improve this answer
    
Games are software, there is a lot more about games than art, games are a big mix of mathematics, physics, engineering, and then art. –  Matt Jensen Jan 31 '12 at 0:43

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.