软件工程学概述精品文稿.ppt
《软件工程学概述精品文稿.ppt》由会员分享,可在线阅读,更多相关《软件工程学概述精品文稿.ppt(81页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程学概述第1页,本讲稿共81页课程的要求、目标及特点 要求 有一定的编程基础 自学能力 目标 了解软件工程学基本原理、规范、方法,提高对软件项目的分析设计能力 开阔视野,建立项目概念,思考职业规划,增强未来竞争力 特点 理论性强,抽象,适合高年级学习 以概要性介绍为主 需要在实践中提高能力第2页,本讲稿共81页课程的主要内容 软件工程过程的主要活动,如需求分析,设计,测试 软件开发方法学 传统方法学 面向对象方法学 项目管理知识 实践环节,基于实际的应用,完成设计、分析多看书,多编程,多交流,积累经验第3页,本讲稿共81页考核方法 笔试 出勤 大作业 软件设计报告 学期中间布置,三周时间
2、完成 1-3人一组 根据要求,进行需求分析、系统设计 制作PPT,组内代表在课堂上讲解5-10分钟 学期末上交PPT的打印稿和电子版第4页,本讲稿共81页 参考书软件工程实践者的研究方法 Roger S.Pressman 机械工业出版社 软件工程 Ian Sommerville 机械工业出版社第5页,本讲稿共81页参考书 软件工程过程 Pierre N.Robillard 清华大学出版社 第6页,本讲稿共81页其他资源 网上搜索,知名网站,信息的权威性 外文书每章后面的“进一步阅读”所列的内容 学校图书馆中外文网络数据库第7页,本讲稿共81页软件发展的历史 早期,上世纪60年代中期之前 编写者
3、和使用者往往是同一个人 第二个时期,上世纪60年代中期-70年代中期 软件作坊,个体软件开发方法,生产软件产品 出现软件危机 1968年北大西洋公约组织(NATO)在联邦德国召开国际会议,讨论软件危机问题,正式提出“软件工程”这个词,一门新兴的工程学科就此诞生。第三个时期,上世纪70年代中期-80年代中期 结构化程序设计 第四个时期,上世纪80年代中期以后 面向对象程序设计第8页,本讲稿共81页软件危机 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,包括:费用过高 严重超期 失败率高 可靠性差 难以维护第9页,本讲稿共81页1.1 软件危机 大型软件,50,000行高级语言
4、代码 阿波罗登月计划的软件有1000万行代码 IBM 360 大型机操作系统开发人员最多时达到1000人,从1963年到1966年花费4年时间完成,总计耗费约5000人年。经反复修改,仍有上千条错误 1965年-1970年,美国范登堡空间试验基地多次发射火箭失败,绝大部分因为程序错误软件的复杂性超出了个人能力控制的范围第10页,本讲稿共81页1.1.1 软件危机的表现 软件开发的成本和进度估计很不准确 用户对已完成的软件不满意 软件质量不可靠 软件维护困难或不可维护 缺少适当的文档 软件成本占计算机系统总成本的比例逐年上升 20世纪60年代初占10-20%60年代中期占50%70年代初占80%
5、以上 软件生产率提高速度缓慢第11页,本讲稿共81页1.1.2 软件危机产生的原因 软件本身的特点 缺乏可见性,完成前不易衡量其好坏 复杂性随规模增加呈指数上升,无法保证质量 用户的原因 需求不明或易变,认为软件可以随意改动 开发和管理人员的原因 不重视文档,只重视编码 开发随意性大,维护困难第12页,本讲稿共81页图1.1 引入同一变动付出的代价随时间变化的趋势1.1.3 消除软件危机的途径要有技术措施,也要有管理措施第13页,本讲稿共81页1.2 软件工程1.2.1 软件工程的介绍 为了克服软件危机,科学家们从其他产业(如机械制造、建筑等)的工程化生产得到启示,提出了“软件工程”的概念。概
6、括地说,软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。第14页,本讲稿共81页软件工程典型的定义“软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。”该定义不仅指出了软件工程的目标是经济目标是经济地开发出高质量的软件,而且强调了软件工程是一门工程学科,它应该建立并使用完善的工程原理。1993年IEEE(The Institute for Electrical and El
7、ectronic engineers)进一步给出了一个更全面更具体的定义:“软件工程是:(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(2)研究(1)中提到的途径。第15页,本讲稿共81页 软件工程的本质特征:1.软件工程关注大型程序的构造 2.软件工程的中心课题是控制复杂性 3.软件经常变化 4.开发软件的效率非常重要 5.和谐的合作是开发软件的关键 6.软件必须有效地支持它的用户 7.在软件工程领域中是由具有一种文化背景的人 替具有另一种文化背景的人创造产品第16页,本讲稿共81页1.2.2 软件工程的基本原理 1.用分阶段的生命周期计划严格管
8、理(领导干预)2.坚持进行阶段评审(LED屏项目,GPS项目)3.实行严格的产品控制(修改要批准,华为,灯)4.采用现代程序设计技术 5.结果应能清楚的审查 6.开发小组的人员应该少而精(通讯开销)7.承认不断改进软件工程实践的必要性 第17页,本讲稿共81页1.2.3 软件工程方法学 通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学(methodology),也称为范型(paradigm)。软件工程方法学包含3个要素:方法、工具和过程。其中,方法是完成软件开发的各项任务的技术方法,回答“怎样做”的问题;工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;过程是为了获得高
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 工程学 概述 精品 文稿
限制150内