Research that is ongoing to develop a methodology for the paradigmatic description of software to enhance the prospects for software maintenance is described. The authors discuss theories of software system descriptions in terms of Kuhn's paradigms and the application of metadata to software. The authors then propose the collection of software system metadata, which may include functional and non-functional requirement documentation, metrics, the success or failure of tests and the means by which various components interact or were intended to interact. The authors show how changes to metadata may be recorded and tracked and propose how they may be used to proactively notify developers of changing requirements and quality measurements that may impact maintenance. The authors show how Semantic Web techniques can be used to enable language-neutral relational navigation of software systems, thus facilitating software understanding and maintenance. Proposed extensions to this research are outlined, including the development of a toolset for distributed software maintenance.