Welcome!

PHP Authors: Liz McMillan, Carmen Gonzalez, Hovhannes Avoyan, Lori MacVittie, Trevor Parsons

Related Topics: PHP, Java IoT, Microservices Expo, Recurring Revenue, CRM

PHP: Article

Why SOA Is a Good Fit for CRM Solutions

Provides scalable architecture and modern toolsets

The Application Layer
The application layer makes available business functionality from end applications in proprietary transport protocols and data formats. Some ERPs may not expose native service interfaces; in such cases, an adapter is used to convert proprietary interfaces to Web services. Adapters should be based on standards such as the Java 2 Platform, Enterprise Edition (J2EE) Connector Architecture 1.5, which supports bidirectional interactions with applications, transactions (if available), connection polling for scalability, and manageability.

The application layer (either by way of adapters or native Web services) should provide a strong exception framework, which propagates errors in layers below with details that apply the appropriate remedial measures at the service and process layer. For example, when application invocation encounters transient connectivity errors (such as back-end application not available), it propagates the errors as a retryable error, allowing the higher-level service or process layers to retry the connection at user-configured intervals.

In applications that support native Web services, there can be a mismatch in the interactions. For example, support for different versions of WSS (circa 2002 and 2004) can be mediated in the service layer. In fact, BPEL and ESB typically support both versions. Some applications lack event models, such as a push model (which pushes events such as order created to subscribers). In order to overcome this deficiency, a pull model (known as polling, a process in which the middleware polls the application for orders created and pulls in the new orders) must be put in place. Overall, the goal of this layer is to service-enable the applications, translate the data from application-specific formats (such as PL/SQL) to XSD, propagate application-specific information (such as security and session state), provide the tools to discover the service end point, and generate the service WSDL for consumption.

The Service Layer
The service layer or ESB provides three key features: connectivity, routing, and transformation. For connectivity, it uses adapters or native interfaces to connect to ERP and CRM applications. It supports multiple protocols (such as HTTP, JMS, and FTP) and can translate between them (such as receive input on an HTTP transport, transform to target schema, and send data over a JMS transport). The ESB also plays the role of service aggregator, when, for example, a service exposed by an application is too fine grained and needs too many calls to get a task done. The ESB front ends these multiple calls by creating a single coarse-grained endpoint for clients to invoke. As shown in Figure 6, the order service exposed by ERP is actually an aggregation of multiple calls to fine-grained APIs. For example, many fine-grained calls must be made in exact sequence (create customer account, create location, create party site, create customer account site, and create customer site use) to create customer information in one ERP system. As a best practice, these fine-grained calls are aggregated in an ESB, such that to the business-process layer, a coarse-grained create customer information service interface is presented. This coarse-grained interface is available not just to the CRM OM business process, but to any business process, making it reusable across the enterprise.

A key task in building a heterogeneous CRM OM application is transforming the application formats, for example, when an order has a different schema in CRM, ERP, and supply chain applications. Another transformation use case is breaking the order (with many line items) into smaller orders so that each unit is sent to the ERP instance that processes it. This task becomes necessary when parts of the order are fulfilled by different entities, which could be different vendors or even different business units, each running its own ERP instance.

When using XML for enterprise business objects such as order, customer, and service, the recommended approach is to use a canonical industry standard. Some of these may be delivered by the vendor and can be extended to suit specific needs. Using this standardized format reduces the number of point-to-point transformations (source transforming to target format), thereby easing the process of adding additional targets and decoupling the end points from changes. As mentioned earlier, the ESB also provides additional features for domain value mapping and cross-referencing. Overall, the service layer attempts to present a uniform service interface to the process layer while mediating mismatches from legacy applications.

The Business Process Layer
The business process layer orchestrates the service interfaces exposed by the ESB and the end applications. Key order management business processes are modeled by business analysts (and other functional order management experts), and saved in a standard modeling notation such as the Business Process Modeling Notation. The model can then automatically create a blueprint in BPEL so that an IT developer can implement the BPEL process, ensuring conformity to business goals. In advanced tools, changes made by IT developers can be viewed by an analyst to ensure a full round-trip between the analyst view and IT developer view. Such tight integration between models defined by functional experts and processes created by IT developers ensures that IT is driven by business needs and not the other way around. The business process layer automates human-centric processes in addition to IT processes. In order management, human elements (such as approvals) are a common part of any activity. This is supported by the human workflow list capability in BPEL.

The quote-to-cash business process (see Figure 1) spans CRM, ERP, and middleware. Parts of it (such as order capture) are completed in CRM, and other parts are completed in ERP (such as fulfillment and invoicing). The interactions between CRM and ERP are defined in BPEL as a set of multiple BPEL processes, each working in collaboration. As mentioned earlier, the green lines in Figure 5 can be thought of as subprocesses, as some low-level data-centric interactions may be implemented in ESB. The general best practice is to implement long-running, stateful, human-centric interactions in BPEL, and short-lived, stateless, data-centric interactions in ESB. Examples of subprocesses are customer, product, and order sync, in which changes to customer, product, or order details in CRM are transmitted to ERP, and vice versa. In addition, business rules in this layer are defined so that they can be externalized from the code into a rules engine. An example of a business rule is an order quantity or amount for which approval is required. The threshold amount is externalized in a business rule so that business analysts can make changes based on business conditions, without the need for a full development-test-production cycle.

Another component of the business process layer is monitoring transactional activity. In a heterogeneous system, order information is captured in multiple applications and components to determine whether users must log into multiple applications. To overcome this challenge, BPEL works in conjunction with a business activity monitoring system by allowing users to create sensors within the order management business processes. These sensors push order status to a dashboard that provides information about orders, including incomplete, error, and other transient states. This allows users to determine bottlenecks in their transactional system and focus on the errors at hand. Overall, the process layer acts as the glue or orchestrator between the components.

The UI Layer
The UI layer is a composite application drawing from many back-end data sources. Figure 7 shows such an application for a storefront that pulls information from many modules of a CRM application, ERP, and content management system. In addition, the UI needs to support Enterprise 2.0-style interactions such as blogs, wikis, customer reviews, e-mail notifications, live chat, and click to call an operator, which are available in modern Enterprise 2.0 platforms. Standards such as WSRP and JSR 168 enable aggregation and creation of UI elements that can be plugged in a standards-compliant way. Another key standard is JSR 227, which renders the UI independent from the data sources within the Java platform. This is key, since order status may be derived from a database table and, in the next release, may be derived from an adapter and eventually come from a native Web service. JSR 227 allows each of these data sources to be consumed uniformly by a UI with no changes on the UI end when the back-end data source changes.

Another important UI component is a task-based UI. In this scenario, a customer who is ordering a product will experience automatic page refreshes through AJAX technology and interact with back-end components, even when moving from one task to another or from one page to another. This is implemented using a controller feature common in many application development frameworks. The page flows may kick off back-end business processes by using Java or Web services (because each BPEL process is a Web service as well). In Figure 7, the images are pulled from a content management system, which manages images for the CRM system. UI frameworks must support standards-based integration with content management systems.

In short, using a rich UI framework allows the creation of a complex order management UI by consolidating different existing elements rather than building them from the ground up.

Conclusion
CRM OM systems span multiple components that reside in numerous applications. Data, user accounts, processes, and user interfaces are components that each need to be streamlined and integrated to provide a product order, fulfillment, and billing experience that is superior, consistent, and seamless. SOA principles are best suited to deliver such a comprehensive software application. Key SOA technologies - such as composite application development frameworks, BPEL, and ESB - provide the scalable architecture and modern toolsets to integrate and extend CRM applications to deliver enterprise-wide order management processes and rich UIs while protecting the investment in existing applications.

More Stories By Nishit Rao

Nishit Rao is director of product management for Oracle Fusion Middleware. He is focusing on enhancing and evangelizing the middleware platform to meet the demanding needs of Oracle customers. He has more than 15 years experience in engineering and product management for messaging, Common Object Requesting Broker Architecture, J2EE, integration, and SOA products. He also has experience rolling out middleware solutions as an architect for a large global logistics company. He holds an MBA from the University of California, Berkeley, and a BS in electrical engineering.

More Stories By Murali Varmaraja

Murali Varmaraja is director of order management product strategy at Oracle. He has more than 15 years of experience in the information technology industry, including 8 years of enterprise product management. His experience spans a wide spectrum of technology, including Web, client/server, and multitier and distributed architectures involving Oracle and IBM DB2. He has experience with CRM business processes for the transportation, communications, media, energy, finance, high-tech, and manufacturing industries. He holds an MS degree in computer applications from Sadar Patel University in Gujarat, India, and is currently pursuing an MBA at the Graziadio School of Business and Management at Pepperdine University.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@ThingsExpo Stories
SYS-CON Events announced today that B2Cloud will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. B2Cloud specializes in IoT devices for preventive and predictive maintenance in any kind of equipment retrieving data like Energy consumption, working time, temperature, humidity, pressure, etc.
SYS-CON Events announced today that N3N will exhibit at SYS-CON's @ThingsExpo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. N3N’s solutions increase the effectiveness of operations and control centers, increase the value of IoT investments, and facilitate real-time operational decision making. N3N enables operations teams with a four dimensional digital “big board” that consolidates real-time live video feeds alongside IoT sensor data a...
SYS-CON Events announced today that Daiya Industry will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Daiya Industry specializes in orthotic support systems and assistive devices with pneumatic artificial muscles in order to contribute to an extended healthy life expectancy. For more information, please visit https://www.daiyak...
SYS-CON Events announced today that Interface Corporation will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Interface Corporation is a company developing, manufacturing and marketing high quality and wide variety of industrial computers and interface modules such as PCIs and PCI express. For more information, visit http://www.i...
SYS-CON Events announced today that Mobile Create USA will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Mobile Create USA Inc. is an MVNO-based business model that uses portable communication devices and cellular-based infrastructure in the development, sales, operation and mobile communications systems incorporating GPS capabi...
In his session at @ThingsExpo, Greg Gorman is the Director, IoT Developer Ecosystem, Watson IoT, will provide a short tutorial on Node-RED, a Node.js-based programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using a wide range of nodes in the palette that can be deployed to its runtime in a single-click. There is a large library of contributed nodes that help so...
Elon Musk is among the notable industry figures who worries about the power of AI to destroy rather than help society. Mark Zuckerberg, on the other hand, embraces all that is going on. AI is most powerful when deployed across the vast networks being built for Internets of Things in the manufacturing, transportation and logistics, retail, healthcare, government and other sectors. Is AI transforming IoT for the good or the bad? Do we need to worry about its potential destructive power? Or will we...
SYS-CON Events announced today that mruby Forum will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. mruby is the lightweight implementation of the Ruby language. We introduce mruby and the mruby IoT framework that enhances development productivity. For more information, visit http://forum.mruby.org/.
SYS-CON Events announced today that Suzuki Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Suzuki Inc. is a semiconductor-related business, including sales of consuming parts, parts repair, and maintenance for semiconductor manufacturing machines, etc. It is also a health care business providing experimental research for...
SYS-CON Events announced today that Nihon Micron will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Nihon Micron Co., Ltd. strives for technological innovation to establish high-density, high-precision processing technology for providing printed circuit board and metal mount RFID tags used for communication devices. For more inf...
SYS-CON Events announced today that SIGMA Corporation will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. uLaser flow inspection device from the Japanese top share to Global Standard! Then, make the best use of data to flip to next page. For more information, visit http://www.sigma-k.co.jp/en/.
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend 21st Cloud Expo October 31 - November 2, 2017, at the Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
SYS-CON Events announced today that MIRAI Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. MIRAI Inc. are IT consultants from the public sector whose mission is to solve social issues by technology and innovation and to create a meaningful future for people.
SYS-CON Events announced today that Enroute Lab will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Enroute Lab is an industrial design, research and development company of unmanned robotic vehicle system. For more information, please visit http://elab.co.jp/.
While some developers care passionately about how data centers and clouds are architected, for most, it is only the end result that matters. To the majority of companies, technology exists to solve a business problem, and only delivers value when it is solving that problem. 2017 brings the mainstream adoption of containers for production workloads. In his session at 21st Cloud Expo, Ben McCormack, VP of Operations at Evernote, will discuss how data centers of the future will be managed, how th...
Agile has finally jumped the technology shark, expanding outside the software world. Enterprises are now increasingly adopting Agile practices across their organizations in order to successfully navigate the disruptive waters that threaten to drown them. In our quest for establishing change as a core competency in our organizations, this business-centric notion of Agile is an essential component of Agile Digital Transformation. In the years since the publication of the Agile Manifesto, the conn...
The Internet giants are fully embracing AI. All the services they offer to their customers are aimed at drawing a map of the world with the data they get. The AIs from these companies are used to build disruptive approaches that cannot be used by established enterprises, which are threatened by these disruptions. However, most leaders underestimate the effect this will have on their businesses. In his session at 21st Cloud Expo, Rene Buest, Director Market Research & Technology Evangelism at Ara...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, will introduce two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a mu...
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...
Mobile device usage has increased exponentially during the past several years, as consumers rely on handhelds for everything from news and weather to banking and purchases. What can we expect in the next few years? The way in which we interact with our devices will fundamentally change, as businesses leverage Artificial Intelligence. We already see this taking shape as businesses leverage AI for cost savings and customer responsiveness. This trend will continue, as AI is used for more sophistica...