The Power of Communities for Open-Source and the KIE Community
You can find a list of positive impacts gained from the strategy adopted by the KIE Community and how it made each individual project stronger in its own space.
Join the DZone community and get the full member experience.Join For Free
What Is KIE, After All?
If you work with projects like jBPM, Drools, OptaPlanner, and Kogito, there is a high probability of seeing “KIE” somewhere. Either in APIs, package names, communities, etc. So let’s take some time to clarify what KIE is.
Understanding KIE will unlock your understanding of how to mix and naturally match these projects and deliver reliable and production-ready solutions for several business automation scenarios.
Let’s define what KIE is and what it is not.
What KIE Isn’t:
It’s not a project. Not an organization. Not a group of people. Any specific company doesn’t own it.
What KIE Is:
KIE stands for Knowledge Is Everything.
- An umbrella, an ecosystem for open-source projects focused on business automation (process automation, decision automation, resource planning, optimization, and such).
- As of today (May 2022), projects like jBPM, Drools, OptaPlanner and Kogito are all under this umbrella. This allows them to fit well together with a good developer and user experience. This umbrella is called KIE.
- KIE projects are backed mainly by Red Hat, the biggest open-source organization globally, which seeks to empower these projects' open culture and capabilities.
Strengthened over more than fifteen years, this business automation ecosystem has nurtured a healthy group of active users and enthusiasts, the KIE Community.
If you are interested in communities, open-source projects organizations, or if you are curious about the KIE community, you'll find very useful information here. This article describes:
- How communities can boost open-source projects' evolution and the benefits of having a healthy community for your open-source project. The shared opinion is based on a real community that's been around for more than fifteen years and holds multiple independent projects that can benefit from each other.
- What is the KIE community, and how does it relate to open-source projects like jBPM, Drools, Kogito, and OptaPlanner?
Here, you can find a list of positive impacts gained from the strategy adopted by the KIE Community and how it made each project stronger in its own space.
The KIE Community
Initially, each project within KIE had its separate communities and groups. With an increasing number of users, enthusiasts, contributors, experts, and engineers working on these projects, there was a need for a shared environment for these people. There was a need for a shared space that should be safe, diverse, and inclusive, where everyone was welcome to ask questions, share knowledge and experiences, and grow together.
The open culture nurtured the KIE community and shaped it. Today, people can be part of this open space through several communication channels:
- Zulip Chat: a real-time chat where the community is welcome to join and follow several discussions around the project development. According to our open culture, in 2020, we decided to switch to IRC for another public and open platform to communicate and chat with the community.
- Mailing groups: each project has its mailing lists to address from simple to complex discussions with other community members worldwide; You can find the addresses on each project page.
- @KIECommunity Twitter: This account pushes the most recent news out. Be the first to know whenever a new project version exists, new blog posts about things yet to come, videos, tutorials, and much more.
- GitHub: every single line of code is currently open source. Check it out, and feel free to contribute!
What Type of Content Can You Find in This Community?
Until this moment, Apr 2022, the KIE landscape is based on three main pillars:
- Process Automation and Case Management: covers business processes and case management. Allows for the automation of long-running processes, straight-through processes, flexible processes (ad-hoc), and much more. The full lifecycle for human tasks and support for complex process instance migration with increased flexibility. Allows the creation of business dashboards with real-time data from the tracked KPIs.
- Business rules and Decision management: covers a set of tools that supports rules development through code or graphical interfaces and an engine with special algorithms that can quickly evaluate a huge number of rules and resource consumption quickly. Use cases like complex event processing are also part of this pillar.
- Resource planning and optimization: covers the diverse way to address and deliver the best possible solutions to planning problems that are (still today) impossible for one to identify the “best solution.” These are also known as np-complete types of issues. In simple terms, it covers use cases where there’s a need to optimize goals with limited resources and under certain constraints. Use cases include employee rostering, vehicle routing, maintenance scheduling, and task assignment.
Within this landscape, you can find multiple technologies that have matured over the years and been used in production in various organizations:
For more information about these projects, feel free to check out the respective project pages, plus the content available across the multiple KIE community channels mentioned previously.
The Power of Open-Source Communities
In the open-source world, we can find communities whose strategy revolves around a single project or product. There's yet another strategy: having multiple projects that target similar domains under the same community.
When these projects are hosted under the same community, they have the opportunity to leverage capabilities from each other, allowing powerful technologies to be built for each individual use case. Let me list a couple of examples:
- Processes (traditional BPMN) can include business rules tasks on top of a highly performant and powerful rules engine to execute and run any business rules tasks; Such business rules can be deployed in the same project or completely independently;
- Every evolution of the drools engine can be leveraged by business processes, including support for executing predictive models, DMN specification, explainability (XAI), and more;
- The constraint solver can offer, along with other options, the possibility of using the drools rules engine for a performant score calculation; Users can choose to write rules with multiple languages, including DRL;
- Business Processes frequently rely on human tasks that are assigned to groups. These tasks will generally wait for users to see the task in a task list. This is called a task assignment problem, a resource planning that we can easily address with OptaPlanner.
- Business rules can be developed sequentially when joining the processes capabilities of jBPM and drools. With this, rules can be triggered by a rule flow, a business process diagram logically representing and executing the rule groups based on a domain-based organization paradigm.
Open-source communities are powerful in many ways, and the KIE Community represents this very well by being able to:
- Grow enterprise-level open-source projects over decades;
- Nurturing the engagement in multiple fields of knowledge (multiple business automation specialties);
- Multiple types of professional engagement (developers, architects, consultants, sales architects, business analysts, business experts, and more).
- Allowing for knowledge exchange between everyone, from beginners to experts.
If you want to learn about the interesting aspects of an open-source community, feel free to reach out!
Published at DZone with permission of Karina Varela. See the original article here.
Opinions expressed by DZone contributors are their own.