1. A system for designing a business process, said system comprising: an introspection module that generates a catalog of generic components by introspecting a set of exposed application programming interfaces (APIs) of a plurality of heterogeneous applications created in different programming languages and transforming a plurality of implementation-specific components of said heterogeneous applications into the generic components of said catalog wherein the catalog contains generic components which, when invoked, are bound to the implementation-specific components of said applications upon execution of the business process; a component manager coupled to the introspection module and operable to manage said catalog generated by the introspection module by defining and organizing the generic components in said catalog; and a process designer coupled to the component manager and operable to: select at least one of the generic components from said catalog managed by the component manager; and graphically construct a business process definition that includes a series of graphically represented activities linked by one or more transitions wherein at least one activity of said business process definition invokes the selected generic component from said catalog; a repository for storing the business process definition; and one or more process engines that execute said business process definition to instantiate a business process instance, wherein the business process instance interacts with the plurality of heterogeneous applications by invoking the generic components in said catalog and wherein the business process instance integrates the plurality of heterogeneous applications into a single process by invoking services from the plurality of heterogeneous applications during execution of the activities of said process.