Modularity Guidance Bundle
is the ability to create rich Web client applications from discrete functional units named
. A module represents a set of related concerns. It can include such entities as Web pages, business logic, page flows, and pieces of the Web infrastructure such as the ability to log events or to authenticate users. Each module is functionally
complete and it can communicate with other modules to create a complete application. Web applications that are created from modules are called
. A user accesses the application with a Web browser. To the user, the application appears as a seamless program that offers many capabilities.
An example of a composite application might be an on-line banking program. The user can access a variety of functions, such as transferring money between accounts, paying bills and updating personal information from a single user interface. However, behind
the scenes, each of these functions is a discrete module. These modules communicate with each other and with any back-end systems such as database servers. The Web server integrates the input from the different modules and handles the communication between
the modules and the user. The user sees an integrated view that looks like a single application.
illustrates a typical composite Web application.
A composite Web client
Benefits of Modularity
Modularity provides the following benefits to development teams:
- It allows a high degree of separation between the application infrastructure and the business logic.
- It allows different teams to independently develop each of the individual business logic and infrastructure components.
- It provides flexibility because business logic components can be combined to quickly yield a specific solution.
- It promotes code re-use because it allows business logic components and the application infrastructure to be incorporated into multiple solutions.
- It provides an excellent architecture for the front-end integration of line-of-business systems or service-oriented systems into a task-oriented user experience.
The purpose of this bundle is to provide guidance on how to implement composite Web applications that are composed of a number of discrete, independent, yet functionally complete modules using the Composite Web Application Block and the Composite Web Client
The Composite Web Client Automation is not included in this bundle. For information about the Composite Web Client Automation, including download information, see
Composite Web Client Automation
What Is a Bundle?
A bundle is a small package of guidance that is focused around one technical concept. The primary purpose of a bundle is to allow users to quickly, conveniently, and easily learn and evaluate a concept.
Although a bundle can contain any type of guidance, a bundle typically includes the following elements:
- Source code. This includes QuickStarts or reference implementations and related artifacts.
- Binaries. These include application block binaries that are required by the QuickStarts.
- Written documentation. This includes the bundle description and How-to topics.
What Is in This Bundle?
The Modularity Guidance Bundle contains the following elements: