Software quality

Cygnet software development, like all Cygnet client work, is carried out under a stringent quality system. This influences the overall processes and the day-to-day running of our software projects.

Our quality system helps us to correctly define your requirements and meet these requirements, on time and on budget.

At a practical level, our software development quality system includes:

Quality Plan
Every project includes a quality plan which specifies the management of the project, the deliverable items, testing regime and acceptance criteria. The quality plan is our promise about how the project will be run.
Different projects require different levels of documentation. At a minimum this usually consists of design documentation, and test documentation, which is our agreement of how we will prove that the software does what it is supposed to do.
Source Control
All developed source code is stored using Git, a revision control system. This maintains a complete historical record of changes to the project and allows us to keep control of parallel development lines. It keeps precise track of who has done what.
Issue tracking
We use Bugzilla for software issue tracking. This is used to track feature requests, faults and 'todo' items, both during development and after deployment. It's how we know we haven't missed anything.
Continuous integration
A continuous integration (CI) server (we use Jenkins) rebuilds a software project every time somebody checks in changes to the revision control system. CI acts as an additional quality check, running automated tests and analyses on the code, and flagging up problems as soon as they occur. [C]