Game Development Reference
Last, discuss workflow processes that will be used, such as which document con-
trol and versioning system(s) will be used, as well as how the project will be backed
up and at what time intervals.
Every software application, in general, requires a certain level of testing. Tools that
enhance workflow productivity or produce game content require an extra level of
consideration for quality assurance, as a faulty tool can harm productivity or pro-
duce corrupt game content that requires time to fix or redo.
It is important to outline an environment suitable for testing, and it is recom-
mended that this environment not be shared with the development environment.
Using a unique staging environment allows testers and developers to locate con-
flicts with missing dependencies, hard coded values, or system variables, and other
issues that could lead to deployment problems. It is also advisable to periodically
rebuild your test environment to make sure that other issues do not slip through
before staging deployment.
The staging environment should typically mimic the production environment,
and only have the absolute necessary software and libraries installed. Never install
development software in the staging environment or do any modifications there.
Fully uninstall your application after testing, modify the source in the develop-
ment environment, and redeploy your application to the staging environment.
This may seem like a trivial and inefficient process, but doing so will save you a lot
of headaches during production deployment.
The staging environment should also contain a relatively diverse range of hard-
ware and software configurations that could potentially be used in the production
environment. If the application requires 3D acceleration, be sure to test a variety
of graphics cards, especially older cards that do not support the features your
application requires, like a programmable pipeline, for example. Be sure to test
configurations that are guaranteed to fail, and observe that all fatal errors are han-
The Production Environment section of the software development plan outlines
and describes the environment in which the final application will run. Some tools
will only be run on one type of configuration or computer, which often is the case
when the tool is developed for internal use. With a tool developed for external use,