Upload
terry-cho
View
3.491
Download
0
Embed Size (px)
DESCRIPTION
Simple concept of SOA
Citation preview
Chapter 4. Service Oriented Architecture
“Enterprise SOA Service Oriented Architecture Best Practice”
2006-05-17Byungwook Cho K.
What is software architecture?
• “An architecture is the set of significant decisions about organization of a software system” – Booch, Rumbaugh, Jacobson
• “The software architecture of program or computing system is the structure or structure of system, which comprise software elements, the externally visible properties of those elements, and relationships among them” – Brass, Clements, and Kazman
What is SOA?
• "A SOA is software architecture that is based on the key concepts of application frontend,service,service repository, and service bus. A service consists of contract (WSDL), interface and implementation "
Elements of SOA
• SOA is based on four key abstraction– Application frontend– Service– Service Repository– Service Bus
Life cycle of elements in SOA
• The estimated lifecycles of data,services, application frontends , and technologies are different
Application front end
• Application frontend is – Active player of an SOA– Service consumer– Initiate and control all activity of enterprise system
Service
• Service is component of distinctive functional meaning that typically encapsulate a high-level business concept
• Consists of– Contract
• purpose, functionality, constraint, usage of service
– Interface• Physical implementation of interface
– Implementation• programs, configuration data ,database• Business logic , Data
NOTE : The types of service [ from Service Oriented Architecture - Thomas Erl]Business Service vs Technical Service (utility Service, application service)Process service, Task centric service, Entity centric business service, utility application service.Hybrid application service.
Service
• Conceptual structure of service
NOTE: Every service is an entity of distinctive functional meaning that typically encapsulates a high-level business entity. Services impose a strong vertical slicing of application that defines the coarse-grained structure of the whole system.
Service repository
• Service repository is “provides facilities to discover services and acquire all information to user the service “
• Service repository is indispensable in long term• It contains
– In addition to service contract : location,provider,contact ,usage fee,technical constraints,security issues and availble service level
– SVC Info,ACL,SLA,Transactional properties of SVC & operation (CRUD)
– In cross enterprise : security,user registration, service subscription,billing and versioning
Service repository
• Binding Type– Development time binding– Runtime binding
• By name• By properties• By reflection method 를 가지고 오지만 , function 에 call 방식을
미리 알 수 없다 . Meta data 로 call 에 필요한 argument 들을 가지고 오고 , 거기에 argument 에 필요한 내용을 mapping 한다 .
* It can be replaced by ESB routing feature
Service bus
• A service bus connects all participants of an SOA services and application frontend
• Characteristics of service bus– Connectivity– Heterogeneity of technology– Heterogeneity of communication concept (MEP)– Technical service :
logging,auditing,security,transformation,transaction