1. A computer-implemented system for managing software for assembling a software application from web-based software resources within an enterprise, comprising: a capture module executing on the computer-implemented system to retrieve, from an asset source, a reusable software asset generated from one or more repositories of software resources, wherein the software resources are web services having functional interfaces that provide a set of functions, wherein the capture module allows a user to map data types of the web services to elements of a domain model representing a business process and to map the functions provided by the web services to the elements of the domain model, wherein upon retrieving the reusable software asset from the asset source, the capture module maps the data types and the functions of the web services to the domain model, and wherein the mappings are saved as metadata for searching to identify reusable assets; a database to store the reusable software asset, data representative of the mapping, and information for the software resources including location information and functionality information for the software resources, the functionality information specifying the functions provided by the functional interfaces of the web services, wherein the database stores the data and the reusable software asset in a searchable form and provides access to the reusable software asset for retrieval of software resources; an asset retrieval module executing on the computer-implemented system that presents a graphical user interface (GUI) to present a graphical view of the domain model to the user for viewing the domain model, wherein the asset retrieval module receives input from the 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 one or more software assets from the database based on the selected elements of the domain model; and a search engine for performing a model-driven search of the database based on the search specification to select one or more of the software assets for reuse and to locate one or more of the software resources usable by a software developer for a software development project, wherein the search engine selects the one or more software assets for reuse by accessing the mappings stored by the database based on user-supplied criteria describing elements for the domain model.