Professional Documents
Culture Documents
Amjad Umar
Copyright (A. Umar)
Introduction
Architecture:
Components
What do they do
How do they interact/interface
Different types of architectures: database, network,
business, etc. How do they fit together.
Enterprise architecture (very popular term): a vertical view :
Business architecture plus technology architecture for a company
Combine business, applications and IT infrastructure components
into a solution for customers
Enterprise Architecture (Horizontal View)
Can exist at several levels in enterprises
Local app architectures of individual apps (e.g., departmental inventory)
enterprise-wide app architectures (e.g., ERPs)
inter-enterprise (B2B) app architectures (e.g., SCMs, emarkets)
Focus: Integrated Architectures Work well with others
Copyright (A. Umar)
Enterprise
Building Blocks Architecture
Business Processes Business
Healthcare BPs Telecom BPs Other Vertical BPs Architecture
(Clinical) (e.g. Provisioning) (MRP, Financial)
Common BPs (Marketingt, CRM, HR)
Enterprise Applications
Healthcare Application
(HCIS) Telecom OSSs Other Vertical Apps Architecture
Vertical Integrations
Supply
Customer Corporate Chain
Services Management
Customers, Management
Partners,
Resellers Supplier,
Distributors
Human
Resources
Finance &
Marketing Accounting
Employees,
Managers
Developed Rented
Bought Bought
App4 App5
Horizontal Services
(Wired/Wireless Network)
Static
Informa HTML/XML
tional
Apps
Web Gateways
Transactional (CGI, Servlets &
Apps Server Pages)
Enterprise-wide
Components and
Transactional
Web Services
Apps
Large inter-enterprise applications
that include components from Service Oriented
multiple companies (Composites) Architecture (SOA)
Copyright (A. Umar)
Simple Informational Applications
Web Web
Browser Site
HTTP
HTML HTML/XML
Web Docs
/XML
Server
Displays
HTTP
HTML HTML Docs
Web
Displays
Server
Java Applet
Database
JDBC Server
Gateway
(CGI, ODBC/JDBC
Servlets,
JSPs, ASPs) Database
(Dynamic
Content
Generation)
Database
Component
Component Component Component
Infrastructure
Enterprise Components
Business Components
Primitive Components
Supply
Customer Corporate Chain
Services Management
Customers, Management
Partners,
Resellers Supplier,
Distributors
Human
Resources
Finance &
Marketing Accounting
Employees,
Managers
App4 App5
= Adapter/Data Mapper
Copyright (A. Umar) = Service Interface
SOA A Closer Look
Basic Requirements for SOA
Applications must be developed as a set of components
that provide services.
Services and components must be as general purpose as
possible.
Services must have well-defined interfaces.
Applications and their components must use Web-Internet
communication.
Applications must be able to interwork with other
Applications.
Additional characteristics of SOA are:
Applications must be scalable and portable.
Thin client model should be favoured.
Service Providers should use standard Internet servers.
Open
XML
Internet Web
Protocols
service
A programmable application component accessible via
standard Web protocols
UDDI
Provide a directory of services on the Internet Universal Description,
Discovery and Integration
5. WSDL Details
<message name="GetInventoryLevelQuery">
<part name="item" type="xs:string"/>
</message>
<message name="GetInventoryLevelResponse">
<part name="quanity" type="xs:string"/>
</message>
<portType name="InventoryService">
<operation name="GetInventoryLevel">
<input message="GetInventoryLevelQuery"/>
<output message="GetInventoryLevelResponse"/>
</operation>
</portType>
Copyright (A. Umar)
UDDI Definition
<businessEntity businessKey="20MAF7F0-42-39-41E6-E0DC-900C0T00ACDD"
authorizedName="911234567PEN"
operator="www.supplier1.com/services/uddi">
<name> Supplier1 Company</name>
<description xml:lang="en">
The source for all type of computer devices
</description>
<contacts>
<contact>
<personName>Bob Jones </personName>
<phone>(555)123-7299</phone>
</contact>
</contacts>
<businessService
businessKey="20MAF7F0-42-39-41E6-E0DC-900C0T00ACDD"
serviceKey="1FFE1F71-2AF3-45FB-B788-09AF7FF151A4">
<name>InventoryService</name>
<description xml:lang="en">
The source for all types of computer devices
</description>
</businessService>
</businessEntity>
Copyright (A. Umar)
SOAP Message 1
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<m: GetInventoryLevelQuery xmlns:m="Some-URI">
<item>Laser Printer</item>
</m: GetInventoryLevel>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
<SOAP-ENV:Body>
<m: GetInventoryLevelResponse xmlns:m="Some-URI">
<quanity> 235 </quantity>
</m: GetInventoryLevelResponse >
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Copyright (A. Umar)
Examples: WS and ASPs
Service
Customer Broker
care (UDDI
Registry)
Network
Planning
Inventory
Service Systems
Broker
(UDDI
Clients Registry)
Network
Provisioning
Billing
Sales Supply
(order Customer
payment Chain
processing)
Mgmnt
MC
Selling Corporate Mgmt Partners,
Chain
(CRM)
BI CP Supplier,
Management EP Scheduling Distributors
KM BMC
Service
Management Telecom General
Back-office Network Telecom General
Planning Processes
Customer Human Resources
Service
BI=Business Intelligence Network
Finance & Acctg
BMC=Business Monitoring & Control Support Network Engg
CP = Corporate Planning
EP = enterprise purchasing Employees,
KM = Knowledge Management Managers
MC= Monitoring & Control Service Assurance
Copyright (A. Umar)
SOA Key Characteristics
1.Reusable Components: It is important to decompose business applications into
business components (BCs) in such a fashion so that as many components as possible
are general purpose (i.e., reusable) and as few as possible are special purpose.
2.Web-Services Enablement. The components must have well defined service interfaces
that can be stored in a directory so that service clients can query an interface directory
to discover and invoke the needed service providers (SPs) over the Internet (http) .
3. Enterprise Service Bus (ESB): a loosely coupled common middleware infrastructure
must be used for communications, brokerage, security, directory & administration services
Enterprise App2
App1 App3
Service
Bus (ESB)
Directory
App4 App5
= Adapter/Data Mapper
Copyright (A. Umar) = Service Interface
Another View Translation into a Solution Architecture
User Tier Business Tier Resources Tier
(New Business Logic ) (Back-end/External
Web, http Apps and Databases)
Web
Server EAI platforms for
VOIP Back-end apps
External (known) apps
Trading network (B2N)
WAP apps
CRM
http
Portal
Other ERPs
Front-end http
Integration
Selling
Back-end
Integration
Chain
Management Payment
Systems
Infrastructure
Copyright (A. Umar)
Developments in WS & Reality Check