Software projects use dependency management tools (like Maven or Gem) to integrate frameworks and libraries. As these artifacts depend transitively on even more libraries it is necessary to become aware of these complex dependencies and to be able to control them. The main challenges here are to keep track of changing relations between artifacts, version incompatibilities and licence issues.
As these complex relations span a huge dependency graph, a graph database fits as a perfect tool for storing and analysing this data. In this session we show a possible solution using the Maven Central Repository as example. You will see how to model this domain in Neo4j. We will show how Cypher queries can help to answer questions about versions, (in)compatibilites and licenses. The audience should have a basic understanding of graph databases and software dependency management to be able to follow the examples.
See the video on Vimeo!