Export (0) Print
Expand All

Software Factory Capabilities

Retired Content

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies.
This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
To create client business applications using current Microsoft technologies, see patterns & practices' Prism.

You can use the Smart Client Software Factory to address common requirements for different areas of your smart client application architecture. Figure 1 illustrates the primary application areas targeted by this release of the software factory.

Ff699188.note(en-us,PandP.10).gifNote:
Note: You can also extend and customize the software factory to meet your specific requirements. For more information, see Customizing the Smart Client Software Factory.

Ff699188.742bf236-7cf1-4e62-9232-49db640f18a3(en-us,PandP.10).png

Figure 1

Application architecture requirements targeted by the software factory

The assets included in the Smart Client Software Factory assist architects and developers in solving the common challenging aspects of building smart client applications. Smart Client Software Factory assets, such as automated code generation, provide proven solutions for common challenges. The software factory assets can also be customized and extended for your specific requirements.

Table 1 lists the capabilities that the Smart Client Software Factory offers.

Smart Client Software Factory capabilities

Guidance

Automation

Modularity



Building composite UIs that are based on integration of multiple back-end systems

Composite UI Application Block

Patterns

How-to topics

Branch Client reference implementation

Yes

Composing applications from individually developed, tested, and deployed modules (parts)

Patterns

How-to topics

Branch Client reference implementation

Yes

Obtaining the configuration of the application (list and loading sequence of modules) from a central location

Branch Client reference implementation

Not applicable

Working on multiple instances of business entities, such as customers, at the same time

Bank Branch Client reference implementation

Not applicable

User experience



Separating responsibilities of visual display from business logic handling behavior

Patterns

How-to topics

Bank Branch Client reference implementation

Yes

Providing multiple layouts for the same application

How-to topics

Branch Client reference implementation

Yes

Supporting navigation panes (area where modules can register themselves)

Branch Client reference implementation

Not applicable

Supporting task panes (areas where modules can add entries to their logic)

Patterns

Branch Client reference implementation

Not applicable

Loosely coupling components by allowing them to communicate through events

Composite UI Application Block

How-to topics

Branch Client reference implementation

Yes

Deployment and updates



ClickOnce deployment and updates

Branch Client reference implementation

Not applicable

Supporting module versioning by separating module implementation from module interfaces

Patterns

Branch Client reference implementation

Not applicable

Supporting deploying modules independently

Branch Client reference implementation

Not applicable

Advanced ClickOnce scenarios including deployment by group, handling high deployment server load, and implementing a Custom ClickOnce Server File Repository

How to topics

Branch Client reference implementation

Not applicable

Web service communication



Communicating with Web services (asynchronously with timeout or synchronously), queuing messages, working offline

Offline Application Blocks

Patterns

How-to topics

Disconnected Service Agent QuickStart

Yes

Local storage



Caching frequently accessed data for fast retrieval

Branch Client reference implementation

Not applicable

Security



Changing the UI behavior based on user role (authorization)

Library

Branch Client reference implementation

Not applicable

Manageability



Handling exceptions

Library

Branch Client reference implementation

Yes

Logging exceptions

Library

Branch Client reference implementation

Yes


Show:
© 2014 Microsoft