The Smart Client Software Factory provides the following benefits for the business team, the architecture team, the developer team, and the operations team.
Value for Business
Applications built using the Smart Client Software Factory result in increased user productivity and simplification of business tasks. This is achieved through the following:
- It helps you create common and consistent user interfaces; this reduces end-user training needs.
- It helps provide easy rollout of new and updated functionality and tasks by the business owners.
- It helps you create user interfaces that allow end users to perform tasks in a free-form manner or that prescriptively follow business workflows.
- It provides data quality improvements that remove the need for data exchange between application parts through the "ALT+TAB" and "copy and paste" techniques.
Value for Architecture Teams
Applications built using the Smart Client Software Factory result in improved quality and consistency. This is achieved because the software factory provides the following:
- It provides the ability to create a partial implementation of a solution that includes the most critical mechanisms and shared elements. This partial implementation, known as the baseline architecture, addresses non-trivial design and development challenges, exposes the architectural decisions, and mitigates risks early in the development cycle.
- It provides the ability to create and distribute to developers the common development architecture for smart client applications.
- It provides the ability to create a consistent and predictable way of developing, packaging, rolling out, and updating business components to enforce architectural standards independent of business logic.
- It provides the ability to scale enterprise-wide guidance (such as patterns and Microsoft proven practices) when building enterprise smart client solutions.
Value for Developer Teams
Applications built using the Smart Client Software Factory result in increased productivity and faster ramp-up times for developer teams. This is achieved because the software factory provides the following:
- It provides an effective way to create a high-quality starting point (baseline) for smart client applications. The baseline includes code and patterns typically discovered in Iteration 0, or the elaboration phases, of a project. This means that projects begin with a greater level of maturity than traditionally developed applications.
- It reuses assets, guidance, and examples that address common smart client scenarios and challenges.
- It provides automation of common tasks in Visual Studio; with this, developers can easily apply guidance in consistent and repeatable ways.
- It reuses an application framework that hides complexity and boosts productivity.
- It abstracts and separates concerns, which means that developers can focus solely on business logic, the UI, or the application services without requiring in-depth knowledge of the infrastructure and baseline services.
- It abstracts common developer tasks, which results in increased productivity and maintainability.
- It provides increased reusability of infrastructure code.
Value for Operations Teams
Applications built using Smart Client Software Factory result in a consolidation of operational efforts. This is achieved because the software factory provides the following:
- It consolidates shell applications, which results in only one executable file shipped and reduces the number of potential common language runtime (CLR) versioning issues.
- It provides easier rollout of common business elements and modules, which results in consistent configuration management and instrumentation implementations across a suite of applications.
- It provides a pluggable architecture that allows operations teams to control the basic services (such as authentication and catalog provisioning) from server-side infrastructures; this enables smart client applications to be centrally managed, many at a time.
- It uses ClickOnce, which enables a common mechanism for updates and versioning across modules.
No comments:
Post a Comment