Show simple item record

dc.contributor.authorBroy, M
dc.contributor.authorBrucker, A
dc.contributor.authorFantechi, A
dc.contributor.authorGleirscher, M
dc.contributor.authorHavelund, K
dc.contributor.authorKuppe, MA
dc.contributor.authorMendes, A
dc.contributor.authorPlatzer, A
dc.contributor.authorRingert, J
dc.contributor.authorSullivan, A
dc.date.accessioned2024-11-18T10:25:16Z
dc.date.issued2024-06-10
dc.date.updated2024-11-16T16:45:37Z
dc.description.abstractWe focus on the integration of Formal Methods as mandatory theme in any Computer Science University curriculum. In particular, when considering the ACM Curriculum for Computer Science, the inclusion of Formal Methods as a mandatory Knowledge Area needs arguing for why and how does every computer science graduate benefit from such knowledge. We do not agree with the sentence “While there is a belief that formal methods are important and they are growing in importance, we cannot state that every computer science graduate will need to use formal methods in their career.” We argue that formal methods are and have to be an integral part of every computer science curriculum. Just as not all graduates will need to know how to work with databases either, it is still important for students to have a basic understanding of how data is stored and managed efficiently. The same way, students have to understand why and how methods work, what their formal background is, and how they are justified. No engineer should be ignorant of the foundations of their subject and the formal methods based on these. In this paper, we aim to highlight why every computer scientist needs to be familiar with formal methods. We argue that education in formal methods plays a key role by shaping students' programming mindset, fostering an appreciation for underlying principles, and encouraging the practice of thoughtful program design and justification, rather than simply writing programs without reflection and deeper understanding. Since integrating formal methods into the computer science curriculum is not a straightforward process, we explore the additional question: what are the trade-offs between one dedicated knowledge area of formal methods in a computer science curriculum versus having formal methods scattered across all knowledge areas? Solving problems while designing software and software-intensive systems demands an understanding of what is required, followed by a specification and formalizing a solution in a programming language. How to do this systematically and correctly on solid grounds is exactly the supported by Formal Methods.en_GB
dc.identifier.citationPublished online 10 June 2024en_GB
dc.identifier.doihttps://doi.org/10.1145/3670795
dc.identifier.urihttp://hdl.handle.net/10871/138634
dc.identifierORCID: 0000-0002-6355-1200 (Brucker, Achim)
dc.language.isoenen_GB
dc.publisherAssociation for Computing Machinery (ACM)en_GB
dc.rights© 2024 Copyright held by the owner/author(s). Open access. This work is licensed under a Creative Commons Attribution International 4.0 License.en_GB
dc.titleDoes Every Computer Scientist Need to Know Formal Methods?en_GB
dc.typeArticleen_GB
dc.date.available2024-11-18T10:25:16Z
dc.identifier.issn0934-5043
dc.descriptionThis is the author accepted manuscript. The final version is available on open access from ACM via the DOI in this recorden_GB
dc.identifier.eissn1433-299X
dc.identifier.journalFormal Aspects of Computingen_GB
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/en_GB
dcterms.dateAccepted2023-07-01
dcterms.dateSubmitted2023-07-01
rioxxterms.versionAMen_GB
rioxxterms.licenseref.startdate2024-06-10
rioxxterms.typeJournal Article/Reviewen_GB
refterms.dateFCD2024-11-16T16:45:38Z
refterms.versionFCDAM
refterms.dateFOA2024-11-18T10:27:01Z
refterms.panelBen_GB
refterms.dateFirstOnline2024-06-10


Files in this item

This item appears in the following Collection(s)

Show simple item record

© 2024 Copyright held by the owner/author(s). Open access. This work is licensed under a Creative Commons Attribution International 4.0 License.
Except where otherwise noted, this item's licence is described as © 2024 Copyright held by the owner/author(s). Open access. This work is licensed under a Creative Commons Attribution International 4.0 License.