This report assesses the capabilities of Software AG’s Process Application Platform, and also examines the partners and intellectual property that Software AG can offer customers exploring associated technology implementations. This assessment report forms part of a series of reports from MWD Advisors which assesses business process application technology offerings – technology-related capabilities which support organisations wanting to design, develop, deploy, monitor and optimise partially- or wholly-automated business processes.
We strongly encourage you to read this report in conjunction with our accompanying Assessment Framework report.
In AgileApps and the webMethods BPMS, Software AG has a pair of very capable Process Application Platforms, though they’re very different in focus today. They’re partially integrated and more integration is planned, but the best way to think of AgileApps and the webMethods BPMS today is that they serve complementary needs – rapid creation of standalone process- and case-based applications (AgileApps) and creation and long-term management of mission-critical operational process applications (webMethods BPMS). Looking specifically at the webMethods BPMS, there’s strong support for both automated and transactional work scenarios, and some support for exploratory work scenarios. A new process runtime, Dynamic Business Orchestrator, offers major performance and scalability advantages and also brings improved BPMN 2.0 support and dynamic process support. There’s out-of-the-box integration with Software AG’s Zementis Predictive Analytics, and RPA from Kryon Systems provides new automation and integration options.
Support for different types of work
Automated work: By virtue of webMethods’ heritage as an event- and message-based integration middleware provider, the webMethods BPMS provides very good design-time and runtime support for automated work scenarios and has the architecture to scale in demanding situations.
Transactional work: Clear separation of process and task management in the webMethods BPMS sets the stage for flexibility. Integrated content and document management and end-user flexibility and monitoring capabilities are great features. AgileApps also plays well here, particularly in support of service desk use cases.
Exploratory work: The webMethods BPMS doesn’t have any explicit capabilities designed to support exploratory work scenarios, though the foundation capabilities you need are mostly present. webMethods AgileApps Cloud has a number of really solid case management capabilities combined with easy-to-use tools.
Rapid prototyping / quick-start
AgileApps is designed specifically to enable small teams to visually develop and deploy process applications quickly without coding, and it offers many features that support this aim well. However applications that you build using AgileApps stay in AgileApps; you can integrate them with webMethods BPM applications to create ‘two-tier’ business platforms, but today, if you want to use AgileApps as a prototyping tool, you’ll have to start over in webMethods BPM. Software AG has plans to bridge these two platforms more completely in 2017.
In the webMethods BPMS and AgileApps the change management capabilities available to your teams are modest – and may not be enough for large teams working on programs with multiple parallel lines of development. But if you pair the webMethods BPMS with Software AG’s ARIS tools, you can delegate responsibility for managing design change to those ARIS tools – and the change management and governance capabilities at your disposal are much richer and more scalable.
User experience options
For both AgileApps and the webMethods BPMS, there are three main options: the tools’ own customisable HTML-based UIs; hybrid/native mobile apps; and the ability to embed application data and actions in your own custom UIs through open integration interfaces.
Licensing and deployment for the webMethods BPMS is on-premise only; however AgileApps is provided by Software AG as Platform-as-a-Service (PaaS), hosted on AWS, and as an on-premise offering.
Inside Software AG’s platform
Software AG’s Process Application Platform has two core elements: webMethods BPMS and webMethods AgileApps. Together these what the company calls its Dynamic Apps Platform, as part of a broader Digital Business Platform offering. webMethods BPMS is aimed principally at IT teams needing to deliver high-scalability, large-scale process automation solutions; whereas webMethods AgileApps is aimed more at subject matter experts and business analysts, and positioned for the quick delivery of more lightweight, dynamic process and case management applications. Software AG has started to bring these two pieces together, and it’s prioritising development work to increase product integration.
Key tools and capabilities
The central product elements of the Software AG Process Application Platform offering are the webMethods BPMS, which is currently at version 10.1, together with webMethods AgileApps.
webMethods AgileApps is a template-driven application development environment focused on the creation of lightweight process and case management applications, and is specialised for use by business analysts and casual developers. It’s provided as a platform-as-a-service and on-premise offering.
AgileApps is a comprehensive toolset that enables all elements of standalone modern applications to be designed, developed and deployed in one place – you use models to specify data structures, processes, rules, task models, forms and other UI elements, reports and dashboards, and more. There’s a built-in knowledge base and community forum facilities for service desk use cases; file-sharing and document preview features; automated document creation and assembly features; and multi-channel customer communication features.
The main elements of webMethods BPMS are as follows:
- Designer. An Eclipse-based design and development tool that acts as a single point of entry for process application development. Capabilities are provided through ‘perspectives’ (each aimed at a particular audience) and ‘views’ (each providing an interface for a particular design tools). The toolset provides not only a process design tool, but also tools for task (interactive process step) design, information modelling, organisational modelling, and simulation. Designer also enables you, through the design of sophisticated sets of interrelated task user interfaces, to create web-based composite applications, which may or may not link into process workflows. Designer is also the place where you create integration services and ‘flows’ that are deployed to Integration Server (see below), and exposed for consumption within process models. It also provides access to the embedded webMethods Rules development environment.
- Business Rules. A home-grown rules inference engine and design environment. The rules design tool is delivered as an integrated component of webMethods Designer; the runtime engine is deployed as a service running on Integration Server (see below).
- Dynamic Business Orchestrator. Software AG’s new, redesigned runtime server responsible for driving and managing the execution of core process model logic (that is, elements of process models that aren’t directly associated with human tasks). Available for new customers (and to existing customers via a paid upgrade) it’s been significantly re-architected to improve performance, scalability and support for dynamic work models. Process models are packaged and executed as sets of independent (but connected) services on Integration Server.
- Task Engine. The runtime server responsible for managing the ‘human-facing’ elements of processes, by managing task lists, assigning tasks, and managing task escalations and delegations.
- Integration Server. The foundation on which the Dynamic Business Orchestrator (and the compiled core steps of your process models) executes at runtime. Integration Server nodes will also host any integration services you create using Designer, and make them available to Dynamic Business Orchestrator for connecting processes to external resources (applications, systems and data sources).
- Business Console. This HTML5-based user experience container provides the preferred front-end for your business process applications. It extends core task management, task form presentation and process administration and monitoring capabilities with expertise location, more dynamic task assignment, task collaboration through social activity streams, and a ‘to-do list’ capability that enables process participants to dynamically define, and then save, share and reuse, active checklists for individual process tasks. Business Console is also available as a mobile application for iOS and Android devices.
- Content Service Platform (CSP). A content and document management platform that also provides a virtualisation layer and connectors to a wide range of external content and document stores – making internally-managed and externally-managed content look exactly the same to consuming systems. CSP is hosted on Integration Server and its document access and management capabilities can be addressed directly within webMethods Designer.
- Universal Messaging. Provides publish-subscribe communication services to Process Engine/Integration Server and Task Engine instances, which allow processes and tasks to be widely distributed in large, complex and federated runtime environments.
- Monitor. Provides real-time monitoring of process instances – as well as providing process/task administration functionality to administrators.
- Mobile Designer. Allows development of process and task based native mobile applications for multiple mobile operating systems.
- Optimize for Process. A sophisticated Business Activity Monitoring (BAM) and process optimization product, aimed at non-technical specialists, which presents its functionality to business analysts and managers through highly interactive dashboards that are hosted within the Business Console.
User experience options
With AgileApps, social collaboration and multi-channel communication capabilities are ‘designed in’ as central capabilities. Activity and notification streams for both work participants and application elements (cases, processes and documents) are all integrated in the operational environment, making it easy for individuals or teams to follow each other or the progress of work. There is a responsive HTML app that’s instantly deployed and there’s also pre-built integration for your process or case applications with email Facebook and Twitter. Lastly, there’s also the ability to use AgileApps’ own proprietary site tags to deliver AgileApps functionality within your own custom HTML-based user experiences.
With the webMethods BPMS, there are three main pieces of the puzzle when it comes to user experience choices:
- The HTML5-based Business Console that acts as the default container for all webMethods application user experiences. Business Console surfaces a set of social collaboration features for more collaborative, flexible execution of processes and tasks – enabling individual personal profiles, tagged with skills and capabilities; analytics-generated expert recommendations for task or process collaborators; the ability to instantly create and assign ad hoc tasks; and activity streams highlighting tasks and alerts, with the ability to create tasks from within those streams. It’s customisable, and beyond that, you have the opportunity to assemble and configure out-of-the-box UI ‘gadgets’ to create ‘apps’ that suit your needs and host them in a Business Console ‘App Space’.
- A Mobile Business Console native app for iOS and Android devices that combines the features of the Mobile Monitor and Mobile Task Inbox apps previously offered by Software AG. Now in 10.1, the Mobile Business Console also provides support for offline task working, device-native notifications and custom App Spaces (see above)
- A rich REST-based API that enables you to build your own completely custom user experiences.
webMethods AgileApps is by default offered as a cloud-based platform that’s hosted by Software AG on AWS in datacenters in North America and EU. It’s also available on-premises for customers to host themselves; in which case it runs on the Tomcat JEE application server against a MySQL RDBMS. There are multiple high-availability options available here.
The webMethods BPMS is currently only available for on-premise deployment. The Dynamic Business Orchestrator runtime is deployed on the webMethods Integration Server; as well as deploying webMethods BPMS applications to the platform you can also deploy other Java objects, C code, and .NET code.
Using the products: core capabilities
Rapid prototyping / quick-start
Software AG promotes AgileApps as the place where your teams wanting to perform rapid prototyping or fast-track solution delivery will work. AgileApps is a cloud-based platform where the tools and the runtime environment are very tightly integrated, so moving between design, development and operational modes is fast and seamless. The toolset encourages the rapid creation of applications through customisation of pre-built templates for common scenarios and provides simple, graphical tools enabling workflows, measurement models, forms, data structures, business rules and reports to be created and modified.
Software AG is currently part-way through a program of integration between AgileApps and the webMethods BPMS. Today, you can invoke an AgileApps case from a BPMS process; case workers can complete tasks within Business Console and Mobile Business Console; and administrators can monitor AgileApps cases in Business Console. There’s single sign-on for AgileApps and the BPMS, and the products also share common registries/repositories. In the coming months, Software AG plans to enable customers to bring apps created with AgileApps into the webMethods BPMS for further development / customisation.
Mapping, modeling and design
If your organisation is a customer of Software AG’s ARIS tools, there’s strong support for linking process application design you do in webMethods BPMS to higher-level business process analysis and architecture work you’ll do using ARIS. Teams can transfer BPMN diagrams from ARIS Architect to webMethods Designer for further technical elaboration; and diagrams can also be ‘fed back’ from webMethods BPMS to the ARIS environment. If you choose to set things up this way then using ARIS Process Governance, expert ARIS users can review and analyse any changes made in the webMethods tools and accept or reject them. Changes made to BPMN models in the webMethods BPMS environment can also be automatically reflected within their ARIS-hosted counterparts, and can be analysed in the context of any EPC source models that you might have created in ARIS.
The Process Designer view of webMethods Designer is specialised for defining process structures. Task steps and Rule steps within processes have separate design views associated with them, and the outputs from those tools is deployed and managed separately from the core process that provides orchestration for them (see Operation and execution below).
Although AgileApps enables you to define data structures that process applications will use to store and manage application data, if you use the webMethods BPMS your process applications won’t have any ability to store and manage business data (such as customer, product or order records, for example).
The webMethods BPMS provides a strong built-in business rules capability through a home-grown business rules engine and design tool called webMethods Business Rules. The rules you create there can be seamlessly made available from within Designer for use as Rule steps within process models; or they can also be easily referenced when specifying Task steps, in which case they can be used to drive task assignment. The development environment provides three different interfaces that you can use to specify rules (decision tables, decision trees and rulesets). A nice feature is the ability to test rules locally within Designer – this doesn’t require draft rulesets to be published. Unusually, rule actions – which can affect the flow of work, the assignment of tasks, and the publication of events (which can in turn affect runtime behaviour and drive notifications into the monitoring environment) – can be specified declaratively within rules themselves if you wish. You can also define and manage constants for use in rules separately from rules themselves. Another noteworthy webMethods Rules feature is that rulesets can be surfaced through the Business Console of webMethods BPMS – enabling business people with sufficient permissions to edit and ‘hot deploy’ rules directly into the live runtime environment.
New in 10.1, webMethods BPMS provides out-of-the-box connectivity to Software AG’s Zementis Predictive Analytics. If you’re a Zementis customer, this means that predictive models you create and maintain in Zementis can be easily used to score process data in real-time in order to drive decisions, application user interface prompts and task recommendations, and more.
When it comes to specifying integration services, Designer’s Developer perspective allows you to specify individual integration steps and sequences of steps, primarily through graphical drag-and-drop actions. Integration steps are selected from a range of pre-built capabilities (such as XML message transformation, FTP connectivity, and so on) or, in edge cases, you can create your own and import them. In addition, a wide variety of application and content adapters is offered as chargeable extensions – covering all popular packaged business applications, middleware servers and standards. On the content side there’s specialised integration with well over a dozen document server platforms, as well as an implementation of the CMIS standard.
As an alternative, if you have legacy systems in your environment that are not practical to build integration services for, Software AG now also offers Robotic Process Automation (RPA) technology from Kryon Systems. Kryon’s platform, Leo, enables you to specify automated task flows that are deployed to groups of software robots. You design flows by first recording the actions of a user interacting with systems; then by using Leo Studio to refine and augment the captured work steps.
Leo supports both unattended and attended modes of operation: in unattended mode, robots take task flow definitions from work queues and execute them without human assistance. In attended mode, human application users work with assistance from those robots, with robots performing rote tasks (such as retrieving data from multiple back-end systems to support faster task work). Working in unattended mode, Leo robots create a layer of integration services that will automate interactions and data transfers with legacy systems in a non-invasive way.
Work assignment and distribution
When it comes to modeling organisational structures (roles, relationships, groups and so on) to guide work distribution, you do that by configuring Task Server – which is responsible for task management – rather than by creating an organisational model that lives alongside your process model(s). Role membership can be dynamic, though, and you can also specify dynamic sub-categorisations for roles (for example, sales territories) that will get used at runtime to resolve the allocation of tasks. Business Console provides the administration interface for all this, and additionally enables you to set up work delegation rules and calendars.
Operation and execution
New webMethods BPMS customers will deploy their process applications to a new process runtime called Dynamic Business Orchestrator. Rather than running compiled BPMN 2.0 models (as the old Process Engine did) it interprets them.
Dynamic Business Orchestrator brings significant performance and scalability improvements over its Process Engine predecessor, and also provides better coverage of the BPMN 2.0 standard. Beyond these benefits, though, its interpretation approach to execution of process models also brings the ability to dynamically alter process model instances on the fly – something that was always challenging before. Now within the operational environment, authorised users can dynamically inject new steps or subprocesses, and fast-forward and pause running instances.
As well as the Dynamic Business Orchestrator, the runtime environment also includes the Task Engine, which is responsible for managing the human-facing elements of processes, by presenting task-based user interfaces to process participants, managing task lists, assigning tasks, and managing task escalations and delegations.
Models can be easily published from individual development Workspaces to live server environments from within the Designer tool, and a specialised Deployer tool is provided to help you transfer specifications from development/test server environments to ‘live’ operational environments.
The general-purpose task and process administration interface (webMethods Monitor) is hosted within Business Console, which is also the main container for task and work management interfaces. Participants with sufficient privileges can define, compose and share their own workspace definitions with others.
Monitoring and improvement
At the same time as publishing a process from a design environment to a server environment for execution, you can choose to publish it for monitoring and analysis. Publishing for monitoring/analysis drives under-the-covers configuration of the runtime environment to commence logging operational activities, based on specifications of instrumentation points that you define within tasks and processes in Designer.
Where you’re using the webMethods BPMS, you’ll use Optimize for Process as the analytics foundation. As its name suggests, Optimize for Process provides a number of process optimisation capabilities, including the ability to graphically prompt analysts or administrators to investigate particular areas of process implementations, based on automated statistical analysis of historical process performance. Designer enables you to define multiple ‘stages’ and ‘milestones’ in process definitions, and Optimize for Process automatically provides monitoring visualisations based on these definitions.
Business Console is the default container for real-time monitoring dashboards. There’s the ability – if you have webMethods PPM – to present direct links from real-time process monitoring information presented in Business Console to historical performance views, created with webMethods PPM, also surfaced in Business Console.
With webMethods Operational Intelligence in play, you have an alternative to Business Console for providing process performance dashboards to stakeholders: ARIS MashZone. ARIS MashZone provides easy-to-use configuration tools that make it possible to pull together, cross-reference and correlate operational data, metrics and KPIs from various external tools and sources to help visually link strategy goals to execution performance.
Each Designer client installation has its own Workspace associated with it, and within each workspace, assets are contained within Projects (as is the case with most Eclipse-based tools). Because of the way that the webMethods BPMS separates different design elements from each other, though, you don’t define one Project to store all your assets for one BPM implementation project; you define specialised Process Projects, Composite Application Projects (containing task definitions), Rule Projects, and so on. However, you can group Projects together within ‘Solutions’ in Designer, and in this way you can use Solutions as the top-level containers for your BPM initiatives.
The design-time change management capabilities provided within the webMethods BPMS are a bit mixed, though if you take advantage of CentraSite (the webMethods standards-based registry/repository) you’ll get impact analysis capabilities that allow you to quickly highlight any artefact (either within your local Workspace, or within a CentraSite repository) and find out which other assets reference it, and which other assets it references. Version control for process application elements is offered through Centrasite, or you can use a third-party source code control repository alongside Centrasite if you wish.
If you’re using ARIS Architect and ARIS Process Governance alongside the webMethods BPMS though, you can choose to promote the ARIS repository as the chief ‘owner’ of model versioning and change control; versioning, impact analysis and visual change tracking are all strong capabilities here. Underpinning this capability is the role that ARIS Process Governance plays in integrating models between ARIS and webMethods; its process-oriented view of model change management enables sophisticated collaboration with teams looking to synchronise their efforts across toolsets.
Within the webMethods BPMS, change management capabilities in the operational environment are a mixed bag. The BPMS can store and manage multiple versions of processes and deploy multiple versions at one time, but there are no instance migration capabilities in the BPMS currently and although it’s possible to specify that only individuals with certain permissions can deploy process applications, there’s no ability to specify custom publishing workflows.
Deployer, one of the tools provided within the webMethods BPMS, makes it straightforward for administrators to configure multiple separate deployment packages and target environments, and then map and deploy packages to target environments. If you’re carrying out a large program of work you can work with multiple separate repositories and have Deployer reference packages across those repositories. At the moment, though, there’s no concept of inheritance in specifications or repositories – so it’s not possible to create ‘master’ specifications of processes, rules or other artefacts and them have those referenced, reused and extended across multiple separate process applications in a way that preserves their inherited features.
Using the products: support for different kinds of work
Facilities to support automated work
In support of automated work, the ability to model behaviours that implement clear, consistent and powerful error handling is an important boost to development productivity and agility. Designer enables you to define error handling sequences that have process-wide scope, and you can also specify error transitions for specific activities if required. There’s also support for specification of compensation behaviour.
Event-based execution is one of the strengths of the webMethods BPMS runtime platform. Events are explicitly modellable, and processes can send and receive events to influence other processes and systems through both synchronous request-reply and asynchronous publish-subscribe communication methods.
Scalability has been a major focus of WebMethods BPMS development since the 9.6 release. Initial work focused on the clustered deployment of Task Server instances and the use of Software AG’s own Terracotta database caching technology under the covers – and the new Dynamic Business Orchestrator process runtime further advances this work.
Facilities to support transactional work
AgileApps excels in situations where you want to quickly build and deliver applications for transactional work scenarios, where those applications are to run at a relatively small scale and where there’s only a modest requirement for integration with other applications or data sources. Having said that, it is possible to connect AgileApps to Software AG’s Integration Cloud platform today.
If you need to build business-critical process applications that revolve around orchestrating the work of multiple large teams and many business software applications, though, you’ll use the webMethods BPMS. There’s a lot of sophistication here.
Firstly, the platform provides a good degree of flexibility in how work distribution can be directed through models (rather than through scripting). The organisational models you define will drive task assignment and distribution, and can reference both internal and external directories as sources. Support for ad hoc tasks means that task performers can create subtasks on the fly and use those to collaborate with others to complete their work; on top of that it is also straightforward to create more generalised collaborative environments by having task forms integrated with Business Console’s collaborative features.
There’s also out-of-the-box support for ‘to-do lists’. Building on existing platform support for ad hoc tasks, now process application users can quickly specify to-do lists for their own work, either at the level of business processes, or individual tasks. What’s more, individuals can save existing lists as templates, and reuse and share those later as required to assist with the creation of new to-do lists. Task chaining is supported through the specification of ‘task workflows’, which are presented as a seamless sequence of tasks to one individual. Task workflows can involve service calls as well as human tasks, though they cannot contain parallel branches.
Regarding monitoring and improvement, there are out-of-the-box reporting capabilities that provide analyses of performance from user and role perspectives, as well as the standard per-process perspective. Secondly, as well as making it easy to analyse current process performance in the context of historical performance, it can graphically prompt users to investigate certain process paths, steps or sequences for optimisation, based on historical analysis of performance and issues. Problems are prioritised, too. Another key feature is the ability, in Business Console, to configure views of process instances that provide information about the ETA of each instance. Under the covers, this is powered by online analysis of current process instance state, in the context of historical average process performance information from the process model in question.
Facilities to support exploratory work
As is true for transactional work scenarios, AgileApps provides a strong foundation for straightforward case management applications in support of exploratory work – with the ability to define and execute case models that act as containers for both structured and ad hoc work, spanning multiple processes and teams. You can now use the Mobile Business Console to interact with AgileApps cases, too.
Where you need to build business-critical exploratory work applications that revolve around orchestrating the work of multiple large teams and many business software applications, though, you’ll use the webMethods BPMS. Here there are no features explicitly promoted in support of case management-style applications, but actually the webMethods BPMS provides a lot of the capabilities you need.
webMethods CSP provides access to document and content repositories to support management of case documents; but more importantly, the event-driven nature of the touchpoints between the different elements of the runtime environment means you can construct dynamic networks of tasks and processes that can be associated with cases and initiated as and when case processing (and case workers) dictate. Common capabilities like specifying tasks as optional or mandatory dependent on case features, specifying dependencies between tasks and support for common work management patterns (separation of duties, task chaining, etc.) are all possible.
If you employ webMethods CSP to support a case management implementation, it’s not yet possible for Monitor to aggregate information across processes and instances to track progress and performance on a per-case basis out-of-the-box – but with a little work you can develop this capability. Also there’s currently no out-of-the-box capability enabling the platform to automatically archive completed cases for later access, or ability to use completed cases or work patterns or templates for future use.
Software AG has a global footprint – with direct offices in all major countries across Europe, North America, Latin America, the Asia-Pacific region, mainland China, India, the Middle East and North Africa (Morocco is served from France), and South Africa.
In the webMethods business, Software AG has a specialised initiative focused on government (the company recently spun off an independent business unit called Software AG Government Solutions); and also specialised sales and delivery teams for banking, insurance, manufacturing and retail, utilities, and telecom industries. For each of these industries Software AG offers a range of process accelerators aimed at illustrating capability around common pain points or development priorities (such as Smart Grid for utilities, Dispute Management for telecom, Claims Management for insurance, eCheck Processing for banking).
Software AG’s key implementation partners include Accenture, Deloitte, LogicaCMG, Fujitsu, Cognizant, HCL, KPMG, TCS, Mahindra Satyam and Capgemini; more broadly, the company has more than 100 SEs and professional service firms that are certified to implement webMethods. Software AG has a formal certification program (the Partner Accelerator Program) that is administered by its Global Education Services group. The program offers three main levels (associate, preferred, and premier) of collaboration depths, each with different exposure and obligations for partners.