An object
management system is providing for managing,
cataloging, and discovering various potentially reusable code and data components that exist within an
Information Technology (IT) platform, and which each have well-defined interfaces with other components. For each of these re-
usable code and data components, an associated
software object called an "asset element" is created that describes the associated component. Relationships are created between various asset elements to represent the relationships existing between the
software components. Other
software objects called "locator elements" are created that each describes an application concept or sub-concept. This application concept or sub-concept is associated with a problem solved by the code and data components within the IT platform. Relationships are created between the various locator elements to correlate the concepts and sub-concepts to software constructs represented by asset elements. The object
management system further supports various object discovery tools capable of identifying locator elements associated with a particular concept. These locator elements and the associated relationships may then be efficiently traced to identify related asset elements and the associated software and code constructs. This provides an efficient concept-based search mechanism for the code constructs. Other tools are provided for creating, modifying, and deleting the elements. A model may be used to define the various types of relationships and elements that may exist within the
system, thereby simplifying the various tools needed to support element creation, modification, deletion, and traversal.