Professional Documents
Culture Documents
miguel.castro@idesign.net
Agenda
• Service Oriented Architecture
• What is WCF?
• Creating & Consuming Services
• Service Components
• Hosting Services
• Configuration
• Best Practices
Service Oriented Architecture
“The decomposition of a
system into autonomous,
discoverable, and secure
units of responsibility and the
interoperable exposure of
said units.”
For a very cool T-Shirt:
Where is that definition from?
C. I made it up myself
Service Oriented Architecture
• SOA separates applications into services.
• Services are orchestrators into down-level business
layers.
• Allows connectivity of dissimilar technologies.
• Is NOT a product. It is an architecture and design
paradigm.
• Next evolution of programming paradigms.
Programming Paradigms
Procedural Programming
Applications were developed by continuously calling functions
that housed various areas of functionality.
Problems:
• No reuse outside of application.
• No design analogy to real-world made for
cumbersome development process.
Programming Paradigms
Procedural Programming
Applications were developed by continuously calling functions that housed various areas of
functionality.
Problems:
• No reuse outside of application.
• Required lots of plumbing for
managing ancillary functionality
(reliability, transactions, security, etc.).
Programming Paradigms
Objects could now be encapsulated and Applications were developed by continuously calling functions that housed
various areas of functionality.
Problems:
with various entities that
resembled real-world counterparts,
housing both data and behavior.
• Ancillary functionality typically Problems:
• No reuse outside of application.
Problems:
housing both data and behavior.
Problems:
accommodates interoperability.
managed by a common abstraction layer
(COM) and housed in separate libraries (DLLs).
Problems:
• Ancillary functionality typically required
external service
Enter WCF !
management (MTS, COM+, Corba).
Service Oriented Architecture
• It is NOT a replacement for Components or Objects.
• Usually incorporate object-oriented engines behind a
service.
• Will not help you fix bad architecture practices.
• Mistakes can still be made behind a service wall
Service Oriented Architecture
Service Layer
Inside
YES Firewall NO
and
.NET-.NE
T?
NO
Local
Only?
YES Support
NO Legacy? YES
Need to
Disconnect?
NO YES
Miguel A. Castro
miguel.castro@idesign.net
@miguelcastro67
www.dotnetdude.com