Application dependency mapping is software that reads every part of a large, old system, in every language and layer, and draws how its parts fit together and where they are fragile. It is also called software intelligence or application discovery. Companies use it before they move an old system to new technology, or before they rebuild it. The industry calls such old systems legacy systems.
Why is this so hard to know? A system that has run for 25 years may hold millions of lines of code. It may mix COBOL programs on a mainframe, Java programs, procedures stored inside the database and screens written in older languages. The people who wrote it have often retired or left. The documents, if there are any, are out of date. Nobody knows for certain which program changes which data.
The mapping tool reads the source code from the code repository, together with the database definitions. It follows every call: this screen calls this program, which calls that program, which writes to this table. It then draws a map. The map shows each part, which parts depend on it, and which parts are risky to touch. A part is fragile when many others depend on it, or when its code is very complex and has no tests.
Consider a public-sector insurer in Kolkata that wants to replace its policy system. The system has 3,200 programs and 900 database tables. Before anyone writes new code, the team runs the mapping tool for two weeks. The map shows that one program, which calculates the premium, is called by 410 other programs. It shows 37 programs that write directly to the main policy table, many more than the team expected. And it shows 600 programs that nothing calls any more. This dead code does not need to be rebuilt at all. With the map, the insurer splits the work into 12 smaller projects. It moves the premium program last, with the most testing.
Mapping matters even more when AI does part of the work. An AI coding agent can rewrite a program quickly, but it needs to know what else depends on that program. The map gives it that context. Banks that replace their old core systems face the same question, as the page on core banking modernisation explains.
How is mapping different from developer productivity metrics? Both look at code from above. Mapping studies the structure of the system. Productivity metrics study the changes that engineers make to it.