As emerging technologies evolve to reduce integration costs and improve time to market, organizations find themselves in a constant battle to keep up. By deciding to pursue a "service-oriented architecture" (SOA) as an enterprise architecture, organizations have already taken the first step in breaking away from monolithic disparate systems.
As the enterprise matures and the SOA begins to have an inventory of reusable services, you may find yourself in a data nightmare -- consisting of performance bottlenecks, data inconsistency, scalability issues, and more custom coding returning you to the same issues that you had with previous siloed applications.
Previous componentized architecture and attempts by organizations to achieve enterprise interoperability through Web services alone have proven to be unsuccessful as far as data access is concerned. Recent studies show that, even now, organizations forget about their data when moving to an SOA. By neglecting the data access component, challenges such as data access and security, performance, and code reuse will often come up, resulting in lost time and money.
When first deciding to move away from applications to a reusable service architecture, it is important to avoid falling into this statistic by asking such questions as:
- How are we going to control and restrict access to our data?
- How are we going to deal with the increased number of transactions?
- How are we going to ensure data integrity?
What is a data service layer -- and what are its benefits?
As a single entry point to all enterprise data stores, the implementation of a data service layer has many benefits. Data access can now be performed in a centralized manner. The various business rules will be referenced for how the data transformation will occur. With a single entry point, issues such as optimization and transformation can be addressed. No longer will there be a need to have multiple ETL tools for each application. With one discrete set of rules, the transformation of reference data will become a non-issue, greatly reducing complexity in the overall enterprise.
Another benefit of the data service layer is ensuring data integrity and security. Without data services, each application or service was required to have its own access to data. This resulted in an increase in resource transactions, stale enterprise data, and overall performance problems and bottlenecks. By utilizing the data service layer, all of your enterprise applications can retrieve data by calling the appropriate service.
But all too often, enterprise applications are presented with stale or inaccurate data. The reasons for this often relate to problems with data synchronization rules. Many applications use a segmented database structure, which leaves copies of various data in different places. When this occurs, it is possible that the different enterprise applications will contain different reference data, causing data integrity problems. With a data service layer, the risk of this happening is mitigated because the data service layer knows exactly how to retrieve the current data.
Finally, with the addition of the data service layer, an organization will dramatically reduce time to market on new features or development. If you think of access to data in a service-oriented manner, elements and functions to retrieve the required data will already exist when new business rules present themselves. Since data access often demands a large portion of overall project development time, savings are instantly realized by the reusable components developed in the data service layer. Fewer resources will be spent in quality assurance because the components have already been tested and optimized.
As your organization starts its transformation to an SOA, there will be many challenges. Among them will be changing the organizational concept of data access. But once the decision is made to move to an intelligent data service layer, the benefits of a completely decoupled enterprise can be realized. The organization's most valuable business asset, its data, will be accessible to consumers in a secured, centralized manner.
About the author: Steve Karlovitz is an enterprise architect with more than 10 years of experience in business process implementation, information systems development, instructional design and team leadership. Steve is also co-founder of Synegen Inc., a premier provider of enterprise information technology and business strategy services.
Have you implemented a service oriented architecture yet? What questions do you have about SOAs and data management? What other resources would you like to see on this topic on SearchDataManagement.com? Email us and let us know.