四十年软件工程故事2008 年 5 月 14~16 日,在德国迷人的小镇Garmisch ,举办了软件工程四十年纪念会议, Peter Naur 、Brian Randell 、M
Douglas McIlroy、Albert Endres 、Luigi Dadda等 40 年前软件工程会议的关键人物重聚旧地
40 年前的 1968年,正是在此地举行的NATO (北约)科技委员会会议上,“软件工程 ”作为正式的术语被确定下来,标志着一个新学科的开始
Peter Naur和 Brian Randell主编的会议报告中这样写道:“我们特意选择 ‘软件工程 ’这个颇具争议性的词,是为了暗示这样一种意见:软件的生产有必要建立在某些理论基础和实践指导之上——在工程学的某些成效卓著的分支中,这些理论基础和实践指导早已成为了一种传统
”软件工程这个学科还很年轻,Peter Naur和 Brian Randell今天依然健在
作为著名的编程语言归约BNF 范式中的 N,Peter Naur因设计和定义了ALGOL 60而在2005 年获得图灵奖
因 IBM System360的工作于 1999 年获得图灵奖的Fred Brooks在《人月神话》的结尾比较了化学工程和软件工程
他认为:软件系统可能是人类所创造的最错综复杂的事物,软件工程还很年轻,需要继续探索和尝试
这四十年的过程就是探索和尝试的过程,让我们来细细品味其中的科学精神之美
软件工程是什么软件工程的定义有很多版本,比较权威的是IEEE 给出的定义:(1)将系统化的、规范的、可量化的方法应用于软件的开发、运行和维护,即,将工程应用于软件
(2 )在( 1 )中所述方法的研究
所以,软件工程远没有想象中那么高大神秘,它研究的就是我们日常开发软件的工作方式
“程序员 ”这三个字本就属于软件工程的范围
关于软件工程和计算机科学的区别