Entities represent persistent data, independent of the underlying data storage mechanism.
With entities, you can work at a higher level of abstraction when you deal with data, and can create and maintain applications with less code than in traditional applications.
Transfer objects and queries act as a front-facing interface masking the underlying entity model.
The transfer model can hide the entity model's complexity and details and provides a simpler interface to the application's clients.
The service model allows for flexible publishing of data and functions to external actors.
Publish your business logic and data through network services, messages and operations together with your service contracts in OpenAPI.
Views and widgets can be linked to transfer objects to show and edit business data.
The user interface model offers a range of widgets and pre-defined interactions to design modern, full-fledged and eye-catching web frontends.
Actions are business snippets that are carried out to accomplish a business task.
Actions are used to manipulate the entity model, provide computed values, and describe complex control logics in an implementation-independent manner.
These tools handle a set of operations in an enterprise environment.
Use any of our productivity tools such as database migration scripts, authentication service, audit logs or blueprint document generation.
Get started with open source
Fee per developer
Best for professional developers building
Get in touch for a quote
Set the foundation with all your team needs
for enterprise application development.
Model-driven architecture (MDA) is a system that is created using generalized models written in the modeling language. Its objective is to provide guidelines for structuring software specifications.
The JUDO project is a continuous effort here at BlackBelt, in which we are molding and improving our practices and tools based on hands-on experience delivering software projects to our clients.
Do you ever feel like you are just trudging through your daily grind? At the beginning, every problem was an exciting challenge. After a couple of years, you feel you are solving the same puzzles in every project.
We, the developers of JUDO, felt the same. That’s why we gathered all our experience in architecture, libraries and design patterns, commonly used code snippets and build processes to integrate them into a single tool. Initially, we created the tool for ourselves. Then, we have implemented successful projects and integrated the new experiences. As time went by we polished it to a level where we felt confident enough to share it with everyone. So JUDO was born.
JUDO is our vision of how to develop software efficiently. In the future, we will regularly incorporate and publish tools that have worked for us. Because we firmly believe there is a faster and better way to develop software than we do today.
Don't be fooled! Low-code is the new buzzword, the new hype in the modeling world. Since the model driven terminology is not cool, tool vendors in the modeling realm are now positioning themselves as low-code platforms - nothing new under the sun, just a different marketing strategy.
Simply put, low-code development is a paradigm that uses models as the primary artifact of the development process, and the implementation is (semi-)automatically generated from the models.
JUDO is a low-code development toolbox optimized for creating and operating enterprise automation applications. JUDO is not a platform; you can use one module of JUDO and ignore the other.
JUDO aims to model enterprise applications. There are numerous definitions of what an enterprise application is. We define enterprise application as follows:
From the architecture point of view, an enterprise application is a software that runs on a remote server in a private, public, or hybrid cloud. In most cases, web browsers and mobile devices are used to access the remote server over a network.
From a business perspective, enterprise applications are used to satisfy the needs of an organization rather than individual users. Such organizations include businesses, schools, interest-based user groups, charities, and governments. The goal of enterprise applications is to improve the organization’s productivity and efficiency by providing business logic support functionality.
JUDO is designed for software developers who want to speed up their work and focus on business needs instead of typing architectural glue codes and copying design patterns.
Traditional coding is full of tedious and time-consuming tasks, such as repetitive coding patterns or glue codes. If you want to focus only on business-relevant data structures and business logic algorithms, the best way is to use JUDO.
JUDO provides an implementation-independent text-based modeling language called JSL (JUDO Specification Language). The overall goal of JSL is to foster unambiguous and readable descriptions of different business domains and their incorporated business logic.
Because of the accuracy of JSL, models can be run, tested, and integrated into coding projects.
JUDO works with any Java backend platform but specifically supports Spring, Spring Boot, and OSGi.
A low-code toolbox for developers. Design and run cloud applications in the blink of an eye, with less code than ever before.
Give JUDO a try