Automatization of building IT projects using composite consistency rules
New framework replaces manual natural language rules with reusable scripts for 13-page consistency.
Researchers Stanislaw Jerzy Niepostyn and Wiktor Bohdan Daszczuk have published a paper introducing a novel framework called composite consistency rules to solve a persistent problem in software engineering: inconsistent UML (Unified Modeling Language) models. Currently, architects rely on natural language rules applied at the element level to maintain consistency when shared elements appear across different diagrams (like class, sequence, or component diagrams). This manual, text-heavy approach is error-prone, difficult to reuse, and poorly integrated with modeling tools, often leading to costly design flaws.
The new framework elevates these ad-hoc practices into formal, higher-level patterns. These composite rules combine simple, atomic consistency rules into reusable structures that reflect how architects actually think and design. The team implemented these rules as executable JScript scripts within the popular Sparx Enterprise Architect modeling tool. This integration automates the enforcement of consistency, systematically reducing redundancy and human error while significantly accelerating the initial design phase of IT projects.
Beyond immediate efficiency gains, the formalization of design patterns through composite rules creates a structured foundation for advanced tooling. The paper specifically highlights that this work "open[s] possibilities for AI-assisted architecture generation and code integration." By turning implicit architectural knowledge into explicit, executable scripts, the method paves the way for AI agents to assist in or even generate consistent software models, bridging the gap between high-level design and implementation code.
- Replaces error-prone natural language rules with executable JScript scripts in Sparx EA.
- Formalizes higher-level design patterns into reusable composite rules for consistent UML modeling.
- Creates a foundation for AI-assisted architecture generation and tighter code integration.
Why It Matters
Automates a manual, error-prone part of software design, speeding up development and enabling future AI-driven architecture tools.