1. In a computing environment, a method of implementing desired business logic functionality, the desired business logic functionality including a plurality of individual functions, the method comprising; selecting a plurality of computer implemented modules, each module being configured to perform at least a portion of one of the individual functions and wherein each module comprises a computer implemented interface for connecting to other modules; and operatively coupling the plurality of computer implemented modules to create a composite module, wherein the composite module comprises functionality for implementing the plurality of individual functions, and wherein the composite module comprises computer implemented interfaces for connecting to other modules, including a UI module, such that the composite module is reusable in implementing more complex functionality by being selected as a computer implemented module and being coupled to other computer implemented modules, wherein the composite module is agnostic to how a UI module exposes functionality to a user.