Skip to main content

2018 | OriginalPaper | Buchkapitel

Toward Scenario-Based Algorithmics

verfasst von : David Harel, Assaf Marron

Erschienen in: Adventures Between Lower Bounds and Higher Altitudes

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

We propose an alternative approach to the classical way of specifying algorithms, inspired by the scenario-based paradigm for reactive systems. Rather than being presented as a carefully ordered sequence of instructions, an algorithm is formalized as an unordered collection of rules or scenarios, specifying actions that must or must not be taken when certain conditions hold or after certain sequences of events. A successful implementation of such a methodology, which can be aligned with a natural language specification, can have many advantages, including naturalness, comprehensibility and incrementality. We believe that our approach can also accelerate the acquisition of problem-solving and analytical skills by children and students. This is because by writing (and reading) computer programs written in this way, people would have access to a broad base of instructions on how to solve problems, stated and organized in a way that can be readily understood and used in practice also by humans. We describe the principles of the approach, scenario-based algorithmics (SBA), provide some examples, and compare it to other techniques for algorithm specification and to human algorithmic or computational thinking.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
In [17], Juraj Hromkovič quotes Max Planck: “Science is an innerly compact entity. Its division into different subject areas is conditioned not only by the essence of the matter but, first and foremost, by the limited capability of human beings in the process of getting insight.” To this profound observation by a giant, may we modestly add that perhaps such a division might also be helpful to humans’ effort to understand ever-more-refined concepts and entities, algorithms included.
 
2
Those that prevent horses from being distracted or alarmed.
 
Literatur
1.
Zurück zum Zitat Aho, A.V., Hopcroft, J.E., Ullman, J.D.: Data Structures and Algorithms. Addison-Wesley, Reading (1983)MATH Aho, A.V., Hopcroft, J.E., Ullman, J.D.: Data Structures and Algorithms. Addison-Wesley, Reading (1983)MATH
2.
Zurück zum Zitat Alexandron, G., Armoni, M., Gordon, M., Harel, D.: Scenario-based programming: reducing the cognitive load, fostering abstract thinking. In: Proceedings of the 36th International Conference on Software Engineering (ICSE), pp. 311–320 (2014) Alexandron, G., Armoni, M., Gordon, M., Harel, D.: Scenario-based programming: reducing the cognitive load, fostering abstract thinking. In: Proceedings of the 36th International Conference on Software Engineering (ICSE), pp. 311–320 (2014)
4.
Zurück zum Zitat Damm, W., Harel, D.: LSCs: breathing life into message sequence charts. J. Form. Methods Syst. Des. 19, 45–80 (2001)CrossRef Damm, W., Harel, D.: LSCs: breathing life into message sequence charts. J. Form. Methods Syst. Des. 19, 45–80 (2001)CrossRef
5.
Zurück zum Zitat Denning, P.J.: Remaining trouble spots with computational thinking. Commun. ACM 60(6), 33–39 (2017)CrossRef Denning, P.J.: Remaining trouble spots with computational thinking. Commun. ACM 60(6), 33–39 (2017)CrossRef
6.
Zurück zum Zitat Gordon, M., Marron, A., Meerbaum-Salant, O.: Spaghetti for the main course? Observations on the naturalness of scenario-based programming. In: Proceedings of the 17th Conference on Innovation and Technology in Computer Science Education (ITICSE), pp. 198–203 (2012) Gordon, M., Marron, A., Meerbaum-Salant, O.: Spaghetti for the main course? Observations on the naturalness of scenario-based programming. In: Proceedings of the 17th Conference on Innovation and Technology in Computer Science Education (ITICSE), pp. 198–203 (2012)
8.
Zurück zum Zitat Greenyer, J., Gritzner, D., Katz, G., Marron A.: Scenario-based modeling and synthesis for reactive systems with dynamic system structure in ScenarioTools. In Proceedings of the MoDELS 2016 Demo and Poster Sessions, Co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MoDELS). CEUR (2016) Greenyer, J., Gritzner, D., Katz, G., Marron A.: Scenario-based modeling and synthesis for reactive systems with dynamic system structure in ScenarioTools. In Proceedings of the MoDELS 2016 Demo and Poster Sessions, Co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MoDELS). CEUR (2016)
9.
10.
Zurück zum Zitat Harel, D.: Can programming be liberated, period? IEEE Comput. 41(1), 28–37 (2008)CrossRef Harel, D.: Can programming be liberated, period? IEEE Comput. 41(1), 28–37 (2008)CrossRef
11.
Zurück zum Zitat Harel, D., Katz, G., Lampert, R., Marron, A., Weiss, G.: On the succinctness of idioms for concurrent programming. In: CONCUR, pp. 85–99 (2015) Harel, D., Katz, G., Lampert, R., Marron, A., Weiss, G.: On the succinctness of idioms for concurrent programming. In: CONCUR, pp. 85–99 (2015)
12.
Zurück zum Zitat Harel, D., Katz, G., Marelly, R., Marron, A.: An initial wise development environment for behavioral models. In: Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 600–612 (2016) Harel, D., Katz, G., Marelly, R., Marron, A.: An initial wise development environment for behavioral models. In: Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 600–612 (2016)
15.
Zurück zum Zitat Harel, D., Feldman, Y.A.: Algorithmics: The Spirit of Computing. Pearson Education, London (2004)MATH Harel, D., Feldman, Y.A.: Algorithmics: The Spirit of Computing. Pearson Education, London (2004)MATH
16.
Zurück zum Zitat Harel, D., Marron, A., Weiss, G.: Behavioral programming. Commun. ACM 55(7), 90–100 (2012)CrossRef Harel, D., Marron, A., Weiss, G.: Behavioral programming. Commun. ACM 55(7), 90–100 (2012)CrossRef
18.
Zurück zum Zitat Kafai, Y.B.: From computational thinking to computational participation in K-12 education. Commun. ACM 59(8), 26–27 (2016)CrossRef Kafai, Y.B.: From computational thinking to computational participation in K-12 education. Commun. ACM 59(8), 26–27 (2016)CrossRef
19.
Zurück zum Zitat Marron, A., Weiss, A., Wiener, G.: A decentralized approach for programming interactive applications with JavaScript and Blockly. In: SPLASH Workshop on Programming Systems, Languages, and Applications based on Agents, Actors, and Decentralized Control (AGERE!) (2012) Marron, A., Weiss, A., Wiener, G.: A decentralized approach for programming interactive applications with JavaScript and Blockly. In: SPLASH Workshop on Programming Systems, Languages, and Applications based on Agents, Actors, and Decentralized Control (AGERE!) (2012)
20.
Zurück zum Zitat Wing, J.M.: Computational thinking. Commun. ACM 49(3), 33–35 (2006)CrossRef Wing, J.M.: Computational thinking. Commun. ACM 49(3), 33–35 (2006)CrossRef
Metadaten
Titel
Toward Scenario-Based Algorithmics
verfasst von
David Harel
Assaf Marron
Copyright-Jahr
2018
DOI
https://doi.org/10.1007/978-3-319-98355-4_32

Premium Partner