These notebooks demonstrate a "working backwards" approach to designing and implementing an application graph data model and queries based on a backlog of use cases.
The design process here is shown in "slow motion", with each use case triggering a revision to the data model, the introduction of new queries, and updates to existing queries. In many real-world design sessions you would compress these activities and address several use cases at once, converging on a model more immediately. The intention here is to unpack the iterative and evolutionary nature of the many modelling processes that often complete in the "blink of an eye".
Let's assume we're about to build an employment history application backed by a graph database. The application will store and amange details regarding people and the roles they have had with different companies.
We have an initial backlog of use cases:
Once we have a candidate application graph model, there are a couple of additional steps, which we'll not cover in this example
We'll design our model and queries in an executable fashion, using small sample datasets to cover each use case, and unit tests to validate our queries. These unit tests provide a "bedrock of asserted behaviour" that gives us fast feedback as we evolve our model and queries.