wiki:BluePrint/Guidelines/Template

Version 2 (modified by Dominic König, 14 years ago) ( diff )

--

BluePrint: BluePrint

What is a BluePrint?

We use !BluePrints to capture ideas, requirements and design options for Eden components. This can start with a simple User Story (or a full Use Case)

It can then be mocked-up using Wireframes, using tools like:

BluePrints can be used by yourself or other contributors to:

  • develop and evaluate solutions
  • develop test cases
  • write documentation

Typically, a BluePrint would contain the following sections:

SectionContents
DescriptionIntroduction into the problem and general description of the suggested solution
RequirementsOutline of the requirements
Use-CasesDescriptions of use-cases of the suggested solution
DesignSuggestions for the design of the solution
ImplementationList of existing implementations

BluePrints are developed collaboratively and in iterations. You can just start with some bullet points, discuss the idea with others and then elaborate.

Tipp: keep the BluePrint as clear and simple as possible

We could look at following a Behaviour-Driven Development style to formalise requirements whilst still being Agile (e.g. using tools like pyspec or PyFIT).

Joel Spolsky has a good write-up on Why to write Functional Specs & How

Description

Start with a description of the solution you have, remember to include:

  • an introduction of the problem
  • a description of the stakeholders
  • overview of the architecture of the solution
  • important functionality to be implemented

Requirements

Outline requirements for the solution, typically including:

If you include links to external resources, please remember to describe what (contents+format) they contain.

Use-Cases

Describe the use-cases of the solution in detail, typically including:

  • actors and use-cases
  • activities (work flow) from the user's perspective

Tipp: a simple, fast and multi-platform tool to draw UML diagrams is UMLet (Java-based UML drawing tool).

Design

Describe the possible design of the suggested solution, typically including:

  • data model (e.g. EER or class diagrams)
  • interaction models and sequences
  • screen mockups and wireframes

It is absolutely reasonable (in fact - desired) to have alternative design options.

Implementation

Append a list of implementations of this BluePrint, each including:

  • a brief description of the implementation (date/time, name, design options chosen)
  • a link to the code
  • list of deployments of the implementation
  • links to case studies
  • short analysis of achievements/problems

BluePrints

Note: See TracWiki for help on using the wiki.