Non-functionals

Performance

Todo

Performance is not measured yet.

Coding style

We’ve defined a relatively strict coding style, and have committed to also convert existing code and new changes to this format.

Testing

We use Google Test. Tests are already operational, but could use some more structure. More tests would be nice.

macOS support

We initially had lots of troubles for macOS, mostly related to the ability of specifying the random generator(static and non-static min/max methods). But these problems are now solved. We no longer use polymorphism for the random generator. Instead we use a templated attribute of the population generator to specify the random generator. We chose to use the standard random generators (random library) because of the extensive documentation. Moreover the random generator is no longer specified in the XML config file. We now use the commandline interface to indicate which specific seed and which random generator you wan’t to use.

Continous Integration

At first, we misunderstood the requirements related to CI. These requirements are relatively in Jenkins, but our Git Workflow (which we’re very fond of) is thightly integrated with Travis.

As a solution, we’ve properly divided the build and run steps, and provided a much cleaner job log that gives you an instant overview of what tests failed.

Documentation

We host the documentation, for both the report and the user manual, on readthedocs.io. Since our documentation will rarely get printed, it makes sense to focus on web first, and pdf second. However, readthedocs.io still provides pdf’s.

We plan to eventually also put the reference manual (generated by doxygen) online.