JBoss.orgCommunity Documentation
The diagram below explains the overall structure of the OptaPlanner source code:

The development philosophy includes:
Reuse: The examples are reused as integration tests, stress tests and demo's. The documentation images are reused as slides.
Consistent terminology: Each example has a class App
        (executable class), Dao (Data Access Object) and Panel (swing UI).
Consistent structure: Each example has the same packages:
        domain, persistence, app, solver and
        swingui.
Real world usefulness: Every feature is used in an example. Most examples are real world use cases with real world constraints, often with real world data.
Automated testing: There are unit tests, integration tests and stress tests. The test coverage is high.
Fail fast with an understandable error message: Invalid states are checked as early as possible.