= Blueprint - Template = [[TOC]] !BluePrints may begin as a rough collection of ideas, but ideally should be developed into formal documentation to support the development of new features. !BluePrints are best developed collaboratively through several iterations. You can just start with some bullet points, discuss the idea with others and then elaborate. If you include links to external resources, please remember to describe what (contents+format) they contain. '''Tip:''' Keep the !BluePrint as clear and simple as possible - while still providing enough details to clearly communicate the features and design == !BluePrint Template == Copy and paste this into the wiki editor for a new page, then fill in the sections: {{{ = !BluePrint: = [[TOC]] == Introduction == == Stakeholders == Tip: Engage these stakeholders in the development of your !BluePrint. == User Stories == <* Who the user is> <* What they want the solution to do for them?> <* Why they want it to do that? (goal)> wants the solution to so that .> == Requirements == === Functional === === Non-functional === http://en.wikipedia.org/wiki/Non-functional_requirements === Interoperability === === Standards === === System Constraints === == Design == === Data Model === (e.g. EER or class diagrams) === Workflows === === Site Map === === Wireframes === === Technologies === == Current Implementation == <*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> == Planned Implementation == == Future Extensions == == Outstanding Questions == == References == ---- BluePrint }}} == Eden Development Model == - We could look at following a [http://behaviour-driven.org/BDDProcess Behaviour-Driven Development] style to formalise requirements whilst still being [http://en.wikipedia.org/wiki/Agile_software_development Agile] (e.g. using tools like [http://www.codeplex.com/pyspec pyspec] or [http://pypi.python.org/pypi/PyFIT/0.8a2 PyFIT]). - Joel Spolsky has a good write-up on [http://www.joelonsoftware.com/articles/fog0000000036.html Why to write Functional Specs] & [http://www.joelonsoftware.com/articles/fog0000000035.html How] ---- Also see: * [BluePrint BluePrints] * BluePrint/Guidelines