A "legacy system" is an application that has been in existence long enough to have had several different owners. The current owner wasn't around when the application was developed, and received minimal or no training when they inherited it. Documentation on how the application works is either minimal or nonexistent. As a result, the current owner reports normal system behavior as bugs.