[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

Teaching formal methods in the context of software engineering

Published: 25 June 2009 Publication History

Abstract

Formal methods were developed to provide systematic and rigorous techniques for software development, and they must be taught in the context of software engineering. In this paper, we discuss the importance of such a teaching paradigm and describe several specific techniques for teaching formal methods. These techniques have been tested over the last fifteen years in our formal methods education programs for undergraduate and graduate students at universities as well as practitioners at companies. We also present a curriculum to systematically introduce formal methods to students at university and a successful program of teaching formal methods to industry. Our experience shows that students can gain confidence in formal methods only when they learn their clear benefits in the context of software engineering.

References

[1]
S. Liu. Formal Engineering for Industrial Software Development Using the SOFL Method. Springer-Verlag, ISBN 3-540-20602-7, 2004.
[2]
S. Liu, A.J. Offutt, C. Ho-Stuart, Y. Sun, and M. Ohba. SOFL: A Formal Engineering Methodology for Industrial Applications. IEEE Transactions on Software Engineering, 24(1):337--344, January 1998. Special Issue on Formal Methods.
[3]
B.P. Collins and C.J. Nix. The Use of Software Engineering, Including the Z notation, in the Development of CICS. Quality Assurance, 14(2):103--110, September 1988.
[4]
D.L. Parnas. Inspection of Safety-Critical Software Using Program-Function Tables. In D.M. Hoffman and D.M. Weiss, editors, Software Fundamentals: Collected Papers by David L. Parnas, pages 371--382. Addison Wesley, 2001.
[5]
S. Sahara. An Experience of Applying Formal Method on a Large Business Application (in Japanese). In Proceedings of 2004 Symposium of Science and Technology on System Verification, pages 93--100, Osaka, Japan, Feb. 4-6 2004. National Institute of Advanced Industrial Science and Technology (AIST).
[6]
D.L. Parnas. Education for Computing Professionals. Computer, 23(1):17--22, 1990.
[7]
C.B. Jones. Systematic Software Development Using VDM. 2nd edition, Prentice Hall, 1990.
[8]
C. Morgan. Programming from Specifications. 2nd edition, Prentice-Hall, 1994.

Cited By

View all
  • (2023)How Do We Read Formal Claims? Eye-Tracking and the Cognition of Proofs about AlgorithmsProceedings of the 45th International Conference on Software Engineering10.1109/ICSE48619.2023.00029(208-220)Online publication date: 14-May-2023
  • (2023)Security requirements specification by formal methods: a research metadata analysisMultimedia Tools and Applications10.1007/s11042-023-17218-483:14(41847-41866)Online publication date: 13-Oct-2023
  • (2022)Teaching Formal Methods to Undergraduate Students Using MaudeRewriting Logic and Its Applications10.1007/978-3-031-12441-9_5(85-110)Online publication date: 2-Apr-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGCSE Bulletin
ACM SIGCSE Bulletin  Volume 41, Issue 2
June 2009
166 pages
ISSN:0097-8418
DOI:10.1145/1595453
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 June 2009
Published in SIGCSE Volume 41, Issue 2

Check for updates

Author Tags

  1. education
  2. formal engineering methods
  3. formal methods
  4. software engineering
  5. teaching methods

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)15
  • Downloads (Last 6 weeks)1
Reflects downloads up to 01 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)How Do We Read Formal Claims? Eye-Tracking and the Cognition of Proofs about AlgorithmsProceedings of the 45th International Conference on Software Engineering10.1109/ICSE48619.2023.00029(208-220)Online publication date: 14-May-2023
  • (2023)Security requirements specification by formal methods: a research metadata analysisMultimedia Tools and Applications10.1007/s11042-023-17218-483:14(41847-41866)Online publication date: 13-Oct-2023
  • (2022)Teaching Formal Methods to Undergraduate Students Using MaudeRewriting Logic and Its Applications10.1007/978-3-031-12441-9_5(85-110)Online publication date: 2-Apr-2022
  • (2021)The Role of Formalism in System RequirementsACM Computing Surveys10.1145/344897554:5(1-36)Online publication date: 25-May-2021
  • (2021)SIT-SE: A Specification-Based Incremental Testing Method With Symbolic ExecutionIEEE Transactions on Reliability10.1109/TR.2021.307871470:3(1053-1070)Online publication date: Sep-2021
  • (2021)Modeling and Verification of Web Services Composition Using CWB-NC Tool2021 2nd International Conference for Emerging Technology (INCET)10.1109/INCET51464.2021.9456275(1-6)Online publication date: 21-May-2021
  • (2021)Teaching Correctness-by-Construction and Post-hoc Verification – The Online ExperienceFormal Methods Teaching10.1007/978-3-030-91550-6_8(101-116)Online publication date: 21-Nov-2021
  • (2021)Teaching Formal Methods to Software Engineers through Collaborative Learning (Short Paper)Formal Methods Teaching10.1007/978-3-030-91550-6_6(75-83)Online publication date: 21-Nov-2021
  • (2021)On Education and Training in Formal Methods for Industrial Critical SystemsFormal Methods for Industrial Critical Systems10.1007/978-3-030-85248-1_6(85-103)Online publication date: 19-Aug-2021
  • (2021)Teaching Formal Methods for Fun Using MaudeFormal Methods – Fun for Everybody10.1007/978-3-030-71374-4_3(58-91)Online publication date: 11-Mar-2021
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media