| | June 20158CIOReviewWhat is an Enterprise Service Oriented Architecture (SOA)For many SOA means creating a library of RESTful web services that wrap a subset of existing software components. Unfortunately, there is a lot more to do in order to qualify as an enterprise SOA framework. In truth, the entire application development processes must be reviewed and updated to meet this criterion. This article will touch on the areas that CIOs should consider when moving this direction. The Open Group describes the SOA framework in two dimensions. The first is a horizontal dimension that focuses on each of the application layers from user interface to the back office infrastructure. The second is a vertical dimension that focuses on the external aspects of the overall system. Therefore, Enterprise SOA is the proper review and remediation of this framework within your enterprise and across all of your primary partners providing services to the enterprise.The 5 Layers of the Horizontal DimensionThe Consumer Interface Layer is the graphical user interface (GUI) that most of the customers and partners use to access your enterprise application. The main concern in this layer is to make sure that all of the business logic is relocated into the next layer. Once the shift to the SOA framework is complete, a portion of these consumers will be accessing the web services layer directly and going around the traditional Consumer Interface Layer. The term for this is creating a "Headless" experience.The Business Process Layer refers to the individual processes that the GUI needs to operate and the other business specific processes needed to operate the business. This larger category has been further subdivided into the Services Layer, Service Components Layer, and Operational Systems Layer. The goal for each of these 3 layers is to ensure all source code that is properly separated into the correct layer. This can be a time consuming effort, usually by the enterprise architects, to inventory the applications source code into XML Packages (or other similar method). From the top down, there is the Services Layer. This is the Application Programming Interface (API) endpoints where consumers will authenticate and make requests of your application. All of the other services and software components roll up to this collection of web service calls. This collection must be a simple, clear and very well documented access point for your customers.The Service Components Layer is the building blocks of source code organized into business driven processes as described above. They can be combined in a variety of different ways to meet the needs of the GUI and the external consumers of the application. Consider mapping each component to the different customer persona types (general user, administrator, developer) as part of the inventory process.Enterprise SOA in a SaaS Company By Patrick Desbrow, CIO & VP-Engineering, CrownPeakopinionin my
< Page 7 | Page 9 >