现代软件工程(第一讲)现代软件工程概述.ppt
《现代软件工程(第一讲)现代软件工程概述.ppt》由会员分享,可在线阅读,更多相关《现代软件工程(第一讲)现代软件工程概述.ppt(39页珍藏版)》请在第壹文秘上搜索。
1、现代软件工程课程概述2023年3月29日2提纲一、软件工程的体系二、教学侧重点三、为什么偏重于软件工程管理四、软件工程技术的发展五、教学内容组织六、教学方法七、参考资料2023年3月29日3一、软件工程的体系l软件工程:以工程化的原理、原则和方法进行软件开发,以期解决当时出现的“软件危机”。l软件危机:大型软件开发成本高;开发过程不易控制;软件开发工作量估计困难;软件质量低;软件项目失败率高,错误率高;无法判断大型系统能否正常工作;软件维护任务重等。2023年3月29日4一、软件工程的体系l软件工程技术: 1、软件开发模型:软件开发全过程中系统的开发、运行和维护所实施的全部过程(PDCA)、活
2、动、任务的结构框架。(what) 2、软件开发方法:采用类似于工程的原理和原则进行软件开发。(how) 3、软件开发工具:实现方法的自动或半自动的软件支撑环境。(CASE)2023年3月29日5一、软件工程的体系l软件过程管理 1、软件产品和过程的质量度量 2、项目计划与管理(包括风险管理) 3、软件过程改进与评估(SPICE) 工程技术解决的是开发效率问题;而过程管理解决的是开发质量问题。2023年3月29日6一、软件工程的体系l为什么需要软件工程?当你遇到一个新领域的问题而不知道该如何下手时;当你在解决复杂问题的过程中感觉到杂乱无章、力不从心时;当你面对一个充满个性的开发团队而不知如何协调
3、时;当你感觉到开发效率低下、开发质量始终是你的心头之患时.2023年3月29日7二、教学侧重点l本科生教学侧重点:1、软件工程的概念2、软件生命周期3、软件开发模型4、软件开发方法5、软件开发工具6、基本的项目管理知识2023年3月29日8二、教学侧重点l研究生教学侧重点:1、对软件开发技术的寻根索源;2、软件质量3、软件度量4、软件过程及项目管理5、SPICE/CMM6、新型软件工程技术(基于软件体系结构的开发方法、面向对象建模、分布式部件对象技术、软件复用技术等)2023年3月29日9三、为什么偏重于软件工程管理3.1 软件企业的特殊性3.2 我国软件企业的现状3.3 印度软件企业的现状3
4、.4 我国与印度软件企业的差距分析3.5 重视软件工程管理的必要性2023年3月29日103.1 软件企业的特殊性l软件的复杂性和各模块间的相互依赖性是其他的产品所无法比拟的。所有的模块以及模块间的连接环节必须是100%的正确,不能像硬件那样允许出现一定范围的偏差。想象一下:如果没有好的管理,软件的架构会显得混乱,软件的开发过程会是杂乱无章的。2023年3月29日113.1 软件企业的特殊性l软件作为产品,是用人的大脑生产出来的,不是机器制造出来的,因而,软件过程对人的依赖性极大。除去采用好的方法和工具等技术外,软件的质量极大地依赖于人。(人的创造性极具个性化)工程制造业影响质量的5要素:人、
5、机器、原料、方法、环境。人占20%。软件工程管理就是要为人提供好的方法和工具以减轻人的压力,提高效率;通过过程管理技术尽量减少人的低级错误,减少过程对于人的依赖程度。2023年3月29日123.2 我国软件企业的现状l从上世纪70年代至今,始终处于落后于国际的位置。lCMM5-摩托罗拉中国软件中心;CMM3有联想软件、东软、托普软件等,大部分企业在向CMM2努力。lCMM3是软件企业迈向国际化的门槛。2023年3月29日133.2 我国软件企业的现状lWhy?规模化和系统化不够。规模化:软件企业无法形成规模,大多数企业都是从小型软件开发干起来的,当软件企业达到一定规模时,管理工作跟不上,无法形
6、成规模效应。系统化:软件是一种商品,只有系统地控制产品的质量、开发时间、开发成本才能使商品走入市场、走向国际。2023年3月29日143.3 印度软件企业的现状l根据印度国家软件和服务企业协会的数据:最近5年印度软件产业的累计增长率达到了令人惊奇的52%,软件出口累计增长率超过55%。l印度年软件产业产值2010年达到600亿美元。l印度软件产业从业人员40万人。l2000多家软件企业中,400家通过ISO9000,300多家软件公司通过了CMM认证。2023年3月29日153.3 印度软件企业的现状l一个现象:一个印度人到美国登记住宿,接待员问:“你是从印度来吗?”“是的”,“那你一定是个软
7、件专家”。l以前呢?舞蛇者l公众对印度软件的肯定来自于质量。其成功当然还来自于:良好的英语、低廉的人力成本。2023年3月29日163.3 印度软件企业的现状l国内从业人员到印度的感受:流程重于项目QC独立于研发部门,专门检查研发部门的开发流程是不是按照流程走,如果QC觉得流程不对,会报告上层人员,项目可能会因此而停止。所谓的项目经理一般是从编码人员升上来的,并不是不懂技术,一般至少有4年的工作经验。2023年3月29日173.3 印度软件企业的现状项目经理就是制定开发计划,负责协调,填写各种表格。所有的东西(包括草稿)都有文档。详细设计文档要求达到只有这个文档就可以编码的程度,一般写文档的时
8、间为60%,编码时间极少。有各种详细的review,组内的、组间的、客户的等。计划很详细,的确能达到小时级别,但是实际情况还是误差比较大,所以也有加班。2023年3月29日183.4 我国与印度软件企业的差距分析lExample:软件中需要一个列表,用来表示处理的事务。该列表在业务繁忙的时候将变得很大。l我国从业人员:用双向链表(先编码后分析)。l印度从业人员:开一个大的数组,不用链表。(先分析后编码)lWhy?小型机的512MB内存足够,数组访问方便、效率高。2023年3月29日193.4 我国与印度软件企业的差距分析l软件教育水平比较:印度软件人员面对同样的问题有惊人相似的解决方法和程序结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 现代 软件工程 第一 概述