LiveCycle ES2 observes a paradigm shift, in its method to develop processes with the introduction of applications. The erstwhile versions of LiveCycle (LiveCycle 8.x and earlier), processes existed in isolation and were developed as Resources. Applications provide the ability to bundle your processes and its dependent assets (artifacts such as forms, schema, etc.) by logical or functional standards. By grouping an asset with all its dependencies, you are ensuring that a process, in synergy with its dependencies, can function as a singly existing independent entity.
You can better organize by isolating process and its dependencies in to a single application. Take note that an application can also be a collection of processes. This allows you to break your workflows in to several functionally inter-dependent processes within the same application.Since, application is a top level object, when checked out by a process developer, all its child objects are also locked for the same user. This securitizes against possible attempts by other users to use these assets. By locking a top level object, process developers can ensure that they effectuate their changes across all the dependent assets in a risk-free environment.
Although applications allow you to contain processes and their dependencies in a single container, they do not limit you from far-referencing assets outside of it.