Fork me on GitHub

Introduction


This website aims to standardise the way we do things. Some of our approach is derived from Open Source best practices, some from manufacturing and some from our own experience. The aim is that processes should make life easier, by reducing uncertainty. We want our processes to be lightweight and applicable either iteratively or linearly. Criticism and questions are encouraged, once you’ve taken the time to understand the reasoning for the current processes. We are aiming to establish the same default processes, rules and tools on all projects. This extends to standardising our approach for custom tools with Python + YAML + Markdown + Git. This set of documents specifies those defaults. Doing something else is only ok if the project/situation explicitly justifies a variation. Any variation needs to be documented in the location provided for in the project management template. Everyone is expected to know and understand what is in these process documents, to follow them where appropriate, and to help improve them.

  • Apply The Software Commandments
  • Identify risks on new projects using the Risk Management Checklist
  • At project start, use the Project Startup Checklist
  • Capture requirements using Requirement Gathering
  • This applies even if there’s no architecture to do, and even if requirements documentation is provided by the customer.
  • Refer to the Requirements Capture Checklist.
  • Describe architecture and design in Requirement Gathering.
  • Follow the Kanban guidelines and use Kanban for day-to-day task allocation, short term milestone planning and deliveries.
  • Write all documentation in markdown format, and keep it in Git along with source.