Title :
InterPlay: Horizontal Scale-Up and Transition to Design in Scenario-Based Programming
Author :
Barak, Dan ; Harel, David ; Marelly, Rami
Author_Institution :
Weizmann Inst. of Sci., Rehovot
fDate :
7/1/2006 12:00:00 AM
Abstract :
We describe InterPlay, a simulation engine coordinator that supports cooperation and interaction of multiple simulation and execution tools, thus helping to scale up the design and development cycle of reactive systems. InterPlay involves a number of related ideas. In the first, we concentrate on the interobject design approach involving live sequence charts (LSCs) and its support tool, the play-engine, enabling multiple play-engines to run in cooperation. This makes possible the distributed design of large-scale systems by different teams, as well as the refinement of parts of a system using different play-engines. The second idea concerns combining the interobject approach with the more conventional intraobject approach, involving, for example, statecharts and Rhapsody. InterPlay makes it possible to run the play-engine in cooperation with Rhapsody, and is very useful when some system objects have clear and distinct internal behavior, or in an iterative development process where the design is implementation-oriented and the ultimate goal is to end up with an intraobject implementation. Finally, we have expanded the play-engine\´s ability to delegate some of the system\´s functionality to complex GUIs. This enables beneficial interaction with "smart" GUIs that have built-in behavior of their own, and which are more naturally implemented in code
Keywords :
digital simulation; graphical user interfaces; object-oriented programming; software tools; GUI; InterPlay; distributed design; graphical user interface; interobject design approach; intraobject design approach; iterative development process; large-scale system; live sequence chart; play-engine; reactive system; scenario-based programming; simulation engine coordinator; Design methodology; Distributed computing; Engines; Graphical user interfaces; Java; Joining processes; Large-scale systems; Operating systems; Process design; Voice mail; InterPlay; LSCs; Modeling methodologies; interobject; intraobject; play-engine; scenario-based programming; transition to design.;
Journal_Title :
Software Engineering, IEEE Transactions on
DOI :
10.1109/TSE.2006.67