Development Environment

The development environment section allows you to summarise how people new to your team install tools and setup a development environment in order to work on the software.

Intent

The purpose of this section is to provide instructions that take somebody from a blank operating system installation to a fully-fledged development environment.

Structure

The type of things you might want to include are:

  • Pre-requisite versions of software needed.
  • Links to software downloads (either on the Internet or locally stored).
  • Links to virtual machine images.
  • Environment variables, Windows registry settings, etc.
  • Host name entries.
  • IDE configuration.
  • Build and test instructions.
  • Database population scripts.
  • Usernames, passwords and certificates for connecting to development and test services.
  • Links to build servers.
  • ...

If you're using automated solutions (such as Vagrant, Docker, Puppet, Chef, Rundeck, etc), it's still worth including some brief information about how these solutions work, where to find the scripts and how to run them.

Motivation

The motivation for this section is to ensure that new developers can be productive as quickly as possible.

Audience

The audience for this section is the technical people in the software development team, especially those who are new to the team.

Required

Yes, because this information is usually lost and it's essential if the software will be maintained by a different set of people from the original developers.