Managing reusable software assets
First Claim
1. A computer-implemented system comprising:
- a plurality of repositories to store software artifacts;
an asset source executing on the computer-implemented system to monitor the one or more of the repositories for addition of one or more new software artifacts,wherein upon detecting the new software artifacts the asset source automatically generates a reusable software asset to include references to the new artifacts within the one or more repositories;
a capture module executing on the computer-implemented system to retrieve the reusable software asset from the asset source in response to receiving an indication from the asset source that the reusable software asset has been generated from the detected artifacts, wherein upon retrieving the reusable software asset from the asset source, the capture module to maps data types and resource functions of the reusable software assets extracted from one or more enterprise repositories to elements of one or more domain models;
a database to store the reusable software asset and data representative of the mapping, wherein database stores the data and the reusable software asset in a searchable form and provides access to the reusable software asset for retrieval of the new software artifacts within the one or more repositories; and
a search engine to perform a model-driven search for selecting one or more of the software assets for reuse by accessing the mapping stored by the database based on user-supplied criteria describing elements for one of the domain models.
14 Assignments
0 Petitions
Accused Products
Abstract
In general, techniques are described that facilitate the reuse of software assets within an enterprise. A software asset, as used herein, refers to a set of one or more related artifacts that have been created or harvested for the purpose of applying that asset repeatedly in subsequent development environments. A system, for example, is described that includes a repository to store artifacts, and an asset source to generate a software asset based on the artifacts. The system further includes an asset management system to receive the software asset from the asset source and store the software asset within an asset library. The system may further include a model having one or more elements, and an asset retrieval module to selectively retrieve a subset of the software assets from the asset library based on input from a user identifying one or more of the elements.
-
Citations
32 Claims
-
1. A computer-implemented system comprising:
-
a plurality of repositories to store software artifacts; an asset source executing on the computer-implemented system to monitor the one or more of the repositories for addition of one or more new software artifacts, wherein upon detecting the new software artifacts the asset source automatically generates a reusable software asset to include references to the new artifacts within the one or more repositories; a capture module executing on the computer-implemented system to retrieve the reusable software asset from the asset source in response to receiving an indication from the asset source that the reusable software asset has been generated from the detected artifacts, wherein upon retrieving the reusable software asset from the asset source, the capture module to maps data types and resource functions of the reusable software assets extracted from one or more enterprise repositories to elements of one or more domain models; a database to store the reusable software asset and data representative of the mapping, wherein database stores the data and the reusable software asset in a searchable form and provides access to the reusable software asset for retrieval of the new software artifacts within the one or more repositories; and a search engine to perform a model-driven search for selecting one or more of the software assets for reuse by accessing the mapping stored by the database based on user-supplied criteria describing elements for one of the domain models. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of classifying a software resource comprising functions and data types, the method comprising:
-
extracting a software resource from a repository; receiving a domain model that provides a representation of model functions and model data types for a set of software components; mapping data types of an application programming interface of the software resource to the model data types of the domain model to produce data type maps; mapping functions of an application programming interface of the software resource to the model functions of the domain model to produce function maps; and storing the data type maps and function maps in a searchable database to provide retrieval of the software resource from a plurality of software resources based on the data type maps and the function maps. - View Dependent Claims (9, 10)
-
-
11. A computer-implemented system comprising:
-
a plurality of repositories to store artifacts related to software components deployed by an enterprise; an asset source executing on the computer-implemented system that monitors one or more of the repositories for new artifacts, wherein upon detecting one or more new artifacts, the asset source automatically generates a reusable software asset to include references to the new artifacts within the one or more repositories; an asset management system executing on the computer-implemented system to receive the reusable software asset from the asset source and to store the reusable software asset within a searchable asset library; and a rules engine to generate metadata that maps the software asset to elements of one or more models. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer-implemented system comprising:
-
a domain model having one or more model elements that map business processes to software components; a central asset management database to store reusable software assets, wherein the software assets include references that identify locations of software artifacts stored within a plurality of different repositories distributed throughout an enterprise; a rules engine to generate metadata that maps the reusable software assets to the elements of the domain model; and an asset retrieval module executing on the computer-implemented system that presents a graphical user interface (GUI) outputting a graphical representation of the domain model, wherein the asset retrieval module receives input from a user selecting one of the model elements of the domain model, and in response to the selection, the asset retrieval model constructs a search specification to selectively retrieve a subset of the software assets from the central asset management database based on the selected elements of the domain model. - View Dependent Claims (30, 31, 32)
-
Specification