Title: Enterprise Library Enterprise Library Applied
1Enterprise LibraryEnterprise Library Applied
- Scott Densmore
- Software Design Engineer
- Ron Jacobs
- Product Manager
- Microsoft Corporation
2Colin Cole"Large Bank"
- Microsoft Consulting Services
3Large Bank Commercial Loan Solution
Exposure
Underwriting
Document Generation
Boarding
Servicing
Exposure /Credit Web Services
.NET Web Services Architecture
Commercial Loan Database
4Large Bank Commercial Loan Solution
User Workstations
XML Business Messages
Smart Client
Smart Client
Smart Client
HTTP/SOAP
.NET Web Services
Loan Service
Other Services
Security Service
BizTalk Server Rules Engine
HTTP/SOAP
BizTalk Server Integration/ Workflow Tier
MQSeries Integration
Task Queue Service
PW Datastore (SQL 2000)
Life 70
Transcend
Transcend
SQL Server Commercial Loan Database
MQSeries
Mainframe
5(No Transcript)
6How Is the Code Organized
- Message-oriented Technical Architecture and
Application Architecture - Technical architecture
- Contains shared services logic
- Security. WS-Security (WSE) integration,
Role-based authorization - Implements Enterprise Library defined security
interfaces against entitlements/authorization
database - Enterprise Library for Caching, Data Access,
Exception Handling, Instrumentation - Codes management
- Serialization
- Application architecture
- Houses business domain logic
- Contains all commercial loan business logic,
using the technical architecture layer and
Enterprise Library for all shared logic
7Lenny FensterACE-INA Insurance
8ACE in Spring 2003
9The Problem?
Sustained Advantage
Quality
Speed
You Are Here
10The Solution Centralized Assets Based on the
Microsoft Application Blocks
- Reusable, extensible, modifiable
- Common mechanism
- Data Access
- Configuration management
- Caching
- Exception Handling
- Worked well, for the most part, but
- Difficult to configure some blocks
- Difficult to evaluate and understand some blocks
- Some blocks did not work well together
- Too many dependencies
- It was definitely a step forward, but was more
challenging than anticipated
11In January 2005, ACE Migrated from the Previous
App Blocks to Enterprise Library for the
- Configuration
- Documentation
- Tests
- Tooling
- Samples
- Extensibility
- Pluggable provider
- Guidelines how to create new blocks
- Design patterns and principles
- Hooking into config tool
- Documentation guidelines and templates
- Testing requirements
12Wrapping Around the blocks The Data Mapping
Application Block
13ACE and Enterprise Library v1
Caching
Exceptions
Legend
Security
Data Access
Logging
Dependency
Plug-in
Crypto
Configuration
Config Tool
14ACE Today
15Brent Jackson
16Architecture Strategy Goals
AS
- Agility
- More responsive to business needs
- Faster delivery of function
- Alignment
- Align IT with business needs and strategy
- Better alignment and cooperation across IT
organizations - Standardized technology and process
- Value
- Reduce costs
- Improve productivity
- Sharing and Reuse
- Enhance business capabilities
Technology Life Cycle
Solution Alignment Synergy
EA (SOA/EDA)
Strategic Vendor Management
Consulting
Education Communication
Enterprise Services Components
Standards Management
17FY05 Projects
- Enterprise Event Broker
- Web service implementing publish and subscribe
mechanism for enterprise events - Entirely data driven (not separate integration
per subscriber) - High volume throughput, fault tolerant, able to
federate - Implements EIF and DAB
- Symphony / Integrated Dell Desktop
- Smart client for sales force, aggregating WinForm
and Web content - Common security, context and eventing across
content - Implements modified Updater, Caching, EIF,
Exception Handling, AzMan
18Photon .NET 3.0
- Photon.NET 3.0
- Web services gateway infrastructure handling gt2M
transactions / day - Refactored to implement EntLib (Logging,
Configuration, Security, Data Access) in Photon
core and support UI - Extremely easy to code with, easy to configure,
well documented, good samples. Also, source
code is well written and even comes with unit
tests. - Rob Smith, Lead Photon Developer
- Allowed replacement of significant portions of
home-grown C code. - Made small modifications to Data Access block to
address ability to call same database instance on
different servers - Support tool copies metadata from master db
server to local SQL Server DE for platform
resilience - Small modification to Security block to enhance
performance of AzMan caching of XML store
19Tim Landgrave
20Accelerating Development
- Case Study New Smart Client application with
large Midwestern manufacturer - Disconnected application with local data store
synchronizing with corporate back end - Application Updater block for application and
database updates - Enterprise Library for Data Access and
Configuration - Use of these assets had two major implications
- Reduced development time by approximately three
months - Allowed us to develop and deploy a more robust
and supportable architecture than we originally
envisioned
21Increasing Quality
- Case Study Government agency retrofits Web
application to increase reliability - Statewide agency was creating a Web application
using an Oracle back end - Developers were novice database developers with
little Oracle experience - Application performed poorly and had significant
resource issues - Replace existing database code with Enterprise
Library - Oracle database was accessed in a consistent
manner by the entire development team - Proven, tested, reliable Enterprise Library code
increased performance and reliability of the
overall application
22Readify
Helping organizations evolve with emerging
Microsoft technologies
- Based in Australia
- Technical Readiness specialists
- An elite group of consultants
- More MVPs than any other Microsoft partner in
Australasia - Training, Mentoring and Technical Consulting
excellence around the Microsoft .NET development
platform and associated Enterprise technologies
23Security
We developINDUSTRIAL STRENGTH .NET
Scalability
Testability
Availability
Manageability
Maintainability
Uses Version 1 Microsoft Application Blocks
24Creating an eLearning version with Microsoft
Solve the ities using best-practices from
Readify and Microsoft
Microsoft Enterprise Library, Microsoft
BizTalk 2004 and WSE 2
25Mastering Industrial Strength .NET
- Implementing best practises
- Hands-On Labs
- Architecture and Design Guidance
- Enterprise Library and Others
- When, Why and How
- http//www.readify.net/Default.aspx?tabid212
26Enterprise Library in Australia
- Large Financial Institution
- Provider Model for Unit Testing
- EDRA (application blocks)plan to move to
Enterprise Library - Australian ISV
- .NET 2.0 Application
- Multiple deployment models
- Enterprise Library and WSE2
27Session Summary
- Colin Cole Large Bank
- Microsoft Consulting Services
- Lenny Fenster ACE-INA Insurance
- Lead Architect, Microsoft
- Brent Jackson Dell
- Enterprise Architect
- Tim Landgrave Crowe and Readify
- Architect, Crowe
28Additional Resources
- .NET Data Access Architecture Guide
- Improving Web Application Security
- Improving .NET Application Performance and
Scalability - Application Architecture for .NET
- PatternShare.org
- Enterprise Library Communityhttp//go.microsoft.c
om/fwlink/?linkid39209clcid0x09 - www.ronjacobs.com
- Slides
- Tech Tips
- Podcasts
29Patterns and Practices Live!
- Slides, hands-on labs, on-demand webcasts
- Upcoming live webcasts
- 4/12 Global Bank Baseline Architecture
- 4/14 Updater Application Block v2
- 4/21 Packaging design guidance for VS 2005
- 4/28 Test Driven Deployment
- 5/28 Ask pp send questions to
askpnp_at_microsoft.com
http//www.pnplive.com
30Announcing Enterprise Library 1.0
- http//www.microsoft.com/practices
Download it Today!
31MSDN Events
- Who
- Your Local Microsoft Developer Community Champion
- What
- Web Services Unleashed
- Universal Data Access with SQL Server 2005
- Publishing Applications Using ClickOnce
- Why
- Gain valuable developer knowledge, network with
peers, and get VS 2005 Beta 2 and our
content-rich special event DVD - When
- April through June, on Tuesdays and Thursdays
from 1-5PM local time - Where
- Cities across the United States
- How
- Visit MSDN Events at http//www.msdnevents.com to
find out more!
32MSDN Webcast Resources
- Visit our blog http//blogs.msdn.com/msdnwebcasts
for an rss feed of upcoming MSDN Webcasts - Submit text questions during the live webcast
using the Ask a Question button - For recordings of past MSDN Webcasts
www.microsoft.com/usa/webcasts/ondemand - Got webcast content ideas? Please go to
http//go.microsoft.com/fwlink/?LinkId41781 - More webcasts at http//msdn.microsoft.com/webcast
s - Dont forget to fill out the survey.
33IAB Poll
Live Meeting Poll
- How would you rate the streaming audio quality
from todays presentation? - Excellent
- Good
- Fair
- Poor
- Unacceptable
- Needed to listen to the audio via telephony
Changes directly made to this slide will not be
displayed in Live Meeting. Edit this slide by
selecting Properties in the Live Meeting
Presentation menu.
34Free Trial Offer for Live Meeting
- This webcast is being presented using Microsoft
- Office Live Meeting technology.
- 14 days of free service. Unlimited online
meetings with up to 10 participants. - Complimentary 24/7 customer support for you and
all meeting participants. - Get your own free 14-day trial by visiting
http//www.microsoft.com/presentlive
35(No Transcript)