现代软件工程(第一讲)现代软件工程概述



《现代软件工程(第一讲)现代软件工程概述》由会员分享,可在线阅读,更多相关《现代软件工程(第一讲)现代软件工程概述(39页珍藏版)》请在装配图网上搜索。
1、,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,现代软件工程课程概述,2024年11月28日,2,提纲,一、软件工程的体系,二、教学侧重点,三、为什么偏重于软件工程管理,四、软件工程技术的发展,五、教学内容组织,六、教学方法,七、参考资料,2024年11月28日,3,一、软件工程的体系,软件工程:以工程化的原理、原则和方法进行软件开发,以期解决当时出现的“软件危机”。,软件危机:大型软件开发成本高;开发过程不易控制;软件开发工作量估计困难;软件质量低;软件项目失败率高,错误率高;无法判断大型系统能否正常工作;软件维护任务重等。,2024年11月28
2、日,4,一、软件工程的体系,软件工程技术:,1,、软件开发模型:软件开发全过程中系统的开发、运行和维护所实施的全部过程(,PDCA,)、活动、任务的结构框架。(,what,),2,、软件开发方法:采用类似于工程的原理和原则进行软件开发。(,how,),3,、软件开发工具:实现方法的自动或半自动的软件支撑环境。(,CASE,),2024年11月28日,5,一、软件工程的体系,软件过程管理,1,、软件产品和过程的质量度量,2,、项目计划与管理(包括风险管理),3,、软件过程改进与评估(,SPICE,),工程技术解决的是开发效率问题;而过程管理解决的是开发质量问题,。,2024年11月28日,6,一
3、、软件工程的体系,为什么需要软件工程?,当你遇到一个新领域的问题而不知道该如何下手时;,当你在解决复杂问题的过程中感觉到杂乱无章、力不从心时;,当你面对一个充满个性的开发团队而不知如何协调时;,当你感觉到开发效率低下、开发质量始终是你的心头之患时,.,2024年11月28日,7,二、教学侧重点,本科生教学侧重点:,1,、软件工程的概念,2,、软件生命周期,3,、软件开发模型,4,、软件开发方法,5,、软件开发工具,6,、基本的项目管理知识,2024年11月28日,8,二、教学侧重点,研究生教学侧重点:,1,、对软件开发技术的寻根索源;,2,、软件质量,3,、软件度量,4,、软件过程及项目管理,
4、5,、,SPICE/CMM,6,、新型软件工程技术(基于软件体系结构的开发方法、面向对象建模、分布式部件对象技术、软件复用技术等),2024年11月28日,9,三、为什么偏重于软件工程管理,3.1,软件企业的特殊性,3.2,我国软件企业的现状,3.3,印度软件企业的现状,3.4,我国与印度软件企业的差距分析,3.5,重视软件工程管理的必要性,2024年11月28日,10,3.1,软件企业的特殊性,软件的复杂性和各模块间的相互依赖性是其他的产品所无法比拟的。所有的模块以及模块间的连接环节必须是,100%,的正确,不能像硬件那样允许出现一定范围的偏差。,想象一下:如果没有好的管理,软件的架构会显得
5、混乱,软件的开发过程会是杂乱无章的。,2024年11月28日,11,3.1,软件企业的特殊性,软件作为产品,是用人的大脑生产出来的,不是机器制造出来的,因而,软件过程对人的依赖性极大。除去采用好的方法和工具等技术外,软件的质量极大地依赖于人。(人的创造性极具个性化),工程制造业影响质量的,5,要素:人、机器、原料、方法、环境。人占,20%,。,软件工程管理就是要为人提供好的方法和工具以减轻人的压力,提高效率;通过过程管理技术尽量减少人的低级错误,减少过程对于人的依赖程度。,2024年11月28日,12,3.2,我国软件企业的现状,从上世纪,70,年代至今,始终处于落后于国际的位置。,CMM5-
6、,摩托罗拉中国软件中心;,CMM3,有联想软件、东软、托普软件等,大部分企业在向,CMM2,努力。,CMM3,是软件企业迈向国际化的门槛。,2024年11月28日,13,3.2,我国软件企业的现状,Why?,规模化和系统化不够。,规模化,:软件企业无法形成规模,大多数企业都是从小型软件开发干起来的,当软件企业达到一定规模时,管理工作跟不上,无法形成规模效应。,系统化,:软件是一种商品,只有系统地控制产品的质量、开发时间、开发成本才能使商品走入市场、走向国际。,2024年11月28日,14,3.3,印度软件企业的现状,根据印度国家软件和服务企业协会的数据:最近,5,年印度软件产业的累计增长率达到
7、了令人惊奇的,52%,,软件出口累计增长率超过,55%,。,印度年软件产业产值,2010,年达到,600,亿美元。,印度软件产业从业人员,40,万人。,2000,多家软件企业中,,400,家通过,ISO9000,,,300,多家软件公司通过了,CMM,认证。,2024年11月28日,15,3.3,印度软件企业的现状,一个现象:一个印度人到美国登记住宿,接待员问:“你是从印度来吗?”“是的”,“那你一定是个软件专家”。,以前呢?舞蛇者,公众对印度软件的肯定来自于质量。其成功当然还来自于:良好的英语、低廉的人力成本。,2024年11月28日,16,3.3,印度软件企业的现状,国内从业人员到印度的感
8、受:,流程重于项目,QC,独立于研发部门,专门检查研发部门的开发流程是不是按照流程走,如果,QC,觉得流程不对,会报告上层人员,项目可能会因此而停止。,所谓的项目经理一般是从编码人员升上来的,并不是不懂技术,一般至少有,4,年的工作经验。,2024年11月28日,17,3.3,印度软件企业的现状,项目经理就是制定开发计划,负责协调,填写各种表格。,所有的东西(包括草稿)都有文档。,详细设计文档要求达到只有这个文档就可以编码的程度,一般写文档的时间为,60%,,编码时间极少。,有各种详细的,review,,组内的、组间的、客户的等。,计划很详细,的确能达到小时级别,但是实际情况还是误差比较大,所
9、以也有加班。,2024年11月28日,18,3.4,我国与印度软件企业的差距分析,Example:,软件中需要一个列表,用来表示处理的事务。该列表在业务繁忙的时候将变得很大。,我国从业人员:用双向链表(先编码后分析)。,印度从业人员:开一个大的数组,不用链表。(先分析后编码),Why?,小型机的,512MB,内存足够,数组访问方便、效率高。,2024年11月28日,19,3.4,我国与印度软件企业的差距分析,软件教育水平比较:印度软件人员面对同样的问题有惊人相似的解决方法和程序结构。而我国软件人员更重视的是解决问题的个人技巧,重视创造性地发挥(每个人都觉得别人做的软件不好,自己需要延续别人的工
10、作时总是将别人贬损一通,然后重新开发,殊不知:程序员只要具备拧好螺丝钉的能力就可以了。),2024年11月28日,20,3.4,我国与印度软件企业的差距分析,许多公司的项目经理不需要懂技术,有些甚至就是,MBA,或者是领域专家,而不是编码专家,却能够领导一大群素质良好的程序员把工作做好,没有内部不团结的情况。国内的项目经理如果不懂技术则后果是可想而知的(内部不团结,技术人员与管理人员做对,=,项目经理必须在技术上能够压服下属)。,2024年11月28日,21,3.4,我国与印度软件企业的差距分析,印度的编程人员的流动率高达,30%,!可以想见他们的文档工作做得多么地好,他们的产品不依赖于任何一
11、个人,谁都可以立即辞职,产品的开发还是会正常进行。,国内:老板害怕总工,技术骨干拥兵自重,抗拒管理。任何制定好的计划都有可能被技术人员推翻或者跟你消极怠工。,2024年11月28日,22,3.4,我国与印度软件企业的差距分析,印度的开发计划能够做到小时级别。如果项目经理没有上班,手下的员工可能不知道干什么。一般的计划都定到天。(来自于良好的度量),国内能够将计划定到月就不错了,而且给出的月度计划要么不可能实现,要么就可能被取消,开发人员一般会出现前松后紧的局面。,2024年11月28日,23,3.5,重视软件工程管理的必要性,印度软件公司十分重视软件开发过程的管理及与其相关理论与标准的发展。认
12、为编码是十分简单的工作,高中生就可以完成。,国内软件公司更重视个人技能的发挥,忽视了过程的管理。,国内的个人创造性应该在有限的范围内得到发挥。,在满足国内软件市场需求的同时,拓展国际软件市场,增加软件出口量。,2024年11月28日,24,四、软件工程技术的发展,新型软件开发模型,如:,RUP,(,Rational Unified Process,)、,XP,(,eXtrem Programming,)。,新的软件开发方法:面向对象软件开发方法。,新的软件开发工具:,UML(Unified Modeling Language),、,ROSE(Rational Object-oriented S
13、oftware Engineering),2024年11月28日,25,四、软件工程技术的发展,以软件体系结构为中心的面向对象软件开发过程,提炼特定应用领域的稳,定需求和易变需求,建,立可复用的领域模型。,在特定领域模型的基础,上提炼特定应用领域的,软件体系结构。,进行体系,结构设计,分配系统功能,到相应的构建,和连接件上,存放设计模式、对象或,其它可重用的设计构件。,设计构件和,连接件,复用,/,存储,2024年11月28日,26,四、软件工程技术的发展,分布式部件对象技术,Microsoft COM/DCOM/COM+,OMG CORBA(Common Object Request Bro
14、ker Architecture),Sun Microsystem JavaBean,2024年11月28日,27,四、软件工程技术的发展,软件复用技术,Pattern(analysis,design,process),Framework,2024年11月28日,28,五、教学内容组织,第一章 软件工程现状及发展,1.1,软件发展现状,1.2,软件危机,1.3,软件工程及发展历程,1.4,软件工程框架,1.5,软件发展趋势及特点,2024年11月28日,29,五、教学内容组织,第二章 软件生命周期过程,2.1,软件生命周期,2.2,基本过程,2.3,支持过程,2.4,组织过程,2024年11月
15、28日,30,五、教学内容组织,第三章 软件过程改进的,CMM/PSP/TSP,模型,3.1 CMM,产生背景,3.2 CMM,内容及管理透视,3.3 CMM,组织结构,3.4 CMM,应用,3.5 CMM,与,ISO9001,3.6 PSP,过程组织结构,3.7 TSP,过程及角色,2024年11月28日,31,五、教学内容组织,第四章 软件质量,4.1,软件质量概念,4.2,软件质量属性,4.3,软件质量度量,4.4,软件质量保证,4.5,质量管理和质量保证的实施,2024年11月28日,32,五、教学内容组织,第五章 软件项目管理,5.1,项目管理过程,5.2,风险管理,5.3,软件质量
16、和效率度量,5.4,软件项目成本和进度估算,5.5,软件项目进度安排,5.6,项目组织结构设计,5.7,项目过程监控,2024年11月28日,33,五、教学内容组织,第六章 面向对象建模语言和过程,6.1,面向对象建模思想,6.2,面向对象建模方法,6.3,统一建模语言,UML,6.4,统一建模过程,RUP,6.5,轻量级建模过程,XP,2024年11月28日,34,五、教学内容组织,第七章 软件体系结构,7.1,软件体系结构概念,7.2,软件体系结构的研究意义,7.3,软件体系结构的研究内容,7.4,基本软件体系结构风格,7.5,基于体系结构的软件开发模式,2024年11月28日,35,五、教学内容组织,第八章 分布式部件对象技术,8.1,分布式网络计算,8.2,基于部件的技术,8.3,部件模型,8.4,互操作性,8.5,部件对象技术的发展,2024年11月28日,36,五、教学内容组织,第九章 软件复用之模式和框架,9.1,软件复用类型,9.2,模式复用,9.3,设计模式,9.4,过程模式和分析模式,9.5,框架复用,9.6,模式和框架的关系,2024年11月28日,37,五、教学
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 专题党课讲稿:以高质量党建保障国有企业高质量发展
- 廉政党课讲稿材料:坚决打好反腐败斗争攻坚战持久战总体战涵养风清气正的政治生态
- 在新录用选调生公务员座谈会上和基层单位调研座谈会上的发言材料
- 总工会关于2025年维护劳动领域政治安全的工作汇报材料
- 基层党建工作交流研讨会上的讲话发言材料
- 粮食和物资储备学习教育工作部署会上的讲话发言材料
- 市工业园区、市直机关单位、市纪委监委2025年工作计划
- 检察院政治部关于2025年工作计划
- 办公室主任2025年现实表现材料
- 2025年~村农村保洁员规范管理工作方案
- 在深入贯彻中央8项规定精神学习教育工作部署会议上的讲话发言材料4篇
- 开展深入贯彻规定精神学习教育动员部署会上的讲话发言材料3篇
- 在司法党组中心学习组学习会上的发言材料
- 国企党委关于推动基层党建与生产经营深度融合工作情况的报告材料
- 副书记在2025年工作务虚会上的发言材料2篇