Patent ID: 7322024

Claim:
A computer-implemented system comprising: a repository to store artifacts, wherein at least a portion of the artifacts comprise software instructions that are reusable in different development environments; an asset source executing on a computer to monitor the repository and generate a software asset based on the artifacts upon detecting a new or updated artifact within the repository; and an asset management system executing on one or more computers to receive the software asset from the asset source and to store the software asset within an asset library; wherein the asset management system includes: an asset template that defines a schema for a software asset in accordance with a data description language; an asset capture tool that identifies missing artifacts from the software asset based on the asset template; a rules engine to generate metadata that maps the software asset to elements of a model that graphically represents a set of software components having instructions; an asset retrieval module to receive input from a user selecting an element of a model and to selectively retrieve the software asset from the asset library based on the input and the metadata that maps the software assets to the elements of the model, wherein the asset retrieval module generates a search specification based on the user input and a scoring engine to score the software asset within the asset library against the search specification.