Synthesis from Formal Partial Abstractions
Hamid Bagheri

TL;DR
This research leverages formal languages and relational logic to improve model-driven development by enabling synthesis from partial specifications, reducing hand coding, and increasing reliability in software system construction.
Contribution
It introduces methods and tools for synthesizing architectural models, platform-specific frameworks, and database schemas from partial, formal specifications using Alloy and its analyzer.
Findings
Synthesizes architectural models from abstract application models.
Generates partial, platform-specific application frameworks.
Creates object-relational mapping tradeoff spaces and database schemas.
Abstract
Developing complex software systems is costly, time-consuming and error-prone. Model- driven development (MDD) promises to improve software productivity, timeliness, quality and cost through the transformation of abstract application models to code-level implementations. However, it remains unreasonably difficult to build the modeling languages and translators required for software synthesis. This difficulty, in turns, limits the applicability of MDD, and makes it hard to achieve reliability in MDD tools. This dissertation research seeks to reduce the cost, broaden the applicability, and increase the quality of model-driven development systems by embedding modeling languages within established formal languages and by using the analyzers provided with such languages for synthesis purposes to reduce the need for hand coding of translators. This dissertation, in particular, explores the…
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 · Advanced Software Engineering Methodologies · Service-Oriented Architecture and Web Services
