CARDA Systems Development Methodology

CARDA is developed using a structured, risk-aware methodology designed to ensure reliability, usability, and continuous improvement. Drawing on principles from aviation Safety Management Systems (SMS) and modern software development practices, this methodology emphasises clarity, accountability, and incremental delivery.

1. Development Philosophy

CARDA is built on a pragmatic philosophy:

  • Build only what is needed — avoid unnecessary complexity
  • Deliver early, refine continuously
  • Make systems observable and measurable
  • Prioritise reliability over novelty

Development is iterative, but not chaotic. Each iteration is purposeful and aligned to operational outcomes.

—

2. Lifecycle Model

CARDA follows a structured, iterative lifecycle aligned with the Software Development Life Cycle (SDLC), adapted for operational systems.

Stages:

  1. Define — clarify problem, users, and outcomes
  2. Design — structure data, workflows, and interfaces
  3. Build — implement functional components
  4. Verify — test against requirements and edge cases
  5. Deploy — release into controlled environment
  6. Monitor — observe performance and usage
  7. Improve — refine based on evidence

Each stage feeds the next, forming a continuous improvement loop rather than a one-off delivery.

—

3. Risk-Based Development (SMS Alignment)

Development activities are prioritised and managed using a risk-based approach:

  • Features are assessed for impact and likelihood of failure
  • Higher-risk components receive greater design and testing effort
  • Changes are evaluated against potential unintended consequences

All development aims to reduce risk to As Low As Reasonably Practicable (ALARP).

—

4. Core Development Practices

4.1 Incremental Delivery

Functionality is delivered in small, testable increments. Each increment must be:

  • Usable
  • Testable
  • Reversible if required

4.2 Evidence-Driven Decisions

Decisions are based on:

  • User behaviour
  • System data
  • Observed issues

Assumptions are validated quickly and adjusted where necessary.

4.3 Simplicity First

Solutions favour clarity and maintainability over complexity. If a system becomes difficult to explain, it is redesigned.

—

5. Quality Assurance

Quality is built into the process, not inspected at the end.

  • Code Review — ensures consistency and correctness
  • Functional Testing — verifies expected behaviour
  • User Testing — confirms usability and clarity
  • Regression Testing — prevents reintroduction of issues

Testing effort is proportional to system risk.

—

6. Change Management

All changes are controlled and traceable:

  • Changes are logged and described
  • Impacts are considered before implementation
  • Rollback options are maintained

Where appropriate, changes are released in stages to minimise disruption.

—

7. Just Culture in Development

CARDA adopts a Just Culture approach:

  • Errors are treated as learning opportunities
  • Issues are reported without blame
  • Focus is on improving systems, not assigning fault

Deliberate negligence or reckless behaviour is not acceptable, but honest mistakes are expected and managed constructively.

—

8. Continuous Improvement

CARDA is never considered “finished”. Improvement is ongoing and driven by:

  • User feedback
  • System performance data
  • Identified risks and inefficiencies

Enhancements are prioritised based on operational value, not novelty.

—

9. Tooling and Environment

Development is supported by practical tooling aligned with system needs:

  • Version control for traceability
  • Structured data models (ACF / database design)
  • Automated and manual testing approaches
  • Logging and monitoring tools

Tools are selected for effectiveness, not trend alignment.

—

10. Governance and Accountability

Responsibility is clearly defined:

  • Developers are accountable for implementation quality
  • System owners are accountable for operational outcomes
  • All stakeholders contribute to continuous improvement

Decisions are documented to ensure transparency and continuity.

—

Summary

The CARDA Systems Development Methodology combines structured engineering discipline with practical delivery. It ensures that systems are:

  • Reliable
  • Understandable
  • Adaptable
  • Aligned with real-world use

This approach reflects the core principles of CARDA and 2EARTH:

Make it make sense. Make it work. Make it reliable.