Structure Editor for Building Software Models
Mohammad Nurullah Patwary, Ana Jovanovic, Allison Sullivan

TL;DR
This paper introduces a block-based structure editor for Alloy to help novices build valid models more easily, reducing compilation errors and improving usability for new users.
Contribution
It presents a novel proof-of-concept structure editor for Alloy that prevents errors through guided block-based input, enhancing accessibility for beginners.
Findings
Reduces initial model compilation failures for new users.
Provides a guided, block-based interface for Alloy modeling.
Potential to improve learning curve for Alloy users.
Abstract
Alloy is well known a declarative modeling language. A key strength of Alloy is its scenario finding toolset, the Analyzer, which allows users to explore all valid scenarios that adhere to the model's constraints up to a user-provided scope. Despite the Analyzer, Alloy is still difficult for novice users to learn and use. A recent empirical study of over 93,000 new user models reveals that users have trouble from the very start: nearly a third of the models novices write fail to compile. We believe that the issue is that Alloy's grammar and type information is passively relayed to the user despite this information outlining a narrow path for how to compose valid formulas. In this paper, we outline a proof-of-concept for a structure editor for Alloy in which user's build their models using block based inputs, rather than free typing, which by design prevents compilation errors.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsModel-Driven Software Engineering Techniques · Business Process Modeling and Analysis
