Many developers work on a few projects at once and are not aware of all other teams’ work. To have a full picture of all software dependencies, they should analyze all projects’ candidates which have direct or indirect relations with their work and note down each dependency which may cause conflicts. It is not trivial for a single project but it may become almost impossible to accomplish, and even harder to maintain, over all available dependencies.
Integrating Pathfinder analysis in the CI chain ensure all projects dependencies are gathered and sent to the server to be processed and updated, while the graph visualization interface provides an immediate feedback on many-to-many relations across all possible dependencies.
Moreover agile developers may create additional development branches over the code to isolate their works or to experiment new ideas. This approach gives birth to “branch-packages” containing such experimental code which should be tracked carefully since not production-ready.
In one glance Pathfinder provides useful informations about your project’s dependencies. Nodes color allow users to distinguish types of software dependencies and their status. They can focus their attention on areas which are under development or comes from separate development branches:
- RED artifacts are the SNAPSHOT packages, the ones which need the most care, if you are a developer or a configuration manager. Keeping them under control and being sure your release package doesn’t contain any of them is crucial.
- YELLOW artifacts are the BRANCH packages, which means any stable artifact which doesn’t respect the standard regular expression of Maven versions. They still need some care to make sure they are stable code and not some Release Candidate or even worst, feature branches.
- BLUE artifact are well-know standard release code, you can usually trust them.
The Pathfinder interface built with linkurious.js makes it easier to accomplish tasks like graph filtering, impact analysis or dependency analysis.