This tutorial gives you an overview and talks about the fundamentals of Appian.
Appian is a BPM specialist vendor: its BPM products and services are its core focus.
Appian focuses its efforts across government and commercial industry sectors, including retail, manufacturing, financial services, service providers, healthcare, and energy.
Appian‟s BPM technology offering comprises two core products – Appian 6 and Appian Anywhere (which is a hosted, but feature-equivalent, version of Appian 6, launched in 2007).
The technology products are unusual in the broad range of capabilities that they pull together and integrate strongly – combining process management, portal, real-time analytics, content management, document management, and collaboration facilities – on one common platform, with a consistent set of completely web-based design, development and administration tools.
Appian has also done something that no other BPM technology vendor has yet pulled off:
it has found a way to expose a great many of the technical capabilities implemented in the platform (including in its content management, document management, collaboration tools and so on) directly to process designers, making it possible for non-specialists to quickly define and deploy process applications that exhibit very sophisticated and dynamic behaviour. The result of all this innovation is an offering that provides strong or very strong support across all of our six process scenarios.
Simulation is the one area where Appian‟s offerings do deliver less than the technologies of its closest competitors (support for discovery and analysis isn‟t particularly strong, but that‟s not uncommon in today‟s vendor offerings as this is a relatively new area of exploration and exploitation). In v6.0.2 Appian also significantly improves its ability in the process discovery and requirements area, too – as well as weaving social team-working capabilities into the design environment to help teams further speed development and strengthen change management.
1. Product Overview
Appian is the BPM expert. Appian leads the market in BPM innovation, delivering comprehensive, flexible, and easy-to-use solutions tailored to the needs of businesses and governments worldwide.
The Appian Enterprise BPM Suite is a 100 percent Web-based solution, including integrated knowledge management and real-time analytics. Appian simplifies process collaboration between business and IT, allowing all users to be part of the process of achieving corporate goals.
Appian Anywhere, the first and only complete BPM Suite available on-demand, delivers all the power and functionality of Appian Enterprise via a Software-as-a-Service (SaaS) model.
Appian empowers more than 2.5 million users globally across government, financial services, healthcare, manufacturing, telecommunications, and other industries. Appian is headquartered in the Washington D.C. region, with professional services and partners around the globe.
2. BPM Engine
Appian BPMS platform operates a traditional 3-tier architecture with a web-server, java application server, and database server at each level. Each tier in the server architecture may operate in a shared physical environment or on separate physical servers. Appian is designed to scale linearly, allowing organizations to grow a BPM initiative from a small department to an enterprise wide deployment on a single platform.
Figure 1: Server Environment
All client access to Appian components by Process Designers, Forms Designers, Administrators, Executives, and End-Users is through a web-browser with no use of Active-X controls or Java Applets. Appian further provides a separate SDK based on Java Eclipse for developers to create new service objects and develop integrations to third party systems.
Appian is the first product to marry the concepts of Service Oriented Architecture with business user control and design of application logic and business process flow. The most common representation of a SOA object in the market is a Web Service. Web Services are powerful and flexible ways to allow any application to quickly reuse programmatic logic through a simple web interface. But, a Web Service is still a complex programmatic API with WSDL definitions, data mappings, and compensations that only more advanced IT users know how to properly deploy. Appian introduces a new way of wrapping common SOA objects, such as Web Services and Enterprise Java Beans (EJBs), into more easily understood Appian Smart Services. The Appian Smart Service is designed to encapsulate the complex logic, WSDL mappings, compensations, and even GUI form interface into a simple, reusable service object that can be understood and deployed by more common business users.
This packaging of complex SOA API calls into Appian Smart Services provides the perfect balance between IT control over complex integrations and API interactions and business user control over process and business logic. In addition, Appian provides the infrastructure for an organization to start building a library of service objects for rapid orchestration and management in processes and applications.
To accelerate an organization’s construction of this service library, Appian comes pre-populated with over 85 process actions and over 250 rule expression actions to control all aspects of actions and quickly create business rules. Furthermore, Appian includes a Java Eclipse design environment for IT developers to quickly create and extend the library of Appian Smart Services.
The Appian BPM Suite is delivered as either a client managed software environment with Appian Enterprise or an on-demand PaaS solution with Appian Anywhere.
Appian Anywhere has no platform requirements as all components are managed by Appian. All access to the Appian Anywhere environment is provided through a web browser with no client modules to install.
Appian Enterprise supports a variety of J2EE and OS platforms. For operating systems, Appian supports Windows 2003 Server, IBM-AIX, Linux, and Sun Solaris. For J2EE platforms, Appian supports JBOSS, IBM WebSphere, and Oracle/BEA Application Server.
For advanced development, Appian offers a Java Eclipse based SDK. All other interfaces for process design, forms design, reporting, and end-user interaction are provided through a web browser.
2.2 User Interface
Appian provides more to end-users than just a simple inbox, but, rather, a complete and flexible environment for interacting with, monitoring, and managing enterprise process applications. Appian’s flexible portal dashboards allow users mash together data elements to deliver comprehensive views into a process. This might include tasks lists, process and task performance, and even collaboration and document sharing areas. Additionally, Appian’s support for standard WSRP portlet consumption allows users to incorporate data from across any system into a dashboard view.
Appian’s portal environment is capable of personalizing and targeting content based on rules, displaying content from a variety of sources, and enabling business users to quickly modify layout with simple point-and-click techniques. Appian can identify a specific user attribute or role and highlight select content channel areas for viewing inside a dashboard. By merging a deep understanding of a user’s role inside a company with detailed process information, reports become more effective and content more meaningful for making daily process decisions. In addition, Appian can restrict access to content at a variety of levels. Whole dashboards, individual content channels, and even rows in a report can be secured to ensure that only users with the right access can view select information.
Figure 2: HR Onboarding Dashboard
In addition to being able to target content to users based on their role within a company, Appian is available in variety of languages, allowing users to collaborate across geographies and languages. Appian’s interface subscribes to UNICODE compliancy and supports all language types. Appian analyzes the user’s language setting and displays the portal content in that user’s specific language.
Appian is the only enterprise BPM Suite to tightly integrate collaboration and portal capabilities into an enterprise BPMS platform. Key features used to provide effective collaboration include Appian’s Discussion Forums, Portal dashboards, and Group Server capabilities. These key features combine to provide dynamic and targeted working areas for team collaboration.
The Appian Discussion Forums allow users to have threaded conversations on any topic. Each topic can be associated with content areas, and individual posts can be rated for meaningfulness. Each forum or topic can be targeted to a specific set of users or groups or they can be made available to the entire community. As discussions occur, Appian will index all discussion content and enable rapid searching to help users find answers to common questions.
Figure 3: User Collaboration
Appian for SharePoint is designed to extend the capabilities of your existing Microsoft Office SharePoint Server 2007 portal with the enterprise BPM capabilities offered by Appian. Using Appian for SharePoint, users can easily track process performance, handle tasks, and escalate actions from their Microsoft SharePoint dashboard. In addition, Appian can bring process orchestration to the management of sites, folders, documents, and permissions. Appian for SharePoint includes native service interfaces to control common SharePoint actions in a structured process to facilitate the automatic construction and destruction of SharePoint content.
Figure 4: SharePoint Integration
Appian has been designed to operate in the most demanding of enterprise environments. With real-world deployments reaching over 2 million users in a single installation, Appian has proven to be the most reliable BPMS and application platform available. Appian regularly conducts scalability testing on a variety of components to ensure proper performance prior to a customer deployment.
Scalability, performance, fault tolerance, and disaster recovery are necessary attributes of any mission critical system. Appian is an n-tiered enterprise web application with a highly scalable and flexible architecture. Since it is a component-based architecture, portions of Appian may be modified or optimized based on specific performance requirements (e.g., throughput, concurrency, or response time) and the application, as a whole, can be part of an open and extensible physically distributed solution.
Appian components can be logically categorized into four major areas – Process, Analytics, Content, and Collaboration. Each of these major component areas is backed by one or more dedicated engine servers with its own usage and scalability patterns. The exact performance and scalability of each customer will depend on the specific usage scenario of these major functional areas.
The Appian Process engine is designed to provide the right balance between administrative and IT control and flexibility for business users to modify execution in order to handle daily process exceptions in a highly scalable fashion. Appian’s process execution environment is designed to be controlled and influenced by business users who know how processes should execute and know the need for real -time response and control in re-routing processes. However, empowerment of business users presents a challenge to IT administrators to ensure business users do not harm the system with their changes, and that change can be accommodated in a controlled and predictable manner. Appian enables this balance between IT and business by enabling IT users to set a variety of thresholds and limits on all parameters in their process execution environment. IT can adjust everything from default field sizes for text inputs to looping limits for repeating activities in processes. This detailed level of control on process behavior by Administrators is key in enabling business user empowerment while guaranteeing reliable performance.
Appian additionally scale tests the process engine on a regular basis to ensure high performance in customer implementations. Appian test results have shown that the process engine can provide reliable transaction throughput as the number of active process instances increases. Additionally, to accommodate scaling into the large volumes, Appian can deploy multiple process engines to load balance process work across multiple physical servers. In the graphic below, a transaction is defined as the execution and completion of one process node, excluding the start and end nodes.
Figure 5: Performance Statistics
The Appian analytics interface provides the suite with a robust and flexible reporting environment. Ad hoc reports can be easily created and manipulated by users using the out of the box reporting environment native to Appian. To prevent server performance issues in overly complex user generated reports, administrators can set thresholds for report rendering times that will limit the time it takes to render report views. Performance results, included with each report execution, highlight column by column report rendering times and recommendations for improving report performance. This balance between user flexibility and administrator control ensures that the analytics component maintains a high level of performance based on customer needs.
Figure 6: Report Rendering Performance Report
Appian additionally regularly tests report rendering times in a variety of scenarios to ensure peak performance for customers. Test scenarios include the loading of hundreds of thousands of processes with hundreds of concurrent users viewing a common report. Reports include a variety of data points and aggregations that reflect typical views of reports for users. The following graph shows how report rendering time for a report across 100,000 processes is minimally affected by an increase in concurrent user load.
Appian’s content component provides a document storage facility used to store and search documents both within and outside of process. Appian’s document storage facility is currently used to store upwards of 11 million documents of varying sizes at one customer, and usage grows daily. Appian maintains usage statistics of the content component at the document level enabling further customer insight. The document management facility enables users to control default expirations of content within their storage centers, allowing more automated control over eliminating outdated content. Additionally, the content component enables full text searching of content within Appian’s BPMS, restricting results to only those that a user can access. Appian’s BPMS operates in an environment scaled for high usage and performance of the content component at one of the largest production installations of Appian BPMS.
Figure 7: Content Management Usage Report
Appian’s collaboration component is comprised of portal pages and groups providing targeted work areas for users to interact and collaborate within the BPM Suite. Some of the largest installations of Appian BPMS have more than 575,000 pages and 50,000 groups running in a single production environment, including heavy usage of rules based groups. Similar to the other components the collaboration component can be scaled as necessary, depending on the customer usage of the collaboration features. These installations with heavy usage of the collaboration features have scaled the collaboration component to maintain performance as the installation grows.
3. Processing Modeling
The Appian Process Modeler allows ideas to turn into functional process-based applications in record time, while providing the insight into process metrics to quickly improve process performance. The modeler allows business users to document key business processes quickly, explore the services available across an organization, and rapidly build process-based composite applications. Delivered in a 100% thin, web-based interface, the Appian Process Modeler is based upon Business Process Modeling Notation (BPMN) standards and uses simple drag-and-drop interfaces for fast and easy process modeling.
Figure 8: Process Modeler
The Appian Process Modeler allows all fields to be made dynamic and determined at runtime. Fields such as deadlines, assignments, form inputs, and other properties can utilize the Appian Expression Editor to use pre-defined Appian Rules or runtime variables to build completely dynamic process models.
Appian supports the standard concept of subprocesses. Subprocesses are deployed using BPMN notation for subprocess activities. Appian Subprocesses are called by the parent process during run-time, allowing subprocesses to be reused across process models and to even allow a process to recursively call itself as a subprocess for unique execution patterns. From the Appian Process Modeler, users can directly drill, preview, and open subprocesses from the parent process.
3.2 Shared Data Space
Appian employs a highly scalable data architecture specifically tuned to meet the needs of a real-time process and application environment through the use of a native COTS (commercial off-the-shelf) database technology called Kdb by Kx Systems (http://www.kx.com). Kdb is a non-proprietary commercial database platform that is optimized for real-time, in-memory performance that meets the specific needs of a robust BPMS platform. The Kdb database platform is designed to capture, analyze, compare, and store data at high speeds and on high volumes.
Kdb operates as an in-memory environment but is more than just an in-memory database platform. Kdb provides a full relational database management system with time-series analysis that handles data in memory as well as stored data on disk. For advanced applications such as process event handling, decision rules, and reporting, it is essential to be able to compare streaming process data against history. A system must be able to understand where the process has been in order to judge and act upon real-time process decisions. Approaches that handle in-memory data alone or historical data alone can’t meet the needs of today’s real-time enterprise where accurate comparison on the fly is becoming increasingly important.
Traditional approaches that try to combine a streaming or in-memory database with a reporting or OLAP database can’t deliver the performance necessary for real- time business. Time delays are unavoidable in these traditional architectures when the real-time execution data must be transformed into a separate analytics environment that is tuned for reporting and analysis. This time gap when real-time performance data is unavailable prevents real-time rules and decisions from being made as new processes actions are executed. Appian’s use of the Kdb database platform prevents this time gap from occurring, and enables business decisions to be made on a real-time basis for all process actions.
Data stored within the Kdb platform can be easily exported to a 3rd party relational database system, such as MySQL, Oracle, or MS SQL Server, for independent analysis and reporting. Appian provides process actions for capturing all related process data and migrating to RDBMS systems. Database administrators concerned about access to data can readily gain access to all information in Appian with use of this feature. Furthermore, the Kdb platform is extremely simple to maintain. There are no requirements to index data columns to optimize reporting or rework table schema. Simple scripts are provided to data.
The Appian Forms Designer allows business users to design rich web forms for users to interact with in process actions. The Appian Forms Designer uses a unique web-based and extensible design environment that allows business users to create rich user forms with little to no IT involvement. IT users are further able to extend the Appian Forms environment with new service objects allowing business users to easily create forms that integrate into existing IT systems.
The Appian Forms Designer is geared for users familiar with Microsoft Office, including common design elements needed to create a rich forms experience. Design elements in the Appian Forms environment include
Expandable and Contractible Sections
Common Form Inputs – Text, Numbers, Dates, etc.
Dynamic Form Actions
Rich Text Editing
Figure 9: Forms Designer
Appian supports escalations and alerts on any task or process in the system. Escalations can be placed on a task by simply navigating to the task properties and hitting the “Add Escalation” action. Each escalation includes a configurable timer action that can be set for the task deadline or for any time before or after the deadline. The escalation, once triggered, can send alert notifications, event actions, change priority levels, or even automatically reassign the activity to an alternate user.
Figure 10: Task Scheduling Interface
Appian additionally provides task scheduling features and also provides a calendar to set the default working times. The task scheduling feature enables process designers to schedule a task to occur on a specific date or on a relative date based on the process data. The process modeler would configure this on the “Scheduling/Setup” tab of a step in the process or for a timer event. This enables activities in a process to be scheduled in advance.
Figure 11: Event Timer Interface
Appian further includes a Process Engine to manage the orchestration and re-routing of system and human activities. Appian also supports advanced orchestration concepts such as timer events, rules, and exceptions. Exception events are necessary to ensure the proper orchestration of actions and compensation for an error event that occurs. Exception events could be triggered by a rule, a timer, or a message (external or internal). For example, if the subprocess below is not completed within a specified time, the timer exception on the subprocess will activate and execute the web service to rollback the work in the subprocess.
Figure 12: Sub-process with Exception
3.5 Process Optimization and Simulation
Appian includes a process simulation interface embedded inside the Appian Process Modeler. The simulation interface captures expected lag and work durations for each task and expected distribution patterns for each gateway inside a process model. Once configured, the Appian simulation environment will report back metrics for aggregated lag and work durations for each node inside the model. Bottlenecks can be easily identified through analysis of the simulation results.
Figure 13: Process Simulation Interface
4. Business Rules
The Appian Rules environment enables users to create a central repository of reusable business rules to be used across the organization. Each rule is access- controlled, allowing select users to modify individual rules. As rules are changed, new versions of the rule are created and older versions are stored for historical reference. Rules inside Appian go far beyond simple decision logic in a process step. Appian rules may be applied to any form element, process attribute, report, or even group membership. A rule can just as easily control how content is rendered in a report or a form, as well as dynamically determine the proper path of a process.
Figure 14: Appian Rules Manager
Aside from web services, Appian further includes native connectors for common interfaces, including relational databases (RDBMS) and java messaging service (JMS). Appian also contains a set of integration tools that extend Appian’s API to integrate Application-layer logic and data with external systems, including AS/400, Peoplesoft, SAP, Microsoft, and Oracle. Appian’s Integrated Development Environment (IDE) and associated tools facilitate custom integration and development while Appian’s web services interface helps developers loosely couple Appian with external applications. Once developed, these interfaces can be used directly within the Appian Process Modeler as Appian Smart Services for business user orchestration of the integration in a process.
Figure 15: Java Eclipse SDK
6. Organizational Structure
Appian provides a complete organizational modeling tool allowing administrators and users to create ad hoc teams, hierarchical organization structures, and user roles for use across the platform. All organizational models can be imported from common directory structures like Microsoft Active Directory and LDAP. Appian also provides dynamic organizational modeling capabilities with the Appian Groups Server.
The Appian Groups Server is an integrated feature of the Appian BPM suite that enables administrators and managers to manage security and groups easily and seamlessly in the growing BPM environment. As new users enter the system or change position, attributes, groups, roles, and security all must be updated to ensure proper task assignment and security access. Appian simplifies the administration of groups and roles with a dynamic rule based system. Administrators can set up a variety of group types in Appian that include extended group attributes, public and private groups, rule-based group membership, and dynamic rule- based group hierarchies. Rule-based membership and hierarchies allow groups to self administer as user and group attributes change. The Appian Groups Server saves countless hours for administrators and managers keeping up with daily personnel changes across an organization.
Figure 16: Dynamic Groups
7. Process Adaptability
Appian allows processes to be modified “in-flight” and to adapt to process changes during runtime. Process owners can open and edit in-flight processes as they are running, change process data, dynamically activate and cancel tasks, trigger escalations, and trigger events. Running processes can now be modified to include these new actions and steps, as well as have these actions affect any future processes. No downloads are required; nor is any complex scripting or coding required to modify processes in flight. Upon saving the changes, the user can choose whether to apply the change to the individual processes or update the process model, forcing other processes to also adopt the change.
Figure 17: Process Monitor
8. Process Lifecycle Management
Appian provides a complete platform to Design, Execute, Manage, and Optimize business processes to rapidly achieve results. The Appian BPMS platform provides functions necessary to rapidly build and deploy new process models, monitor their efficiency, optimize actions, and adopt changes. These features include
Native version control of Process Models and Rules
Migration of Processes between Systems
Real-time Analytics of Process Performance
Bottleneck Analysis and Optimization of Process Efficiency
In-flight modification to adopt changes
9. Monitoring, Measurement, and Management Information
Appian’s integrated analytics functionality gives organizations complete visibility into key business operations, making it easier to anticipate trends, issues, and opportunities, and to react accordingly. With Appian’s real-time analytics, reporting dashboards, and Business Activity Monitoring capabilities, organizations can
Enhance control over key processes with personalized dashboard reporting, notifications, and alerts
Accelerate response to change by dynamically re-routing processes based on real- time performance information
Quickly identify process bottlenecks and optimize business process performance
Develop a culture of continuous process improvement
Appian provides real-time, dynamic analytics on all process-related data in the system that is entirely configurable through a web-based interface. Appian captures both key business metrics as well as process performance data for aggregation into detailed report views. Report designers may aggregate and filter data using business data to give new insight into process performance. For example, beyond seeing simple task performance, report designers can aggregate task performance metrics based on values captured in process, such as a keys supplier or cost. This flexible reporting environment enables designers to quickly see how process performance is impacted by the content and business data flowing through each process.
Report dashboards in Appian provide managers the ability to quickly see real-time performance across all operations. Each report is personalized to the specific users, providing a unique view based on their access to process information and the layout of each report. Reports may be displayed in a variety of formats, including tabular, pie chart, bar chart, and more. Each report can be quickly toggled between views to gain new insight into report data. Key Performance Indicators may also be overlapped on graphical reports or displayed as graphical indicators in tabular reports. Finally, for instant collaboration around a report, report owners may choose to export a report to MS Excel format or send the report in an email to another user directly from the report interface.
Figure 18: HR Onboarding Dashboard
Appian captures detailed Business Activity Monitoring (BAM) performance data across all activities completed in the Appian process environment. Appian BAM performance data can be displayed in the graphical reports discussed previously, but they can also be displayed directly inside the Appian Process Modeler. This unique view allows process owners to view real-time and historical performance information while monitoring or editing a process. Bottlenecks and process inefficiencies can be quickly identified and corrective action taken immediately inside the web-based process modeling environment.
Figure 19: Business Activity Monitoring
Appian provides interfaces for managers and administrators to easily browse user and group directories and navigate to specific users or groups task lists to directly manage work items. From the interface, tasks can be re-assigned, raised in priority, cancelled, paused, or even restarted to have a user re-complete a task. Appian’s reporting environment allows managers to create tasks views across users and groups to monitor and manage work completion from an aggregate view, while being able to drill into task details for individual routing decisions.
Security in Appian is managed at the process level, instead of the task view level, providing better granular control of task security. For example, a manager might have rights to manage tasks for the Expense Reporting process, but not Human Resources processes, so when a task view is shown that might include tasks from both processes, only the Expense Reporting tasks are shown to the manager. Additionally, process security in Appian can be made dynamic, based on stages of the process. At certain points a manager might have greater control, but, as the process changes, security rights to manage or even view the process can change for every user.
10. Templates and Frameworks
Appian, along with Appian’s global partner network, provides a number of free and for purchase process templates to jump-start a customer’s BPM initiative. These include templates for the following areas:
HR Hiring and Onboarding
Acquisition and Procurement
Compliance and Risk Management
HR Hiring / Onboarding / Offboarding
IT Service Request Management
Marketing Service Request Management
Meeting and General Task Management
Customer Relationship Management – Wealth Management
Financial Risk Assessment
Product Development Review and Approval
Appian process templates are designed to jump-start a process initiative into select practice areas. Process templates are based on Appian’s and Appian partners’ years of experience in improving common process challenges and utilizing industry best practices for automating each process.
Appian is the BPM expert. Appian leads the market in BPM innovation, delivering comprehensive, flexible, and easy-to-use solutions tailored to the needs of businesses and governments worldwide.
Appian empowers more than 2.5 million users globally across government, financial services, healthcare, manufacturing, telecommunications, and other industries. Appian was founded in 1999 and is headquartered in the Washington D.C. region, with professional services and partners around the globe. Appian is a privately held company with over 200 employees and a global partner network of skilled BPM professionals.
The Appian BPM Suite is available as either a client managed enterprise solution as Appian Enterprise, or as an on-demand SaaS solution as Appian Anywhere.
Appian Enterprise is available to clients in either a per-user or per-CPU pricing with discounts on higher volumes or users or CPUs. Pricing options are available for customers at all levels, from low pricing for Small and Medium Business or individual departments to large enterprise pricing supporting a process transformation initiative for thousands of users.
Appian Anywhere is available at as low as $35 per-user / per-month. Appian Anywhere is available at an entry level Standard edition for customers looking to get started quickly with a complete BPMS platform, or at a Premium edition, for those customers that require an extra level of security and reliability. Functionality is the same in both Standard and Premium editions with the Premium edition offering an additional 99.5% uptime guarantee and SAS-70 Type II IT audits for compliance purposes.
13. Case Study
Appian case studies are at http://www.appian.com/customers/list.jsp