As a product owner and coach, one common question I often get is “how do you deal with cross team dependencies, like when Team A has to complete some work before Team B can begin theirs?”
If the room is silent after that question is asked, before too long somebody will likely suggest a “dependency matrix” or “tracker” or “gantt chart in MS Project” or the like. Do not let the room be silent for too long.
There are many possible solutions to this problem, all of them more effective that inserting an antiquated project management tool like any of the above.
1) Team A and Team B work together to complete the work starting with the prerequisite work (originally ‘assigned’ to Team A) and then moving on the post-requisite work (originally ‘assigned’ to team B)
2) Team B goes and works on something else, and Team A communicates to Team B when the dependency has been met. No need to “track” anything – Team A is full of smart people who will communicate their status to Team B.
3) Team B waits patiently for Team A to finish. They paint the office. Stock the beer fridge. Help on sales calls, research a new technology, put together a presentation, read a book, go to a conference, etc. And all the managers GASP at the underutilized capacity, but you as a smart agile manager know that you may indeed be optimizing the system by not trying to optimize individual teams.