I make apps. I was converting a web app to cell phone app, and it was around 100,000 lines of code with the game + 2d level editor. I don't think it was any super achievement, but just something a guy like me can do in about a year.
I think if you want to account for all sorts of things like weather, fuel of the planes cycling in the sky, collision pathing avoidance, and so on, it might be very complex. You factor in some functionality you can automate to make air traffic controller's lives less stressful, and I'd think the software could get bloated. 2 million lines sounds like it isn't bloated at all. It sounds right about the right number for next gen air traffic control software. A bloated 20 mil+ line of code would sound like they're trying to automate more than they should be instead of relying on air traffic controller's minds. 2 mil is good to start, see what they like, and move on from there.
Those air traffic controller guys have been on their toes stressing out for decades! Hopefully they should be able to relax a bit, get a feel for the automation, without becoming useless in case of computer failure(I'd make them run drills a few times a year with some hardware/software down).
Barring any stupid bugs: What is nice is that this software can be tested and see if the air traffic controller guys can be happy. If so, have them also be given a end user evaluation observation and see if there is more to be done in the next update. The cool part is you have modernized code that you can just keep updating moving forward. Unlike stuff written 40 years ago, this code should be maintainable and updatable if written by a competent crew. Giving the air traffic controllers a break is long overdue.
What would be interesting is if both systems can run simultaneously in case of emergency or some sort of system failure. Give this new system a breaking in period of about 4 years before worrying about scrapping the old system fully. Anyway, that's what I'd do.
To me, 2 million lines of code sounds good. That's about 20,000 man hours. 20 man years on 20 hour work weeks(you shouldn't expect programmers to just code non stop, give them breaks). If you're paying the coders 150,000$/yr, that's only 3 mil you pay the programmers which is basically free in terms of how important improved air traffic control automation is direly needed.