five

Does Every Computer Scientist Need to Know Formal Methods?

收藏
DataCite Commons2024-06-11 更新2025-04-16 收录
下载链接:
http://dataverse.jpl.nasa.gov/citation?persistentId=doi:10.48577/jpl.SAUETH
下载链接
链接失效反馈
官方服务:
资源简介:
Computer science and, in particular, the science of data, programs, software and cyber-physical systems can be understood as the “engineering discipline of logic”. We start from 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.” It would be wrong to conclude that formal methods need not be an integral part of a computer science curriculum. Just as not all graduates will need databases either, but it is still important to have a basic understanding of how data is stored and managed efficiently. No engineer should be ignorant of the foundations of their subject and the formal methods based on these. Even if, much of the time, it is not necessary to go back to the foundations explicitly, the understanding of these foundations still constitutes the solid base upon which engineers practice their craft. In this paper, we aim to highlight why every computer scientist needs to know 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. Since integrating formal methods into the computer science curriculum is not a straight-forward process, we explore the additional question: what are the trade-offs between one dedicated knowledge area of formal methods versus having formal methods scattered across all knowledge areas? Computer science, namely the ability to solve problems while designing software and software-intensive systems, consists of forming and understanding formally what is required, followed by the development of a formalized solution in a programming language. Therefore, formalization is inherent in computer science.
提供机构:
Root
创建时间:
2024-06-09
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作