Doorgaan naar hoofdcontent

Posts

Er worden posts getoond met het label soa

Win a free ecopy of "Oracle SOA Infrastructure Implementation Certification Handbook"

Book Give-away: Hold a chance to win free copy of the 'Oracle SOA Infrastructure Implementation Certification Handbook (1Z0-451)' just by commenting! For the contest we have two copies of Oracle SOA Infrastructure Implementation Certification Handbook (1Z0-451) to be given away to two lucky winners. How you can win: To win your copy of this book, all you need to do is come up with a comment below highlighting the reason "why you would like to win this book”. Duration of the contest & selection of winners: The contest is valid for 30 days, and is open to everyone. Winners will be selected on the basis of their comment posted. Also please don't forget to mention your email adres within the comment. About the book: http://www.packtpub.com/ oracle-soa-infrastructure- implementation-certification- handbook/book   Oracle SOA Infrastructure Implementation Certification Handbook (1Z0-451) is w ritten by Kathiravan Udayakumar, who is...

ORA - Oracle SOA Foundation

Service Oriented Architecture Issues todays IT: Heterogeneity: no interoperable interfaces, now we have web services Business Focus Agility, reuse and cost reduction Benefits of SOA Reuse of Services (at the business unit level) Agility: respond quickly to changing business requirements Simpler integration (by using standards) Architectural Principles Formal contracts (Thomas: Contract Standardization) Loose Coupling Abstraction Reusability Autonomy Statelessness Discoverability Composability (Durability) (Interoperability) (Standards compliance) (First all from Thomas Erl's books, last three added by Oracle) Service Definition principles Service encapsulation - A Service must perform a complete unit of work Service loose coupling - Services maintain a relationship that minimizes dependencies between them Service contract - Services adhere to a contractual agreement, as defined collectively by one or more Service description documents Service abstraction - ...

SOASchool Certification: Module 8

Today I had my SOASchool.com Module 8 exam for the SOA Certified Architect certification. Suggested preparation: You have to follow a course or buy the selfstudy kit Read the chapters of the SOA Design Patterns book Read the reader of the selfstudy kit You really need to understand the Patterns and also the use of the patterns in relation to each other Questions The questions are the same as the other exams Select All That Apply are the difficult ones and there were quite a lot Next is the final Module 9  for me, and this is the Lab. The Certification is valuable, because it shows that you know and understand the terms and challenges you face when working within a Service Oriented Architecture. Or trying to work towards a SOA. The nice thing about this certification is that it is Vendor Neutral. It does not mention a particular platform. It does however address the SOA standards out there and that is a good thing of course. The customers will also recognize this kind...

Oracle ADF and Fusion Middleware

Today I browsed through some nice sessions  on the Oracle ADF Framework . I heard from the framework but not know what I can expect from the Framework and how it is related to SOA and Fusion Middleware. The Framework is actually quite big and implements the Model-View-Controller  architectural pattern which makes GUI development easier to develop and maintain. Oracle sets it as "next generation" Web User Interfaces for Fusion Applications Middleware components like Enterprise Manager WebCenter Spaces The next picture shows an overview of the components of ADF. So I asked myself how is this Framework to be positioned with Oracle SOA Suite, Oracle BPM Suite and Oracle Service Bus? The next picture shows its place. In my view within a SOA 5-layering architecture: ADF can perfectly be used within the development of the presentation layer. The OSB is generally used as an abstraction between all 5 layers. This means that all Services (Task Services, Entity Services an...

Do not use generated database webservices in Cordys

Introduction Cordys BOP4 has the great option (just like all other respected EAI tool) to generate webservices on top of your databases. In fact you can even generate a GUI on top of it, so that you can adapt data within your database through a GUI. Sounds great or not !? Watch out, because there can be a catch and this all has to do with a good SOA design! Using webservices In a project I work in, there has been decided to use generated webservices within the BPM processes. This can easily be done by generating the MetaData of the database and then generate webservices for it, or even customized webservices by using you own SQL statements. This all works fine, but .. 1) You have to catch exceptions within all the BPM processes that use these webservices 2) The data within the databases can change (types, extra data elements, data elements removed, partitioning of data, primary key changes) 3) This will impact all the BPM processes that use these generated webservices Defin...

What to put in BPM?

Introduction When implementing a BPM or using a BPM tool I see a lot of functionality that (in my opinion) does not belong into that layer, but within a SOA Service. But are there some general rules or guidelines that you use to decide what to put in BPM and what to put in a Service? This blog item is a first try. Put in a Service This is a list of items/functionality that I would put in a Service: Static calculations not dependant on business data (example: Fahrenheit to Celcius calculations) High performance / complex calculations on data (example: complex calculations over series of data) Technical orchestrations (example: Getting data out of several different databases) Sending messages (in a particular format) to another department or even another organization (B2B) (example: ebXML messages, HL7 messages) Adapters (example: database-, file-, mailadapters) These are always implementation specific in most cases and the implementation should be abstracted with a service. H...

SOASchool: Module3

Friday I had my 3rd exam SOA Design & Architecture . In this exam you also get 50 questions and you need to have 80% right. This exam is about understanding the 8 principles of Service Orientation. It has strong resemblance with the first module, but this exam was more detailed. Up to module 8 of my SOA Architect Certification.

Service Orientation: Exception handling pattern

Introduction I am a great fan of the service orientation principles described by Thomas Erl:  http://www.soaprinciples.com/ And also of its patterns:  http://www.soapatterns.org/ This will not be a sucking up story about Thomas, but the need for a pattern on error handling. Layering One of the patterns is that of Service Layering, in which the Services can be categorized in the following layers: The Utility Service Layer consists of Services that are of agnostic functional nature and are not functional related to a business entity or business process. The Entity Service Layer contains Services that are related to business entities and are usually also agnostic. The Task Service Layer is more related to Services that are specific to a particular task or process. Usually you also have a Orchestrated Task Service layer contains Services that orchestrates Services to fulfill a business process. My question is how to deal with errors in the separate layers? Error Types ...

Book review: SOA: An Integration Blueprint

Introduction This describes a review of the book: Service-Oriented Architecture: An Integration Blueprint. The book is written by Guido Schmutz, Daniel Liebhart and Peter Welkenbach. The book is about successfully implementing your own enterprise integration architecture using the Trivadis Integration Architecture Blueprint (TIAB). The authors try to set a standard for integration problems that organisation face. Chapters The book contains 5 chapters, but unfortunately the subchapters are not numbered and sometimes it is difficult to see what belongs to what. Chapter 1: Basic Principles Chapter 2: Base Technologies Chapter 3: Integration Architecture Blueprint Chapter 4: Implementation scenarios Chapter 5: Vendor Products for Implementing the Trivadis Blueprint I will dive deeper into the chapters later on, but first some general remarks about the book. General remarks As sais before I missed the subchapter numbering. The book describes an integration blueprint, so the term ...

Cordys BOP4: Database connector

Introduction Just like any other Enterprise Service Bus, Cordys BOP4 also has connectors like file, ftp, mail and database. This blog item shows how a database connector is configured within the product. Note: Within a Service Oriented Architecture that must be flexible and product independant I would advise not to use product specific database connectors. I would recommend to implement an abstraction layer around the database with for instance Hibernate and expose it as a webservice. Ws-AppServer Within the Cordys BOP4 platform a database connector is implemented with a so-called Ws-AppServer. This is a java layer between the database and can be used to implement some business logic and/or the place to react on database events. For this example I have used a MySql database instance (Test) with an Employee table. DROP TABLE IF EXISTS test.Employee; CREATE TABLE test.Employee ( EmployeeNumber varchar(255) NOT NULL DEFAULT '', FirstName varchar(255) NOT NULL DEFAU...

How to explain Cordys BPM?

Today I got a question from Anita one of my Twitter followers: "Most people just dont get the whole application, BPM, layered language, how do you explain Cordys to people? " So to get a discussion going i post this question to my Blog so that we can discuss here ! A few questions come to me: What do people don't get? The layering? The BPM language? Or the step towards Cordys? The whole thing about BPM is that you get a flexible business architecture that is abstracting the business processes from the technical implementation. This way you get technical flexibility as well as business flexibility. BPM brings business and IT together ! Cordys BOP4 is a platform that supports this notion of layering and processes with a service oriented architecture. It follows the principles as set by Thomas Erl's SOA Principles . Within the SOA patterns there is also the layering pattern : This is about layering your Services into three abstraction layers. Thomas ta...

Cordys: Contract First design

Introduction One of the principles of Service Design is Contract First . With this principle you first design the service contract of the service and then implement it. This blog item will show a small example within Cordys BOP4. Contract First First I will create a simple HRM Employee service first. The WSDL can be found here Before you can use this WSDL you have to import the WSDL. Create a Project with com/examples Folders Create new Web Service document in com/examples Folder Select Import WSDL and name the service, click Next Now you have to fill in the URL of the WSDL. I have installed Cordys on my Windows machine and put my EmployeeService within the <CordysInstallDir>/Web directory. This way the WSDL is accessable through a URL. Select Show Services to view the service defined within the WSDL. Check Interface WSDL , because it is just the interface and not the implementation we are importing. Now you are able to use this as a basis to define a Contract Bas...

SOA Business Events

Introduction I read a nice article here on the SOA Magazine site about "SOA: Dealing with events". This blog item discusses some of the points made and the practical consequences it has (in my opinion). What is an event? The first fundamental question you have to ask yourself is "what a business event" actually is. The writer talks about "a significant or meaningful change in state", "a higher level semantic form" and "meaningfull" for the business. Technical local events are not considered business events. I think this is the same discussion you always have about what a "Service" is. So this always remains a point of discussion. A technical event can also be very usefull when for example systems are going down. This shall have impact on other parts of the business and maybe should trigger the business. Key Concepts Autonomous messages The clue of the statement the writer makes here is: "each message contains just e...

Book review request

Today I received a request to review a new book on SOA:   Service Oriented Architecture: An integration blueprint I feel honoured of course and in a few weeks I will receive a hard copy of the book. Looking forward to it and I will keep you up-to-date about my review ! Regards, Roger

SOA Service Design Principles by example

First some context I a project i had to couple a PeopleSoft system with Planon. PeopleSoft is a HRM system used to store information about employees (in this case) and Planon is a facility management tool so that employees can order facilities. When a employee is employed within the company, this employee has to added to the HRM system and this employee has to be authorised within the Planon system. In the past this synchronization was done (as you see often) through a CSV file. In the new architecture this kind of synchronization has to be done through a ESB (Enterprise Service Bus). In this case the Oracle Service Bus. Service Naming I wanted to add a new Service for this, so the first thing you do it to come up with a Service Name. A couple of mistakes you often see is: * The name is the same as the project name. This is of course not done, because in a couple of months this name is forgotten and has nothing to with the functionality of the service at all (most of the time)....

Automatic SOA black box testing with soapUI

With the introduction of soapUI 3.5.1 it is possible to check database and JMS sources. This can also be very useful for automatic blackbox testing of your OSB services. I used it wihin my projects to check if correct soap responses were returned, the correct data was written to a database and with the use of HermesJMS I was able to inject JMS messages. This blog describes how i used soapUI for this. Install required software Install soapUI 3.5.1 (see also http://www.eviware.com/nightly-builds ) Install required JDBC drivers For the use of JDBC steps you have to install the correct driver: see here You need to close soapUI and put the driver jar file within the SOAPUI/bin/ext directory and start soapUI again. Note that within the logging you can see that soapUI picks up the jar file. Install HermesJMS 1.13 Setup Test Suite Right-click a project and select New TestSuite and enter name for the suite Right-clik the TestSuite and select new TestCase A testcase contains...