What is a software development brief?
A development brief is a short document that you make for your developer team. That covers the goals of the project, the strategic project vision and the key elements (features) that it must include.
The creation of this document ensures that both client and developer team have the same project vision (we talk about "big picture"). For a client the result of writing a good brief is that he can take look at his project "from a birds eye view". A good brief increases a probability of successful project ending.
The brief composition:
Overview
An overview summarising the project’s requirements or the goal that needs to be achieved. An overview should explain what the project is expected to achieve or what business problem needs to be solved. It should also explain why the project is being undertaken.
People
Who will be using the software? How will it be accessed? What are their methods of working, assumptions etc? Having an idea of who will use the final software will impact the look and the feel of the software and how it should be presented.
Specific features
Have you thought about any specific features you’d like the software to have? Was there a particular thought that triggered the idea’s development?
List in order any initial ideas or suggestions you have for the main features of your project. Let the developer know which elements of the project are essential, which attributes that would be nice to have and features that are less urgent and could come later. You’ve probably thought long and hard about your project and how it should all come together. That means (hopefully) you’ve probably already got a bag full of sketches, diagrams, graphic designs and so on that you could use to help illustrate your vision. Use them to provide greater clarity! Does your project need to integrate with any existing systems? If so, it’s important to brief your software developer as it could change how the software is built.
Delivery
What timeframe are you working with to get the project started and delivered? Do you have any restrictions? It’s also helpful to provide an indication of your budget, so the software developer can work within your practical constraints.