This topic has not yet been rated - Rate this topic

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.

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.

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

Ff649908.01-SCSF-Challenges(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.

Table 1: Smart Client Software Factory Capabilities

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)

  • Enterprise Library
  • Branch Client reference implementation

Not applicable

Manageability

  

Handling exceptions

  • Enterprise Library
  • Branch Client reference implementation

Yes

Logging exceptions

  • Enterprise Library
  • Branch Client reference implementation

Yes

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.