Can complex software systems be automatically generated from visual specifications? This paper explores the synthesis of state-based object systems from Live Sequence Charts (LSCs), an extension of Message Sequence Charts (MSCs) for rich inter-object specification. LSCs include universal charts and mandatory behavior, enabling the specification of forbidden scenarios. The work addresses the problem of deciding whether a satisfying object system exists for a given LSC specification and, if so, synthesizing one automatically. This is considerably harder for LSCs than MSCs. The approach involves defining consistency, showing that an entire LSC specification is consistent if and only if it is satisfiable by a state-based object system, and then synthesizing a satisfying system as a collection of finite state machines or statecharts. This research has significant implications for the development of complex systems, since sequence diagrams serve as the manifestation of use cases and could lead directly to implementation.
Published in the International Journal of Foundations of Computer Science, this research fits squarely within the journal's focus on theoretical computer science and formal methods. By addressing the synthesis problem for LSCs, the paper contributes to the foundations of software engineering and model-driven development, aligning with the journal's emphasis on advancing the theoretical underpinnings of computer science.