SOA Watch: How Mashups fit with SOA

Registration is free. Login or register to view/download this content.

Author(s)

Business Relationship Manager - Product Lifecycle Management, Chevron Corporation

With the advent of rich internet applications and extensible interfaces such as AJAX, we now have the ability to quickly create mashups to solve specific business problems using standard dynamic interfaces that front services. Mashups provide powerful ways to take existing applications and services, and create something even more useful for business.

We could say that the lines between the enterprise and the Web are blurring…first blurred at the content or information levels with the early mashups, and now at the service and process levels as well. We could find that we soon live in a world where it’s difficult to determine where the enterprise stops and the Web begins.  Now that’s scary and exciting at the same time.

While the best example of a mashup is the old and overused Google Maps-meets-some address-databases, this type of mashup solution really highlights the value of the notion. Somebody has a need, takes a few days to create the mashup to solve the problem, and there you have it.

Moving on from there, you have more complex mashups that approach the concept of composite applications, or, applications that are made up of many services…an advanced SOA concept.  For instance, mashing up a customer database, with marketing metrics, and then mashing up the results even further with your sales forecast processes. Some of the information and services you own and maintain, perhaps managed from your SOA, and some of which are accessible over the Internet.

Preparing for Mashups

It’s important to remember that there is a huge resource being created on the Web these days in terms of both services and content. This includes access to SaaS applications (that are better than their enterprise-bound counterparts), service marketplaces, and even mash-able applications that you can mix and match with other Web 2.0 applications/APIs/services or enterprise applications/services to quickly solve business problems.

However, having such a resource available for the price of a broad-band connection does not mean you’ll be able to leverage it properly. Indeed, it’s going to take some time before your enterprise is prepared to leverage mashups beyond the browser.

The best approach to SOA/mashup synergy is to design and deploy the first generation SOA with the mashups in mind. In other words, make your enterprises systems “exposable” to services or applications outside of your firewall, or, “able to consume” the same services or applications. This is harder than it sounds, and chances are your current systems can’t see outside of their own operating systems, if not their firewalls.

Truth-be-told most SOAs, if built correctly, will have the side benefit of being able to leverage the Web-based services and content as resources for mashups, but you need to design for that capability in order to make your infrastructure most effective. This means cataloging and testing services you don’t own, attempting to mashup systems inside and outside of your firewalls, and making sure your security planning considers this notion as well. Many who don’t plan for this will be stuck with an enterprise that can’t see the new Web, and I think those enterprises will have a huge strategic disadvantage in the years to come.

So, what do you need to do to prepare for mashups? It’s a matter of addressing the following areas: Requirements, Design, Governance, Security, Deployment, and Testing. In essence, these are core architectural activities that are required to get you to the Promised Land of mashups on top of your existing activities when you create a SOA.

Requirements for mashups are needed to understand your own issues that are local to your enterprise. A common mistake is to “manage-by-magazine,” and assume that all of the cool stuff that works for other enterprises will be the right fit for yours.  Truth be told, notions such as mashups or SOA in general have variations in value depending upon the enterprise.  Consider both the business drivers and the state of the current architecture. Key questions include: What mashups will be valuable to my enterprise? How much change needs to occur to get me there?

Design for mashups refers to the process of figuring out how the systems should be configured, and how enabling technology and standards are applied to provide the best platform for mashups and the best value for the underlying SOA. Key questions here are: What interfaces will I expose, and how?  How will I handle scalability?  How will I approach both visual and non-visual mashups? How will I leverage services and interfaces delivered over the Web? How will I manage the exposure of my interfaces and services to others on the Web, if needed?

Governance for mashups, considers the role of mashups and how they are managed.  Given that mashup are made up of services, and may indeed become services themselves, the organization must now manage these services across the entire lifecycle, from inception through analysis, design, construction, testing, deployment and production execution, as with any service or process contained within a SOA. Thus, at each stage, certain rules or policies must be carried out.  This means selecting, building, and maintaining a registry, repository, policy enforcement, and governance rules engine that is mashup-aware. Moreover, mashups, albeit quick and dirty in some instances, may need lifecycle management as well.

Security for mashups is critical, considering that you’re looking to leverage interfaces, content, and services you did not create nor do on your own.  As such, you could find that your innocent-looking AJAX interface that you mashup with your customer data is actually sending your customer data to some remote server, and thus compromising your customer list and your business.  Care must be taken to implement a well thought out and systemic security policy and technology layer that will protect the value of your mashup platform. This should mesh with your SOA security, or become an extension to it.

Deployment for mashups, means that you’ve selected the proper enabling technology and standards. Clearly, AJAX is popular for interfaces, but is not always a fit for all enterprises. Moreover, how will the technology link to the governance and security plans? What are the key products you’ll leverage to support mashups within your SOA, and how will they be linked to the enabling technology solution already implemented within your SOA?

Testing for mashups, means that you consider all sorts of patterns of use, and create a test plan to reflect them. Care must be taken to insure that your SOA and external “mashable” components are able to work and play well together, and that the enabling technology and standards are working up to expectations. The test plan should be linked with design, governance, and security, as well as consider the technology employed. In essence, you’re testing a development platform with all of its supporting components.

Mashup are an emerging notion, and are clearly merging together with SOA. They provide value by linking the new components of Web 2.0 with our own sets of information and services. What’s more, they provide a quick and easy way to solve many of today’s rudimentary business problems, and should be able to solve more complex and far reaching problems in the future. They make the value of both the emerging Web, and SOA, much more visible and shorter term.

However, like any new concept, each enterprise must consider the overall value in context of their own business issues, and make sure they localize the concept for their own needs and requirements. First, consider the infrastructure needed to support mashups, typically a SOA, as well as the costs and benefits of both the underlying investment, and the value of the solutions that mashups may bring.

Similar Resources

Featured Certificate: BPM Specialist

Everyone starts here.

You're looking for a way to improve your process improvement skills, but you're not sure where to start.

Earning your Business Process Management Specialist (BPMS) Certificate will give you the competitive advantage you need in today's world. Our courses help you deliver faster and makes projects easier.

Your skills will include building hierarchical process models, using tools to analyze and assess process performance, defining critical process metrics, using best practice principles to redesign processes, developing process improvement project plans, building a center of excellence, and establishing process governance.

The BPMS Certificate is the perfect way to show employers that you are serious about business process management. With in-depth knowledge of process improvement and management, you'll be able to take your business career to the next level.

Learn more about the BPM Specialist Certificate

Courses

  •  

 

Certificates

  • Business Process Management Specialist
  • Earning your Business Process Management Specialist (BPMS) Certificate will provide you with a distinct competitive advantage in today’s rapidly evolving business landscape. With in-depth knowledge of process improvement and management, you’ll be able to take your business career to the next level.
  • BPM Professional Certificate
    Business Process Management Professional
  • Earning your Business Process Management Professional (BPMP) Certificate will elevate your expertise and professional standing in the field of business process management. Our BPMP Certificate is a tangible symbol of your achievement, demonstrating your in-depth knowledge of process improvement and management.

Certification

BPM Certification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Process Management Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Operational Excellence Specialist
  • Earning your Operational Excellence Specialist Certificate will provide you with a distinct advantage in driving organizational excellence and achieving sustainable improvements in performance.
 

 

OpEx Professional Certificate

  • Operational Excellence Professional
  • Earn your Operational Excellence Professional Certificate and gain a competitive edge in driving organizational excellence and achieving sustainable improvements in performance.

Courses

Certificate
  •  

  • Agile BPM Specialist
  • Earn your Agile BPM Specialist Certificate and gain a competitive edge in driving business process management (BPM) with agile methodologies. You’ll gain a strong understanding of how to apply agile principles and concepts to business process management initiatives.  
 

Business Architecture

 

Certificates

  • Business Architecture Specialist
  • The Business Architecture Specialist (BAIS) Certificate is proof that you’ve begun your business architecture journey by committing to the industry’s most meaningful and credible business architecture training program.

  • Business Architecture Professional
  • When you earn your Business Architecture Professional (BAIP) Certificate, you will be able to design and implement a governance structure for your organization, develop and optimize business processes, and manage business information effectively.

BA CertificationCertification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Architecture Certification from the industry's top BPM educational organization.

Courses

 

Certificates

  • Digital Transformation Specialist
  • Earning your Digital Transformation Specialist Certificate will provide you with a distinct advantage in today’s rapidly evolving business landscape. 
 

 

  • Digital Transformation Professional
  • The Digital Transformation Professional Certificate is the first program in the industry to cover all the key pillars of Digital Transformation holistically with practical recommendations and exercises.

Courses

Certificate

  • Agile Business Analysis Specialist
  • Earning your Agile Business Analysis Specialist Certificate will provide you with a distinct advantage in the world of agile software development.

Courses

Certificate
  • DAS Certificate
  • Decision Automation Specialist
  • Earning your Decision Automation Certificate will empower you to excel in the dynamic field of automated decision-making, where data-driven insights are pivotal to driving business innovation and efficiency.