Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

From Play-In Scenarios to Code: An Achievable Dream

Published: 01 January 2001 Publication History

Abstract

The author describes a scheme for developing complex reactive systems. The scheme makes it possible to go from a user-friendly requirements capture method, called play-in scenarios, via a rich language for describing message sequencing to full behavioral descriptions of system parts, and from there to final implementation. The author's proposal combines ideas that have been known for a long time with more recent ones. Central to the proposal is a cyclic process of verifying the system against requirements and synthesizing system parts from the requirements. The article focuses on the languages, methods, and computerized tools that allow smooth but rigorous transitions between the scheme's various stages. In contrast to database systems, this article concentrates on systems that have a dominant reactive, event-driven facet for which modeling and analyzing behavior is the most crucial and problematic issue.

References

[1]
D. Harel, "Biting the Silver Bullet: Toward a Brighter Future for System Development," Computer, Jan. 1992, pp. 8-20.
[2]
D. Harel, "Statecharts: A Visual Formalism for Complex Systems," Science of Computer Programming, vol. 8, 1987, pp. 231-274; also tech. report CS84-05, The Weizmann Institute of Science, Rehovot, Israel, 1984.
[3]
Unified Modeling Language (UML) documentation, Object Management Group (OMG), http://www.omg.org.
[4]
D. Harel and E. Gery, "Executable Object Modeling with Statecharts," Computer, July 1997, pp. 31-42.
[5]
A. Apt, Verification of Sequential and Concurrent Programs, 2nd ed., Springer-Verlag, New York, 1997.
[6]
Z. Manna and A. Pnueli, The Temporal Logic of Reactive and Concurrent Systems: Specification, Springer-Verlag, New York, 1992.
[7]
"MSCs: ITU-T Recommendation Z.120: Message Sequence Chart (MSC)," ITU-T, Geneva, 1996.
[8]
I. Jacobson, Object-Oriented Software Engineering: A Use Case Driven Approach, ACM Press/Addison-Wesley, Reading, Mass., 1992.
[9]
W. Damm and D. Harel, "LSCs: Breathing Life into Message Sequence Charts," Formal Methods in System Design, submitted for publication. An early version was published in Proc. 3rd IFIP Int'l Conf. Formal Methods for Open Object-Based Distributed Systems, P. Ciancarini, A. Fantechi, and R. Gorrieri, eds., Kluwer Academic, New York, 1999, pp. 293-312.
[10]
R. Schlor and W. Damm, "Specification and Verification of System-Level Hardware Designs Using Timing Diagrams," Proc. European Conf. Design Automation, IEEE CS Press, Los Alamitos, Calif., 1993, pp. 518-524.
[11]
A. Pnueli and R. Rosner, "On the Synthesis of a Reactive Module," Proc. 16th ACM Symp. Principles of Programming Languages, ACM Press, New York, 1989, pp. 179-190.
[12]
D. Harel and H. Kugler, "Synthesizing State-Based Object Systems from LSC Specifications," Proc. 5th Int'l Conf. Implementation and Application of Automata, Lecture Notes in Computer Science, Springer-Verlag, New York, submitted for publication; also, tech. report MCS99-20, The Weizmann Institute of Science, Rehovot, Israel, Oct. 1999.
[13]
T. DeMarco, Structured Analysis and System Specification, Yourdon Press, New York, 1978.
[14]
L.L. Constantine and E. Yourdon, Structured Design, Prentice Hall, Upper Saddle River, N.J., 1979.
[15]
P. Ward and S. Mellor, Structured Development for Real-Time Systems: Volumes 1-3, Yourdon Press, New York, 1985.
[16]
D. Hatley and I. Pirbhai, Strategies for Real-Time System Specification, Dorset House, New York, 1987.
[17]
D. Harel, et al., "STATEMATE: A Working Environment for the Development of Complex Reactive Systems," IEEE Trans. Soft. Eng., vol. 16, no. 4, 1990, pp. 403-414; also in Proc. 10th Int'l Conf. Soft. Eng., IEEE Press, Piscataway, N.J., 1988, pp. 396-406.
[18]
D. Harel, "Statecharts: A Visual Formalism for Complex Systems," Science of Computer Programming, vol. 8, 1987, pp. 231-274; also tech. report CS84-05, The Weizmann Institute of Science, Rehovot, Israel, 1984.
[19]
D. Harel and A. Pnueli, "On the Development of Reactive Systems," in Logics and Models of Concurrent Systems, K.R. Apt, ed., NATO ASI Series, vol. F-13, Springer-Verlag, New York, 1985, pp. 477-498.
[20]
A. Pnueli, "Applications of Temporal Logic to the Specification and Verification of Reactive Systems: A Survey of Current Trends," Current Trends in Concurrency, J. de Bakker et al., eds., Lecture Notes in Computer Science, vol. 224, Springer-Verlag, Berlin, 1986, pp. 510-584.
[21]
D. Harel and M. Politi, Modeling Reactive Systems with Statecharts: The STATEMATE Approach, McGraw-Hill, New York, 1998.
[22]
P. Chen, "The Entity-Relationship Model: Toward a Unified View of Data," ACM Trans. Database Systems, vol. 1, no. 1, 1976, pp. 9-36.
[23]
G. Booch, Object-Oriented Analysis and Design, with Applications, 2nd ed., Benjamin-Cummings, San Mateo, Calif., 1994.
[24]
S. Cook and J. Daniels, Designing Object Systems: Object-Oriented Modeling with Syntropy, Prentice Hall, Upper Saddle River, N.J., 1994.
[25]
J. Rumbaugh, et al., Object-Oriented Modeling and Design, Prentice Hall, Upper Saddle River, N.J., 1991.
[26]
B. Selic G. Gullekson and P. Ward, Real-Time Object-Oriented Modeling, John Wiley & Sons, New York, 1994.
[27]
D. Harel, "Statecharts: A Visual Formalism for Complex Systems," Science of Computer Programming, vol. 8, 1987, pp. 231-274; also tech. report CS84-05, The Weizmann Institute of Science, Rehovot, Israel, 1984.
[28]
D. Harel and E. Gery, "Executable Object Modeling with Statecharts," Computer, July 1997, pp. 31-42.
[29]
J. Rumbaugh I. Jacobson and G. Booch, The Unified Modeling Language Reference Manual, Addison Wesley Longman, Reading, Mass., 1999.
[30]
I. Jacobson, Object-Oriented Software Engineering: A Use Case Driven Approach, ACM Press/Addison-Wesley, Reading, Mass., 1992.

Cited By

View all
  • (2019)Method for Detecting Error in Design of Virtual Environment2019 10th IEEE International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications (IDAACS)10.1109/IDAACS.2019.8924338(947-952)Online publication date: 18-Sep-2019
  • (2016)Scenario-based programming for mobile applicationsProceedings of the International Conference on Mobile Software Engineering and Systems10.1145/2897073.2897080(161-172)Online publication date: 14-May-2016
  • (2014)Scenario-based programming: reducing the cognitive load, fostering abstract thinkingCompanion Proceedings of the 36th International Conference on Software Engineering10.1145/2591062.2591167(311-320)Online publication date: 31-May-2014
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Computer
Computer  Volume 34, Issue 1
January 2001
96 pages

Publisher

IEEE Computer Society Press

Washington, DC, United States

Publication History

Published: 01 January 2001

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2019)Method for Detecting Error in Design of Virtual Environment2019 10th IEEE International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications (IDAACS)10.1109/IDAACS.2019.8924338(947-952)Online publication date: 18-Sep-2019
  • (2016)Scenario-based programming for mobile applicationsProceedings of the International Conference on Mobile Software Engineering and Systems10.1145/2897073.2897080(161-172)Online publication date: 14-May-2016
  • (2014)Scenario-based programming: reducing the cognitive load, fostering abstract thinkingCompanion Proceedings of the 36th International Conference on Software Engineering10.1145/2591062.2591167(311-320)Online publication date: 31-May-2014
  • (2013)Counter play-out: executing unrealizable scenario-based specificationsProceedings of the 2013 International Conference on Software Engineering10.5555/2486788.2486821(242-251)Online publication date: 18-May-2013
  • (2012)Behavioral programmingCommunications of the ACM10.1145/2209249.220927055:7(90-100)Online publication date: 1-Jul-2012
  • (2012)Polymorphic scenario-based specification modelsSoftware and Systems Modeling (SoSyM)10.1007/s10270-010-0168-611:3(327-345)Online publication date: 1-Jul-2012
  • (2011)Code generation for UML 2 activity diagramsProceedings of the 7th European conference on Modelling foundations and applications10.5555/2023522.2023543(205-220)Online publication date: 6-Jun-2011
  • (2011)A Compiler for Multimodal ScenariosACM Transactions on Software Engineering and Methodology10.1145/2000799.200080420:4(1-41)Online publication date: 1-Sep-2011
  • (2010)Scenario-based and value-based specification miningProceedings of the 25th IEEE/ACM International Conference on Automated Software Engineering10.1145/1858996.1859081(387-396)Online publication date: 20-Sep-2010
  • (2008)Object composition in scenario-based programmingProceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering10.5555/1792838.1792868(301-316)Online publication date: 29-Mar-2008
  • Show More Cited By

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media