Before you report
Cross-Project Dependency Reconciler
Lay several projects' dependency logs side by side and find where they disagree: deliveries planned after the need, dependencies only one side knows about, and work cancelled while someone still waits for it.
Open each project’s dependency log in turn, or one register that names both projects on every row. Every file is read inside your browser; nothing is uploaded.
A project's dependency log
Drop a spreadsheet here
One row per dependency: what it is, the other project, which way it points (needs from, provides to), when it is needed and when it will be delivered. Add each project's log in turn, or one register that names both projects on every row.
Two logs, two versions of the truth
A dependency between projects is written down twice, once by each side, and the two copies drift. The receiving project needs the feed by the 2nd; the providing project has it planned for the 13th. The receiving project logged the dependency in the spring; the providing project never did. The providing project descoped the work last month; nobody told the project waiting for it. Each log is right about itself. The problems are in the gap between them.
How the logs are paired
Each need in one project’s log is matched with a delivery in the other project’s log: the same two projects, and the same ID or a description sharing most of its words, since the two sides rarely call it the same thing. Both wordings are shown. The need-by date comes from the project that needs it, and the delivery date from the project delivering it.
What is found
Deliveries planned after the need, with how many days late. Dependencies only one side has written down: the ones the providing project may not know it owes are the dangerous ones. Work cancelled while another project still needs it. Needs already past with nothing delivered. The two sides disagreeing about the need-by date. Projects named in the logs with no log of their own. And groups of projects that all wait on one another, where a slip anywhere can come back round.
What this does not do
It compares what the logs say; it cannot know about a dependency neither side wrote down. The pairing works on words, so two dependencies worded completely differently will not be paired, and the page shows both sides so you can see what was matched. It does not decide who moves: that is a conversation between the two projects, with the list in front of them.