We are always surrounded by legacy infrastructure—what accountants often call depreciating assets! Almost all assets depreciate, and businesses typically write off the value of such assets over a period. It's a common practice to see assets such as PCs written off the company books entirely after five years (the value of each year's depreciation can often be written off against taxes). Although these assets have no notional accounting value, they usually have to be used and managed for many years unless lease and refresh arrangements are in place.
This is my third in a set of articles dealing with legacy code (see Reference ), legacy data (see Reference ), and now legacy infrastructure. In this one, I'll discuss some of the issues facing IT managers tasked with looking after a nontrivial legacy network. Devices and software have to be kept running, and users have to be kept happy. Far from despairing of ever getting on top of a legacy network, you'll see that it's not too difficult to fashion some C++ tools that can help to automate some of the more knotty problems.
All technology becomes legacy infrastructure, including management system technology. Faced with managing a network, there are some simple steps that can get you started on the road to success. One of the most important first steps is getting an overview. Using existing C++ tools can help, along with simple scripts. This is conceptually similar to the leading edge area of aspect-oriented programming.