软件工程导论(第一讲)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
User Computer Late 1950’s: Computer became cheaper and more common
High level languages were developed easier
User Programmer Computer
2020/8/17
Introduction to Software Engineering
张海藩编著,软件工程导论(第四版),清华大学出版社 (2007)
2020/8/17
Introduction to Software Engineering
3
参考书目
实用软件工程 (第二版)
郑人杰 殷人昆 陶永雷 清华大学出版社(2001)
2020/8/17
软件工程 -实践者的研究方 法(英文版 第四版)
主观原因:
和软件开发与维护的方法不当有关
错误的积累效应和放大效应
变化出现的时期
2020/8/17
Introduction to Software Engineering
Biblioteka Baidu12
解决问题的想法:
§1.软件危机
Better management
Different team organizations
Better languages & tools
少学习,多思考?!
埃德蒙·费希尔——美国华盛顿大学教授、1992 年诺贝尔医学奖得主,2004年11月10日在同济大学 演讲台上,他充满激情地表达了自己的科学理念和 对中国学生的期望:“少学习,多思考”。他认为 科学的本质和艺术是一样的,需要直觉和想象力。 而把太多信息塞入大脑,会让学生没有时间放松, 没有时间发展想象力。“牛顿本来是一个没有什么 特别之处的学生。但在剑桥大学休学的两年里,静 下心来充分发展想象力,于是产生了伟大的发现。”
Roger S. Pressman
机械工业出版社
Introduction to Software Engineering
4
参考书目
Fundamentals of Software Engineering Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli Prentice-Hall, Inc. (1991)
2020/8/17
Introduction to Software Engineering
6
课程讲授和考核方法 课堂讲授、自学与分组实践相结合
学期结束前提交软件工程研发课题 《患者监护系统》实践报告
2020/8/17
Introduction to Software Engineering
7
课程教学大纲
2020/8/17
Introduction to Software Engineering
8
第一章 软件危机与软件工程
§1.软件危机 (Software Crisis)
In the early days:
“Software” = “Place a sequence of instructions together to get the computer to do something useful”.
⑶ 软件可靠性(reliability)缺少度量的标准,质量 无法保证。
⑷ 软件难以维护(maintainability) 不易升级(evolvability)
2020/8/17
Introduction to Software Engineering
11
§1.软件危机
问题症结所在:
客观原因:
软件本身的特点-逻辑部件
Software Engineering , Theory and Practice Shari Lawrence Pfleeger , Prentice-Hall, Inc.(1998)
2020/8/17
Introduction to Software Engineering
5
参考书目
Object-Oriented Programming Using C++ , Ira Pohl Benjamin/Cummings Publishing Company , Inc. (1993)
9
§1.软件危机
Early 1960s:
Very few large software projects were done by some experts.
Middle to late 1960s:
Truly large software systems were attempted.
个体作坊式
Uniform coding conventions
必须意识到:“软件” 编程,它有自己的
生命周期 (life cycle)。大型软件系统的开发与其它 工程项目如建造桥梁、制造飞机、轮船等的开发 是同理的。
“软件工程”(Software Engineering)
NATO Conference , Garmisch , Germany , 1968.
2020/8/17
Introduction to Software Engineering
13
§1.软件危机
• 据07年国外媒体报道,微软高级工程师Eric Traut透露, 微软将对Windows Vista之后的下一代操作系统Windows 7 进行“瘦身”。
• 与前几代 操作系统相比,Windows Vista的体积相当庞大。 Windows Vista包含了5000万行代码,比XP多出了40%。 此外,Windows Vista还集成了19500个驱动程序,而 Windows XP只集成了10000个驱动。
Software Crisis!!!!
2020/8/17
Introduction to Software Engineering
10
§1.软件危机
问题的主要表现:
⑴ 项目没有被很好地理解;计划不周,最终导 致进度拖延。
⑵ 没有充分的文档资料(documentation) 人与人的交流比写程序困难得多。
除了学习扎实的知识,更重要的是要留点时间 去梦想。
2020/8/17
Introduction to Software Engineering
1
软件工程
Software Engineering
夏顺仁
Tel:87951703,13336196169
E-mail : srxia@zju.edu.cn
教材
High level languages were developed easier
User Programmer Computer
2020/8/17
Introduction to Software Engineering
张海藩编著,软件工程导论(第四版),清华大学出版社 (2007)
2020/8/17
Introduction to Software Engineering
3
参考书目
实用软件工程 (第二版)
郑人杰 殷人昆 陶永雷 清华大学出版社(2001)
2020/8/17
软件工程 -实践者的研究方 法(英文版 第四版)
主观原因:
和软件开发与维护的方法不当有关
错误的积累效应和放大效应
变化出现的时期
2020/8/17
Introduction to Software Engineering
Biblioteka Baidu12
解决问题的想法:
§1.软件危机
Better management
Different team organizations
Better languages & tools
少学习,多思考?!
埃德蒙·费希尔——美国华盛顿大学教授、1992 年诺贝尔医学奖得主,2004年11月10日在同济大学 演讲台上,他充满激情地表达了自己的科学理念和 对中国学生的期望:“少学习,多思考”。他认为 科学的本质和艺术是一样的,需要直觉和想象力。 而把太多信息塞入大脑,会让学生没有时间放松, 没有时间发展想象力。“牛顿本来是一个没有什么 特别之处的学生。但在剑桥大学休学的两年里,静 下心来充分发展想象力,于是产生了伟大的发现。”
Roger S. Pressman
机械工业出版社
Introduction to Software Engineering
4
参考书目
Fundamentals of Software Engineering Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli Prentice-Hall, Inc. (1991)
2020/8/17
Introduction to Software Engineering
6
课程讲授和考核方法 课堂讲授、自学与分组实践相结合
学期结束前提交软件工程研发课题 《患者监护系统》实践报告
2020/8/17
Introduction to Software Engineering
7
课程教学大纲
2020/8/17
Introduction to Software Engineering
8
第一章 软件危机与软件工程
§1.软件危机 (Software Crisis)
In the early days:
“Software” = “Place a sequence of instructions together to get the computer to do something useful”.
⑶ 软件可靠性(reliability)缺少度量的标准,质量 无法保证。
⑷ 软件难以维护(maintainability) 不易升级(evolvability)
2020/8/17
Introduction to Software Engineering
11
§1.软件危机
问题症结所在:
客观原因:
软件本身的特点-逻辑部件
Software Engineering , Theory and Practice Shari Lawrence Pfleeger , Prentice-Hall, Inc.(1998)
2020/8/17
Introduction to Software Engineering
5
参考书目
Object-Oriented Programming Using C++ , Ira Pohl Benjamin/Cummings Publishing Company , Inc. (1993)
9
§1.软件危机
Early 1960s:
Very few large software projects were done by some experts.
Middle to late 1960s:
Truly large software systems were attempted.
个体作坊式
Uniform coding conventions
必须意识到:“软件” 编程,它有自己的
生命周期 (life cycle)。大型软件系统的开发与其它 工程项目如建造桥梁、制造飞机、轮船等的开发 是同理的。
“软件工程”(Software Engineering)
NATO Conference , Garmisch , Germany , 1968.
2020/8/17
Introduction to Software Engineering
13
§1.软件危机
• 据07年国外媒体报道,微软高级工程师Eric Traut透露, 微软将对Windows Vista之后的下一代操作系统Windows 7 进行“瘦身”。
• 与前几代 操作系统相比,Windows Vista的体积相当庞大。 Windows Vista包含了5000万行代码,比XP多出了40%。 此外,Windows Vista还集成了19500个驱动程序,而 Windows XP只集成了10000个驱动。
Software Crisis!!!!
2020/8/17
Introduction to Software Engineering
10
§1.软件危机
问题的主要表现:
⑴ 项目没有被很好地理解;计划不周,最终导 致进度拖延。
⑵ 没有充分的文档资料(documentation) 人与人的交流比写程序困难得多。
除了学习扎实的知识,更重要的是要留点时间 去梦想。
2020/8/17
Introduction to Software Engineering
1
软件工程
Software Engineering
夏顺仁
Tel:87951703,13336196169
E-mail : srxia@zju.edu.cn
教材