My readings, experiences, confrontations with SOA, Agile and related technologies
My Notes - SOA for Dummies Part 10
My Notes - SOA for Dummies Part 9
My Notes - SOA for Dummies Part 8
My Notes - SOA for Dummies Part 7
- When application is requested, broker gets notification.
- Consults registry, what needs to be done and whether it can be invoked at this time.
- Broker checks
- All components are working and if not it starts them.
- Interfaces between components and what information those interfaces need to know, as all adapters get connected to execute requested business process.
- If any rules associated with the connection between components (or adapters). So components get them from Rules Engine associated with registry.
- Based on rules if required, broker checks and gets the connection with other components.
My Notes - SOA for Dummies Part 6
My Notes - SOA for Dummies Part 5
Wednesday, 18 February 2009
Chapter 6: Xplicating XML
Here author talks about XML and how different forms of XML used in the SOA. These forms include XML for actual data, XSD for metadata, WSDL for webservice description, SOAP for message transport.
My Notes - SOA for Dummies Part 4
Chapter 5: Loose coupling and Federation
Loose Coupling
- Old applications were tightly coupled and were executed and maintained as huge chunk of code, which is hard to maintain and change.
- Loosely coupled applications are independent of each other in terms of execution, so can be replaced without affecting others.
- Such loosely coupled applications can be tightly coupled by themselves, that tight coupling is among the subcomponents it has.
- Other advantages can be
o Create new applications easily by assembling such discrete services/applications
o Create secured business applications quickly, as security can be another independent service itself which can be hooked with other services.
o Isolate problems easily, to locate failures, easy to test.
o Such services can be reused and can be sold separately to other applications
Licensing
- Licensing has been changed to one perpetual license to subscription based, for services used. SOA services can be licensed in similar fashion. Different applications/domains have different ways to do it.
- How licensing and charging such services be different? Like some financial services can be charged per transaction.
Federation
- It’s about governing policies,
- Services has some set of policies which are used application / companywide (imagine federal government) and these policies can have local flavour per each department, which is more domain specific for the environment in which those services will operate (imagine state government).
- So Federation is used to solve integration issues. In other words changing global policies to suit local needs, so that integration can be easy.
SOA and Federation
- Federation is implemented using SOA registries, where application-wide or global policies are in SOA registry, which is treated as parent registry by other domain specific registries.
- Every domain (or department) will have its individual registry which inherits from global policies and also includes domain specific policy.
- Security can be one of the global policies.
- Domain is defined by SOA registry and SOA broker. And other SOA components can be shared across domains.
My Notes - SOA for Dummies Part 3
PART II - Nitty – Gritty SOA
Chapter 4: SOA Sophistication – Pieces of SOA
- ESB – Enterprise Service Bus is a communication channel for all SOA services. One SOA Service sends messages and receives messages to and from other SOA services. All this is done using ESB. It’s an end-to-end communication.
- SOA Registry – It is an electronic catalogue for all services. It maintains operational information about services to call each other and metadata information, what that service is all about input/output messages, which can be used programmers. Important function of registry is to publish services, to make it available for its consumers.
- BPM – Business process modelling is an end-to-end solution. This is a more like configuration, where we can specify to carry out specific business functions which different business processes will interact. End-to-end business processes a.k.a. workflow.
- Service Broker – This is a runtime component, for BPM, which can actually find services and connect for a business process.
- SOA Supervisor – Just monitors all processes by using reports generated by monitor agents (these are initialized by service brokers), this enables SOA supervisor to know current state of processes. This is just like traffic police to make sure everything flowing smoothly.
- SOA Plumbing – These are adapters which sit in between existing legacy code and bus
BPM Tool
- Important functions
o Creates Business functions
o Links in Individual functions to Business applications. Also links Business apps together
o (publishes) adds and refers services registered in SOA Registry
o Programs for workflow engine.
- Availability of services at all levels should be 99.999%
My Notes - SOA for Dummies Part 2
Chapter 3
- This is generic information so far
- Starting with Components, and code reusability, how it can be done, how it was restricted to individual developers, customers, applications. When such components tried to interact had issues of interoperability
- When internet started it was just static pages, as it evolved specifications and protocol developed around technological aspect HTML, XML, Browsers. This further extended to use such component based systems to interact over Internet.
- This gave birth to webservices which posed challenges over connectivity and sharing data, where XML, WSDL and SOAP protocols were developed as standards
- As webservices are used more by business, all such business process confined in one boundary earlier, there was need of making such processes accessible online thru internet. Such that it can be accessed by other businesses.
- Business Processes:
o For any business there are set of processes and sub-processes are required to carry out to carry out day to day business functions. Generally it may need manual intervention and application systems. Stringing together such function of a business function is called business process. And SOA can do such stringing activity of manual functions and application functions and the process management to carry out business process.
o From SOA perspective, business processes includes people, those business process itself, implemented as software applications, adapters, and process management.
- Siloed Applications
o Existing applications when added with some more components are called as composite applications.
o Such composite applications (e.g. for one business department) interact with other composite applications interacts directly. But this interaction can be costly in terms of resources; SOA facilitates such integration with some process management. However integration is most difficult and crucial part for successful SOA implementation.
o Application silos are applications which are constrained for individual business departments or functions. Are not built for use by other business functions. Such systems have two issues inconsistent data definitions and process duplication.
- How SOA helps?
o SOA just work with these application silos as it is, avoiding manual work required to talk to different silos.
o SOA can be done in steps, no need to do all at once and hence no wastage in earlier investments.
My Notes - SOA for Dummies Part 1
Summary - 4 major parts
- - Part 1 general SOA
- - Part 2 SOA details and components – Arch etc
- - Part 3 SOA other important bits – governance, security
- - Part 4 Where you can apply SOA, litmus test and how to apply
- - Part 5 real life SOA, how biggies are using it.
Chapter 1
- Nothing special
- Why SOA is needed? Whats it in there?
- SOA is nothing but reusing existing architectures and processes, and integrating with other architectures and processes to conduct business smoothly, in this dynamic and ever changing market place.
- This integration is independent and abstract from layers, i.e. business layer shouldn’t worry about technology layer and vice versa
Chapter 2
- More about SOA how the SOA architecture evolves. How business layer and technology layer differ in terms of design, implementation, people and still achieving the results.
- SOA is about
o Only Business applications not all applications can be developed using this
o Black box components, abstracting unnecessary complexity under the hood
o Loosely coupled components, less dependency in terms of interaction among the components
o Achieving results thru well defined services using black box components
- Legacy systems/code can be used with SOA Components by providing “adaptor” which forms bridge between Legacy and SOA component
- SOA supervisor monitors all components are behaving as desired and make a corrective action if required.
- Conclusion of the chapter
o SOA enables separation of Business /functionality from Legacy System connections
o In other words, your architecture diagram can have clear separation of Business layer and plumbing layer / technology layer which connect to legacy code. SOA enables layer separation and evolution both layers i.e. business and technology independently. Evolution is the need of current market place as technology and business are changing so rapidly.