Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


The purpose of this page is to give an overview of the EnforcerNG design, design decisions, and implementation details. 

Future work on EnforcerNG

A decision was taken to re-factor the entire database layer in March 2014. Here are some suggestions for how the re-factor could be done:

  • It is recommended that design documents are added to this page describing from an architectural basis:
    • the architecture of the system immediately prior to the re-factor and the
    • the proposed design for the re-factor
    • the actual design after the re-factor
  • It is also proposed that a review team of at least 3 developers is involved in the re-factor as it progresses. This is to reduce the risk of 
    • a single developer making design decisions in isolation
    • ending up with a component that is only well understood by a single developer, which is clearly a risk for the project
    • sufficient documentation not being produced
  • It is recommended that as many regression tests as possible are enabled before the re-factor is done to provide as much automated regression testing as possible
  • It is also recommended that the benchmarking tests are improved and re-run as each of the stages of the re-factor are completed to ensure that the previous levels of performance are met or exceeded. 

Enforcer NG (Q4 2013-Q1 2014)

Enforcer NG 2011-2013

This section contains documents generated in the developmet done mostly during 2011-2103: