How do customers build an end-to-end IoT solution using commercial grade, open source products? This is the question we (Patrick Steiner, Maggie Hu and I) wanted to address with our session at the Red Hat Summit, Boston. The end-to-end solution is based on three-tier Enterprise IoT Architecture, which integrates IoT data with existing business processes and the human element.
Continue reading “Building a Secure IoT Solution: Summit 2017”
Red Hat has just released new versions of its popular business automation products: Red Hat JBoss BRMS & Red Hat JBoss BPM Suite 6.4. In this post we will highlight the improvements and new features these releases brings. Apart from stability and performance improvements, version 6.4 brings new, highly requested, features that improve the platform experience in larger enterprises.
The new versions of the platforms are available both from the Red Hat Customer Portal (BPM Suite and BRMS) and the Red Hat Developers website. Installation instructions can be found in the “Getting Started Guide” for BPM Suite and BRMS and on the Red Hat Developers “Get Started” pages for BPM Suite and BRMS. Finally, the installation demo’s have been updated to target the latest versions:
Continue reading “What's New in Red Hat JBoss BRMS and BPM Suite 6.4”
Generally when the topic of Business Process Management (BPM) comes up we think of BPM software suites. There’s another side to BPM though, and that’s the practice of process management, which doesn’t require any software at all.
Traditionally the BPM practice has focused on continuous process improvement. There are various methodologies but it generally comes down to this:
- Collect metrics on the existing process
- Analyze those metrics
- Propose an optimization
- Simulate the optimization with the collected metrics
- Institute the validated optimization
- Do it all again
There’s nothing wrong with that. We’ve occasionally had good results with continuous improvement for processes that are core to a business. A good candidate, for example, would be a fee-for-service health insurance claim process — it’s a process that’s been around for decades and will likely be around for additional decades. It’s also high volume, so even the smallest improvement can have a major impact.
Continue reading “Business process management in a "microservices world"”
Over the last couple of weeks, I’ve been working on some Red Hat JBoss BPM Suite workshop material. One part of the workshop is a four-hour lab that guides the attendees through the development of JBoss BPM Suite 6.x processes, rules and applications (note that this workshop is available to our customers, please contact your Red Hat account manager or local Red Hat sales representative for more information), but I’m going to be sharing part of the story with you today.
The lab-sessions require a pre-installed and pre-provisioned virtual machine, which contains all the material required to run the lab. This means that I need to create, install, provision and deploy a virtual machine that contains all the required tools and code to successfully run the lab sessions. Obviously this can done by hand, but what’s the fun in that?!
Manual work is error prone, hard to reproduce and definitely hard to version control. Hence, we want to have an automated solution in which we can (declaratively) define the layout and configuration of our virtual machine. Say hello to Vagrant and Ansible!
Continue reading “A simple guide to provisioning Vagrant boxes with Ansible”
Red Hat JBoss Resource Planner (part of Red Hat JBoss BRMS, the enterprise product based on the upstream OptaPlanner community project) is the leading open source constraint satisfaction solver. A constraint satisfaction solver is a solving engine build around sophisticated optimization algorithms that allows to plan for optimal use of a limited set of constrained resources.
Every organization faces scheduling problems: assign a limited set of resources, for example employees, assets, time and money, to build products or provide services. Resource Planner optimizes such planning problems to provide an optimal utilization of resources, resulting in higher productivity, less costs and higher customer satisfaction. Use cases include:
- Vehicle Routing: What is the optimal set of routes for a fleet of vehicles to traverse in order to deliver to a given set of customers?
- Employee Rostering: Find an optimal way to assign employees to shifts with a set of hard and soft constraints.
- Cloud Optimization: What is the optimal assignment of processes to cloud computing resources (CPU, memory, disk)
- Job Scheduling: Optimise the scheduling of jobs of varying processing times on a set of machines with varying processing power, trying to minimize the makespan.
- Bin Packing: pack objects of different volumes into a finite number of bins or containers in a way that minimizes the number of bins used.
- and many more.
All these problems are, so called, NP-hard problems, which implies that the time required to solve these problems using any currently known algorithm increases very quickly as the size of the problem grows (e.g. adding a destination to a vehicle routing problem, adding a shift to an employee rostering problem). This is one of the principal unsolved problems in computer science today.
As it is impossible to solve these problems, or find the best solution to these problems, in a limited timespan when scaling out, Business Resource Planner uses a set of sophisticated optimization heuristics and meta-heuristics (like Tabu Search, Simulated Annealing and Late Acceptance) to find an optimal solution to these problems.
As said, every organisation has these kind of scheduling problems, and there is a lot to gain from optimising these problems. In the remainder of this post we will walk you through a number of steps to get you started with Business Resource Planner/OptaPlanner to find an optimal solution to your business problem and start increasing productivity, reducing costs and increasing customer satisfaction.
Continue reading “Use these six simple steps to get started with Red Hat JBoss Business Resource Planner”
(This article was excerpted from the book Effective Business Process Management with JBoss BPM.)
Organizations are constantly being tested in the markets in which they operate by shifting expectations of their customers, and by competitors looking to provide better value at a lower cost. This tension is the catalyst that continually pushes organizations to search for ways to improve their services, improve the speed which they deliver value to their customers, enable employees to get more done with less administrative overhead, and most importantly, to constantly grow by generating more revenue. This is the basis of BPM, to be able to identify and capture processes in an organization to create repeatable, measurable and consistent execution of goals to drive their business forward.
When an organization studies its operations, it discovers there are many processes used in its daily business. These processes are often not well thought out, or they were created to complete some aspect of the daily business, with little thought given to improving efficiency. At this point the organization looks for the first steps for improving through automation the processes that represent business value.
Business value could be anything that drives organizational goals forward to make customers happy, and thereby generate more revenue. This business value can be anything, such as keeping track of interaction with a customer. If that data could be captured, the marketing department could search a customer’s behavioral patterns to decide what products and services to market to a particular person. It would take mass marketing out of the equation and allow for direct, specific marketing towards individual customers’ needs.
It is possible to identify pieces of business value that are not worth automating because they are inconsistent or have too many potential paths to justify the effort to automate. Others will require traditional human brain power, which is not easy to capture in automated process form. An example of this would be the hiring of employees, a process that can be largely automated, but the actual decision to hire a specific candidate remains a factor of human intelligence. We can automate the process of handling applications, scheduling interviews, and the post process of on-boarding a new employee once hired. We leave the “hire or not to hire” task to humans.
Continue reading “Introducing Business Process Management with JBoss BPM”