Title: Developing%20Smart%20Client%20Applications%20For%20The%20Enterprise
1Developing Smart Client Applications For The
Enterprise
- Keith Elder
- Team Leader / Sr. Software Engineer
- Quicken Loans
- Blog http//keithelder.net/blog/
- Email keith_at_keithelder.net
2About Quicken Loans
- Originally founded in 1985 as Rock Financial by
Dan Gilbert - Grew to one of the largest independent mortgage
banks in the country - 1998 IPO
- 1999 Launched Rockloans.Com
- 1999 Intuit, Inc (makers of TurboTax and Quicken)
purchased Rock Financial. - July 2002 Dan Gilbert purchased Quicken Loans
back from Intuit. Retained Quicken Loans
branding and marketing initiatives. - 4500 employees
- Largest online retail home loan lender
3Take Aways
- What is a Smart Client?
- Why you should consider Smart Clients over Web
Applications for internal use within the
Enterprise. - How to deploy a Smart Client using ClickOnce.
- How to provide your end users with automatic
updates.
4Part 1 What is a Smart Client?
5Remember Mainframes?
Single Architecture Mainframes Dumb Terminals
6Remember Thick Clients?
7Remember How The Web Solved Everything?
Web Applications Solve Everything!
8Arent we really back to where we started?
9Smart Client
10Smart Client Architecture
SQL 2005
Business Logic Documentation
Web Services Cluster
- Benefits
- Provides connection pooling to database
- Allows for updates to business layer without
affecting clients - Disconnected / Connected
Clients
11Disclaimer(s)!
- Are Smart Clients just related to .Net?
- No Smart Clients can be built on top of any
operating system - Ok fine but are Smart Clients a technology or an
architecture? - Both! It is a combination.
- SmartClient yourApp .Net SOA Winforms
Windows - SmartClient yourApp (Java or Python) SOA
(GTK or QT) Nix
12Smart Client Benefits (1/2)
- Local resources
- Direct display and peripheral access
- Responsive graphics, printers, digital cameras,
smart phones, pda, etc. - Use of installed applications
- Word, Excel, VSTO
- Connected
- Access to network resources
- Web services, SQL Databases
- Less payload on server than web application
- Minimal training
13Smart Client Benefits (2/2)
- Offline capable
- Cache online data
- Update when connected
- Datasets in smart documents
- Intelligent deployment and update
- Easy non-administrator deployment
- Automatic updates
- Rich / easy developer experience
14.Net Smart Client (what do you need to build one?)
- Visual Studio 2005
- Download http//msdn.microsoft.com/vstudio/expres
s/ - Provides rich visual designer support
- Integrated ClickOnce testing and deployment
- Visual Studio Tools for Office
- .NET Framework 2.0 or 3.0
- Windows Forms
- ClickOnce deployment
- Web server to deploy web services and ClickOnce
deployment - Total Cost to Leverage This Technology 4.95 /
month hosting account - Visual Studio Express Free
- .NET Framework Free
- Web Server - 4.95 / month
15Smart Client (GUI)
Intro to .Net 2.0 WinFormsand Sample Application
- Enterprise Desktop (sorta)
16Part 2 Deploying a Smart Client with ClickOnce
17ClickOnce Deployment Overview
- ClickOnce application deployment published on a
web or file server
Server
application files
- Client follows link to serverhttp//localhost/app
/EnterpriseDesktop.application - Application deployed locally in users profile
directory executed - Subsequent executions check for updates execute
local install
Client
18ClickOnce
- Smart Client deployment technology
- Provides web-deployment simplicity
- End User
- Provide web-deployment flexibility
- Publisher
- Automatic update of application
- System.Deployment
- Security isolation and optional restricted
permissions - Non-administrative installs and uninstalls
19ClickOnce Deployment
20Application Updates
- Auto-update deployment options
- Before application launch, or
- Update check occurs after app-launch
- Scheduled update checks
- Weekly, monthly, etc.
- System.Deployment Customize it to suit your
business needs
21ClickOnce Auto-update(Versioning)
22Smart Client Summary
- Rich features easier than ever to implement
- Windows Forms 2.0 new controls
- Windows Forms 2.0 improved data integration
- Installation and update easier than ever
- ClickOnce web-style simplicity
- ClickOnce web-style security
- SmartClient rich feature-set
- Customers access existing and new application
features easily - Customers access your application with or without
network connectivity
23Resources
- My Blog
- http//keithelder.net/blog/
- Email
- keith_at_keithelder.net
- Resources
- http//msdn.microsoft.com/smartclient/
- http//practices.gotdotnet.com/projects/scbat
- Patterns and Practices
- http//msdn.microsoft.com/practices/
- Smart Client Software Factory
- Enterprise Library
- Web Services Software Factory
- Mobile Software Factory