O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c

Book Description

A design handbook to orchestrate and manage flexible process-driven systems with Oracle BPM and SOA Suite 12c

  • Learn key principles to model business processes with BPMN and BPEL, and execute them in an SOA environment.
  • Use best practices for composite applications, including service design and human interactions, and apply them in your daily projects.
  • Design, implement, and optimize business processes with real-world examples illustrating all key concepts

In Detail

This book is a design handbook and provides skills to successfully design, implement, and optimize business processes on top of SOA. Starting with business process modeling, it shows design principles to architect sound process architectures. It presents best practices for modeling business processes using BPMN, together with design principles for services and composite applications. It provides detailed coverage of how to prepare business processes for execution. An in-depth explanation of human interactions is given and also principles and best practices for using rules.

Moving on, Adaptive Case Management principles are explained, along with the reach of business processes to mobile devices and ensuring multichannel interactions. Business activity monitoring, event-driven architectures, complex event processing in relation to business processes, and enabling integration with events and IoT devices are explained. The design principles and best practices are demonstrated in a practical way on a rental car use case.

What You Will Learn

  • Design principles to model business processes and business architectures
  • Best practices to produce executable business processes in BPMN
  • Principles when designing reusable services and composite applications
  • Advanced approaches to human interactions in business processes, including patterns and Adaptive Case Management
  • Business rules management and principles for rule design and implementation, including using rules in BPMN and BPEL processes
  • Prepare process applications for mobile and multichannel/omnichannel
  • Explore the best practices and principles of Business Activity Monitoring to define and monitor Key Performance Indicators
  • Extend the processes to Internet of Things devices and processing complex events

Table of Contents

  1. Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c
    1. Table of Contents
    2. Design Principles for Process-driven Architectures Using Oracle BPM and SOA Suite 12c
    3. Credits
    4. About the Authors
    5. About the Reviewers
    6. www.PacktPub.com
      1. Support files, eBooks, discount offers, and more
        1. Why subscribe?
        2. Free access for Packt account holders
        3. Instant updates on new Packt books
    7. Preface
      1. What this book covers
      2. What you need for this book
      3. Who this book is for
      4. Conventions
      5. Reader feedback
      6. Customer support
        1. Downloading the color images of this book
        2. Errata
        3. Piracy
        4. Questions
    8. 1. Business Process Management, Service-oriented Architecture, and Enterprise Architecture
      1. The importance of business processes
        1. Modeling and optimizing business processes
        2. Classifying business processes
        3. The digital economy and knowledge-driven processes
        4. Business architecture
        5. Enterprise architecture
      2. Business process management
        1. Business process life cycle
      3. Business process modeling
        1. Modeling method and notation
        2. Adaptive case management
        3. AS-IS process model diagram
          1. Exception handling
        4. Modeling principles
        5. Common problems in process modeling
        6. Publishing and communicating process models
      4. Process execution, monitoring, and analytics
        1. Business activity monitoring
        2. Key performance indicators
      5. Process optimization
        1. The TO-BE process model
        2. Typical problems in process optimization
      6. Oracle BPM Suite
      7. How SOA and BPM fit together
        1. Agility
        2. Resilience
        3. Better aligning business with IT
        4. New frontiers for SOA
        5. Oracle SOA Suite
      8. Summary
    9. 2. Modeling Business Processes for SOA – Methodology
      1. The postmature birth of enterprise BPM
      2. Oracle BPM Suite 12c – new business architecture features
      3. Football games – same basic rules, different methodology
      4. Which BPM game do we play?
        1. Game Silo BPM – departmental workflows
      5. Oracle BPM Suite 11g is made for playing Game Silo BPM
      6. Oracle BPM Suite models processes in BPMN
      7. Game Enterprise BPM
      8. Still wide open – the business/IT divide
      9. Oracle BPM Suite 12c tackles Game Enterprise BPM
      10. Using business architect features
      11. Properties of BA models
      12. Depicting organizational units
      13. Value chains
      14. Strategy models
      15. Key performance indicators
        1. KPIs in the value chain step level
      16. Why we need a new methodology for Game Enterprise BPM
      17. Political change through Game Enterprise BPM
      18. Pair modeling the value chains and business processes
      19. Using guidelines and conventions to establish broad understanding
      20. BPM Methodology for Oracle BPM Suite
      21. Summary
    10. 3. BPMN for Business Process Modeling
      1. Business process classification and BPMN
        1. Strategic or operational
        2. Process type
        3. Process scope
      2. Business process diagrams
      3. Deeper analysis of BPMN elements
        1. Events
        2. Activities
          1. Subprocess
        3. Task
        4. Gateways
        5. Sequence and message flows
        6. Pools and lanes
      4. General guidelines for business process modeling
        1. Rule 1 – process models should provide aid in process understanding
        2. Rule 2 – match each split with a join
        3. Rule 3 – have well-defined start and end events
        4. Rule 4 – look out for orphan tasks
      5. Process modeling patterns and BPMN
        1. Basic control patterns
          1. Simple sequence
        2. Parallel split sequence or forking
          1. Type 1 – uncontrolled flow
          2. Type 2 – controlled flow
          3. Type 3 – parallel box
        3. Synchronization or joining flow
          1. Type 1 – use of the parallel (AND) gateway
          2. Type 2 – subprocess completion
        4. Branching and synchronization patterns
          1. Multichoice
          2. Structured synchronizing merge
          3. Multimerge
        5. Iteration-based patterns
          1. Arbitrary cycles
          2. Structured loop
        6. Termination
          1. Implicit termination
          2. Explicit termination
        7. Multiple-instance pattern
          1. Multiple instances without synchronization
          2. Multiple instances with a priori design-time knowledge
          3. Multiple instances with a priori runtime knowledge
        8. State-based patterns
          1. Deferred choice
      6. Modeling an abstract BPMN process
      7. Top-down modeling: where the value chain meets BPMN
      8. Moving from process level 3 to level 4
      9. Differentiating automated process/workflows and page flows
      10. Summary
    11. 4. Process-driven Service Design
      1. Service design guidelines
        1. Benefits of service design for BPM
        2. Key service design principles
        3. Service granularity
        4. Service categories
          1. Presentation services
          2. Business process services
          3. Enterprise business services
          4. Application services
          5. Utility services
          6. Service design – an enterprise concern
      2. Data in the context of SOA
      3. Service virtualization
      4. Service design methodology
        1. Top-down portfolio-driven service design
        2. Bottom-up application-driven service design
        3. Use case-driven service design
        4. Process-driven service design
      5. Applying service design to RYLC
        1. Rationalizing the RYLC process into abstract services
        2. Building the RYLC service catalog
        3. Service architecture for the Rent A Car process
      6. Summary
    12. 5. Composite Applications
      1. SOA + applications = composite applications
        1. SOA is backed up by user requirements
        2. Always link new architecture styles back to highly prioritized business requirements
      2. What are composite applications?
      3. Moving from the programmatic paradigm to the declarative paradigm
      4. The Oracle SOA Suite journey
        1. Beyond 12c – the trend of the zero code
        2. How to get on board?
      5. SCA as the next generation of containers
        1. How does SCA composite behave from the outside?
        2. The many colors of SCA's internals
        3. Impacts of SCA on the architecture and design guidelines
        4. Templates in SOA Suite 12c for consistent designs
        5. The deployment model for SCA
        6. The building blocks of a composite architecture
        7. An end-to-end walkthrough – from processes to use cases
        8. Designing read services – a shift from WSDL to REST
        9. Designing writing services – WSDL and SOAP still reign
        10. From composite applications to domain services
        11. Linking domain processes to local workflows
        12. Components of the process layer
        13. Automated processes are the new kid in town
          1. Interacting with users through task management
          2. Notifying through business activity monitoring
            1. When to use a business rule for decision making in the process
          3. Components of the multichannel application layer
        14. Components of the functionality virtualization layer
        15. Components of the data access virtualization layer
          1. Using the business rule engine as an alternative to classical integration tools
      6. Other types of integration logic that motivate a business rule engine
      7. Summary
    13. 6. Process Execution with BPMN and BPEL
      1. Implementation roadmap
        1. From process requirements to design
        2. Evaluating the associated components
        3. Defining the implementation steps
        4. Deciding where to use BPMN and where BPEL
      2. Using BPEL to implement fleet management
        1. Solution concepts
        2. Service facade and contract-first composite design
        3. Delegation pattern
          1. Implementing the OperationDelegator
          2. Implementing service operations
      3. Using BPMN to implement the rental process
        1. Finding the right level of variance paths
        2. Bridging the gap between the business and IT
        3. Concretizing the process
          1. Deciding on the coupling levels per activity
          2. Defining the activity type per activity
          3. Designing the referenced services
          4. Deciding on message exchange patterns
          5. Adding exception handling
          6. Defining the correlation of events to processes
          7. Decoupling business data from process instance data
      4. Best practices
        1. Degrees of coupling between technical components
        2. Organizing the MDS structure
        3. Distinguishing between public and private interfaces
        4. Archiving and monitoring with BPEL sensors
        5. Keeping processes clean using assertions
        6. Naming criteria for composite partitions
      5. Summary
    14. 7. Human Interaction with Business Processes
      1. User experience guidelines
      2. User personas and user journeys within a business process
      3. Designing the user interface – wireframes, task-driven, process insight
      4. Task identification and patterns
      5. Invoking human tasks from BPMN and BPEL
        1. Human Workflow architecture
        2. Example: Adding human interaction to a business process
      6. Building task-driven user interfaces – workspace, web forms, ADF, .Net
        1. ADF
        2. Web forms
        3. .NET
      7. Best practice considerations – performance, extensibility, upgrade protection
        1. General process design
        2. Explicit versus implicit modeling
        3. Custom inbox applications
      8. Summary
    15. 8. Business Rules
      1. Why business rules within BPM are important?
        1. About rules
        2. Rules and BPM
      2. How to design rules and how to organize them
        1. Discovering rules
        2. Designing and organizing rules
      3. Using rules
        1. Design-time architecture
        2. Runtime architecture
      4. Best practices
        1. Defining the interface
        2. Service design
        3. Rule management
      5. Example – adding rules to BPMN and BPEL
      6. Summary
    16. 9. Adaptive Case Management
      1. The people do matter – not the machines
        1. The rise of the knowledge worker
        2. Why do we deliver bad IT support to our knowledge workers?
        3. How to involve a user in the processes?
        4. Defining a "case"
        5. Case management is a natural evolution of BPM
      2. The characteristics of ACM
        1. System interactions
        2. Is the exception becoming the norm?
        3. Data centricity versus process centricity
        4. Multiple stakeholders
        5. Task management
        6. Building blocks
        7. The ACM user interface
        8. The "A" in ACM
      3. ACM and business analytics
        1. Emerging paths and process mining
        2. Adding business analytics to the game
      4. The basic concepts of adaptive case management in Oracle BPM Suite
        1. Build a case in Oracle BPM Suite
      5. Modeling a case
      6. Building your own case UI on top of the Case API
      7. Sample – ACM at RYLC
      8. Best practices
        1. Using custom activities for fast prototyping
        2. Using data in cases
        3. Cases and subcases
        4. Bringing order into different rulesets
        5. Working around the missing stages concept
        6. Using ACM in BPMN or better BPMN in ACM?
        7. Engaging a UX designer in your ACM project
        8. Granularity of activities
      9. Summary
    17. 10. Mobile and Multichannel
      1. Development of mobile solutions
        1. The challenges of mobile development
        2. The renaissance of JavaScript
      2. HTML5 – cross-platform technology
        1. Updates of your apps
      3. Single-page web apps
      4. Hybrid apps
      5. The shift in web development
      6. UX design
      7. Mobile solutions and SOA
      8. Mobile solutions and BPM
      9. Use cases
      10. Oracle Mobile Tooling
        1. Oracle Mobile Application Framework
        2. Oracle Mobile Suite
        3. Oracle Mobile Security Suite
        4. Oracle API Gateway
      11. Mobile use case for RYLC with MAF
      12. Summary
    18. 11. Event Processing and BPM
      1. What is fast data?
      2. What is event processing?
        1. Event-driven thinking
        2. The four Ds of event processing
      3. The key elements of event processing
        1. Event-driven architecture
        2. Event processing network
        3. Types of event processing
          1. Simple Event Processing
          2. Event Stream Processing
          3. Complex Event Processing
      4. Event processing versus Business Rule Management Systems
      5. Conceptual architecture for event processing
        1. Event producers
        2. Inbound adapters and outbound adapters
        3. Event channels
        4. Event processors
        5. Event consumers
        6. Event bus
        7. Event monitoring and management
        8. Event governance and security
      6. Self-contained versus claim check event messages
      7. How does event processing fit into a modern architecture?
        1. Oracle Fusion Middleware products supporting event processing
          1. Oracle Event Processing
          2. Oracle Event Processing for Java Embedded
          3. Oracle Stream Explorer
          4. Oracle Business Rule
          5. Oracle Real-time Decisions
          6. Oracle Business Activity Monitoring
          7. Oracle Coherence
          8. Oracle RDMS and Oracle NoSQL
          9. Oracle Event Delivery Network
          10. Oracle WebLogic JMS
      8. Event processing architectural patterns
        1. Architectural pattern 1 – standalone event processing
        2. Architectural pattern 2 – event processing in front of BPM and/or SOA
        3. Architectural pattern 3a – decoupling processes/services through business events
        4. Architectural pattern 3b – decoupling processes/services through business events with event processing
        5. Architectural pattern 4 – analyzing BPM process behavior with event processing
      9. Summary
    19. 12. Business Activity Monitoring
      1. What is BAM?
        1. Operational analytics
        2. Business analytics
        3. Operational intelligence
        4. Strategic analytics
        5. BAM versus BI
      2. Oracle BAM 12c architecture
      3. BAM Process Analytics
        1. The BAM methodology
      4. Monitoring RYLC with BAM
        1. BAM data object design
        2. RYLC BAM data design
      5. BAM integration with BPEL and BPM
        1. BAM dashboard design
        2. The RYLC BAM dashboard
      6. BAM best practices
      7. Summary
    20. Index