MAS - an interactive synthesizer to support behavioral modeling in UML

The Minimally Adequate Synthesizer (MAS) is an interactive algorithm that synthesizes UML statechart diagrams from sequence diagrams. It follows D. Angluin's (1987) framework of a minimally adequate teacher to infer the desired statechart diagram by consulting the user. To minimize the number of consultations needed, MAS keeps track of the interaction with the user. Together with its general knowledge about sequence diagrams, this makes MAS operate mostly without the user's help, but allowing him to guide the process at critical points. In this paper, we discuss the MAS algorithm and its practical implementation, integrated with a real-world UML modeling tool, the Nokia TDE ("The Design Environment"). Moreover, we discuss the interaction between the algorithm and the user as a medium for improving the algorithm and for further reducing the number of user consultations needed. Furthermore, we show how MAS can be used to incrementally synthesize sequence diagrams into an edited or a manually constructed statechart diagram. Totally automatic synthesis algorithms may result in a state machine that contains undesired generalizations. Because MAS consults the user during the synthesis process, the user can be confident that such generalizations do not appear in the resulting statechart diagram.

[1]  Hideto Tomabechi,et al.  Automatic Synthesis of State Machines from Trace Diagrams , 1994, Softw. Pract. Exp..

[2]  David Chenho Kung,et al.  Formal approach to scenario analysis , 1994, IEEE Software.

[3]  Ismaïl Khriss,et al.  Algorithmic support for model transformation in object‐oriented software development , 2001, Concurr. Comput. Pract. Exp..

[4]  Stefan Leue,et al.  Synthesizing ROOM Models from Message Sequence Chart Specifications , 1998 .

[5]  Jean G. Vaucher,et al.  From scenarios to timed automata: building specifications from users requirements , 1995, Proceedings 1995 Asia Pacific Software Engineering Conference.

[6]  Tarja Systä,et al.  Implementing Minimally Adequate Synthesizer , 2000 .

[7]  Mohammad Reza Mousavi,et al.  Synthesizing software architecture descriptions from Message Sequence Chart specifications , 1998, Proceedings 13th IEEE International Conference on Automated Software Engineering (Cat. No.98EX239).

[8]  Stéphane S. Somé,et al.  An Enhancement of Timed Automata generation from Timed Scenarios using Grouped States , 1996 .

[9]  Johann Schumann,et al.  Generating statechart designs from scenarios , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.