smart client baseline architecture toolkit (sc-bat) · 2008-08-14 · guidance automation toolkit...

19
Smart Client Baseline Architecture Toolkit (SC-BAT) Brad Wilson, Development Lead [email protected]

Upload: others

Post on 11-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Smart Client Baseline Architecture Toolkit (SC-BAT)

Brad Wilson, Development Lead

[email protected]

Page 2: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

What is SC-BAT?

Integrated guidance for smart clients

Narrative guidance

Reusable assets

Guidance automation

Reference implementations

Hands on labs

Page 3: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Scenarios

Windows Forms on .NET 2.0

Existing patterns & practices assets

Composite UI Application Block (CAB)

Enterprise Library

Guidance Automation Toolkit (GAT/GAX)

Reference applications based on the Global Bank scenario

Page 4: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Integrated Guidance

used by

implement

illustrateillustrate

Reference

Implementation

Guidance

Package

Patterns

Documentation

How-to topics

automate

built with

automate

Page 5: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

What is CAB?

Framework for building enterprise Smart Client apps

Based on proven design patterns

Aligned with future Microsoft Client technologies

Page 6: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

CAB Design Objectives

Composite client applications

Cooperating, loosely coupled “parts”

Communicate with minimum knowledge

Independently developed and deployed

Heavy use of dependency injection

Reuse of common services

Separation of concerns

Designed for extensibility

Page 7: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Key CAB Concepts

Shell application

Loadable modules

WorkItem

Smart object factory

Dependency injection container

Service locator

EventBroker

Workspaces

UI extension sites

Commands

Page 8: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Reference Implementations

Reference Implementation 1:Appraiser Workbench

Reference Implementation 2:Global Bank Workbench

Page 9: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Appraiser Workbench

Composable UI

Reusable Shell Application

Appraiser Workbench Module

Common Utility Library

ClickOnce deployment

Service Agent

Occasionally connected

Server operations as asynchronous

Operations queued when off-line

Local data cache

Page 10: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Appraiser Workbench

Windows authentication

Exception handling

Enterprise Library Exception Handling Block

Centralized configuration

Service operation logging

Simple back-end service provided

Page 11: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Demo

Appraiser Workbench

Page 12: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

What is GAT?

Two pieces:

Guidance Automation Extentions (GAX)

Guidance Automation Toolkit (GAT)

Lightweight Visual Studio extensibility

Simplified authoring experience

Delivers contextual guidance to devs

Patterns

“How-To”s

Company conventions

Page 13: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Guidance Lifecycle

Visual Studio 2005

Guidance Automation eXtensions

Guidance Automation ToolkitGuidancePackage

SourceCode

Application

Guidance

Author

(Architect)

Guidance

Consumer

(Developer)

End User

builds

generates

compiles

to

Page 14: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Guidance Automation Toolkit

Deliver contextual guidance within the Visual Studio environment

Automate How Tos and Patterns

Customizable and extensible

Familiar user experience

Page 15: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Demo

Smart Client Guidance Package

Page 16: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Smart Client Baseline

Architecture Toolkit

Global Bank SmartClient Baseline

Smart ClientBaseline Architecture

Toolkit

Global Bank Architect

Global Bank Developer

Global Bank Developer

CustomizesExtends

Develops

Develops

Recommended Practices:

Code guidance:• Sample Application• Composite UI App Block• Enterprise Library

Architecture Guidance• Design Patterns• How-Tos

Automation• Tool Extensions• Code Templates• Wizards

Customizing Guidance

Page 17: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Q&A

Page 18: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

Links

Composite UI Application Blockhttp://codegallery.gotdotnet.com/cab/

http://msdn.microsoft.com/library/en-us/dnpag2/html/cab.asp

Smart Client Baseline Architecture Toolkithttp://codegallery.gotdotnet.com/scbat/

http://msdn.microsoft.com/library/en-us/dnpag2/html/scbatlp.asp

patterns & practiceshttp://msdn.microsoft.com/practices/

Page 19: Smart Client Baseline Architecture Toolkit (SC-BAT) · 2008-08-14 · Guidance Automation Toolkit (GAT) Lightweight Visual Studio extensibility Simplified authoring experience Delivers

© 2006 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.