A Model-Driven Approach to Teaching Concurrency

被引:11
|
作者
Carro, Manuel [1 ]
Herranz, Angel [1 ]
Marino, Julio [1 ]
机构
[1] Univ Politecn Madrid, E-28040 Madrid, Spain
来源
关键词
Design; Languages; Verification; Model-driven engineering; teaching; concurrency; formal specifications; correct-by-construction; coding idiom; !text type='Java']Java[!/text; Ada95;
D O I
10.1145/2414446.2414451
中图分类号
G40 [教育学];
学科分类号
040101 ; 120403 ;
摘要
We present an undergraduate course on concurrent programming where formal models are used in different stages of the learning process. The main practical difference with other approaches lies in the fact that the ability to develop correct concurrent software relies on a systematic transformation of formal models of inter-process interaction (so called shared resources), rather than on the specific constructs of some programming language. Using a resource-centric rather than a language-centric approach has some benefits for both teachers and students. Besides the obvious advantage of being independent of the programming language, the models help in the early validation of concurrent software design, provide students and teachers with a lingua franca that greatly simplifies communication at the classroom and during supervision, and help in the automatic generation of tests for the practical assignments. This method has been in use, with slight variations, for some 15 years, surviving changes in the programming language and course length. In this article, we describe the components and structure of the current incarnation of the course-which uses Java as target language-and some tools used to support our method. We provide a detailed description of the different outcomes that the model-driven approach delivers (validation of the initial design, automatic generation of tests, and mechanical generation of code) from a teaching perspective. A critical discussion on the perceived advantages and risks of our approach follows, including some proposals on how these risks can be minimized. We include a statistical analysis to show that our method has a positive impact in the student ability to understand concurrency and to generate correct code.
引用
收藏
页数:19
相关论文
共 50 条
  • [21] CrossMDA: a model-driven approach for aspect management
    Alves, Marcelo Pitanga
    Pires, Paulo F.
    Delicato, Flavia C.
    Campos, Maria Luiza M.
    [J]. JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2008, 14 (08) : 1314 - U1
  • [22] A Model-Driven Approach for Wearable Systems Developments
    Ruiz-Zafra, Angel
    Noguera, Manuel
    Benghazi, Kawtar
    Ochoa, Sergio F.
    [J]. INTERNATIONAL JOURNAL OF DISTRIBUTED SENSOR NETWORKS, 2015,
  • [23] Comparison of the Two-Hemisphere Model-Driven Approach to Other Methods for Model-Driven Software Development
    Nikiforova, Oksana
    Kozacenko, Ludmila
    Ahilcenoka, Dace
    Gusarovs, Konstantins
    Ungurs, Dainis
    Jukss, Maris
    [J]. APPLIED COMPUTER SYSTEMS, 2015, 18 (01) : 5 - 14
  • [24] A Model-Driven Approach to Evolve Recommender Systems
    Oliveira, Yuri
    Silveira, Leonardo
    Souza, Cidcley
    [J]. WEBMEDIA'18: PROCEEDINGS OF THE 24TH BRAZILIAN SYMPOSIUM ON MULTIMEDIA AND THE WEB, 2018, : 168 - 171
  • [25] A Model-driven Approach for Monitoring in Service Cloud
    Wang Zhuo-hao
    Wang Xi-Cheng
    Qi Kai-yuan
    Zhao Zhuo-feng
    [J]. MEASURING TECHNOLOGY AND MECHATRONICS AUTOMATION, PTS 1 AND 2, 2011, 48-49 : 43 - +
  • [26] A model-driven approach to ensure trust in the IoT
    Ferraris, Davide
    Fernandez-Gago, Carmen
    Lopez, Javier
    [J]. HUMAN-CENTRIC COMPUTING AND INFORMATION SCIENCES, 2020, 10 (01)
  • [27] A model-driven approach to rapid service introduction
    Cochiniwala, M
    Shim, HS
    Wullert, JR
    [J]. INTEGRATED NETWORK MANAGEMENT IX: MANAGING NEW NETWORKED WORLDS, 2005, : 659 - 672
  • [28] A Model-Driven Approach for Evaluating Traceability Information
    Buender, Hendrik
    Rieger, Christoph
    Kuchen, Herbert
    [J]. THIRD INTERNATIONAL CONFERENCE ON ADVANCES AND TRENDS IN SOFTWARE ENGINEERING (SOFTENG 2017), 2017, : 59 - 65
  • [29] Model-Driven Approach to XML Schema Evolution
    Necasky, Martin
    Mlynkova, Irena
    Klimek, Jakub
    [J]. ON THE MOVE TO MEANINGFUL INTERNET SYSTEMS: OTM 2011 WORKSHOPS, 2011, 7046 : 514 - 523
  • [30] A Model-Driven Approach for Conducting Simulation Experiments
    Wilsdorf, Pia
    Heller, Jakob
    Budde, Kai
    Zimmermann, Julius
    Warnke, Tom
    Haubelt, Christian
    Timmermann, Dirk
    van Rienen, Ursula
    Uhrmacher, Adelinde M.
    [J]. APPLIED SCIENCES-BASEL, 2022, 12 (16):