Gandalf: software development environments
IEEE Transactions on Software Engineering
Incremental dynamic semantics for language-based programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Cornell program synthesizer: a syntax-directed programming environment
Communications of the ACM
AToM3: A Tool for Multi-formalism and Meta-modelling
FASE '02 Proceedings of the 5th International Conference on Fundamental Approaches to Software Engineering
IJCAR '01 Proceedings of the First International Joint Conference on Automated Reasoning
Graphical program development with PECAN program development systems
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Design requirements for more flexible structured editors from a study of programmers' text editing
CHI '05 Extended Abstracts on Human Factors in Computing Systems
Generation of visual editors as eclipse plug-ins
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Software Abstractions: Logic, Language, and Analysis
Software Abstractions: Logic, Language, and Analysis
Constraint Logic Programming using Eclipse
Constraint Logic Programming using Eclipse
Model-driven Development of Complex Software: A Research Roadmap
FOSE '07 2007 Future of Software Engineering
On Combining Multi-formalism Knowledge to Select Models for Model Transformation Testing
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Verification of UML/OCL Class Diagrams using Constraint Programming
ICSTW '08 Proceedings of the 2008 IEEE International Conference on Software Testing Verification and Validation Workshop
Reasoning on UML class diagrams
Artificial Intelligence
Barriers to systematic model transformation testing
Communications of the ACM
Zchaff2004: an efficient SAT solver
SAT'04 Proceedings of the 7th international conference on Theory and Applications of Satisfiability Testing
Reasoning on UML class diagrams with OCL constraints
ER'06 Proceedings of the 25th international conference on Conceptual Modeling
MDA and analysis of web applications
TEAA'05 Proceedings of the 31st VLDB conference on Trends in Enterprise Application Architecture
UML2Alloy: a challenging model transformation
MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
ICMT'11 Proceedings of the 4th international conference on Theory and practice of model transformations
A demonstration-based approach to support live transformations in a model editor
ICMT'11 Proceedings of the 4th international conference on Theory and practice of model transformations
Proceedings of the 25th European conference on Object-oriented programming
MEDI'11 Proceedings of the First international conference on Model and data engineering
Using models of partial knowledge to test model transformations
ICMT'12 Proceedings of the 5th international conference on Theory and Practice of Model Transformations
A posteriori operation detection in evolving software models
Journal of Systems and Software
Hi-index | 0.00 |
Integrated development environments such as Eclipse allow users to write programs quickly by presenting a set of recommendations for code completion. Similarly, word processing tools such as Microsoft Word present corrections for grammatical errors in sentences. Both of these existing structure editors use a set of constraints expressed in the form of a natural language grammar to restrict/correct the user ( syntax-directed editing) or formal grammar (language-directed editing ) to aid document completion. Taking this idea further, in this paper we present an integrated software system capable of generating recommendations for model completion of partial models built in editors for domain-specific modeling languages. We present a methodology to synthesize model editors equipped with automatic completion from a modeling languageâ聙聶s declarative specification consisting of a meta-model with a visual syntax. This meta-model directed completion feature is powered by a first-order relational logic engine implemented in ALLOY. We incorporate automatic completion in the generative tool AToM3. We use the finite state machines modeling language as a concise running example. Our approach leverages a correct by construction philosophy that renders subsequent simulation of models considerably less error-prone.