软件系统工程课件

上传人:xia****ian 文档编号:168043238 上传时间:2022-11-07 格式:DOC 页数:4 大小:31KB
收藏 版权申诉 举报 下载
软件系统工程课件_第1页
第1页 / 共4页
软件系统工程课件_第2页
第2页 / 共4页
软件系统工程课件_第3页
第3页 / 共4页
资源描述:

《软件系统工程课件》由会员分享,可在线阅读,更多相关《软件系统工程课件(4页珍藏版)》请在装配图网上搜索。

1、第一章 软件工程学概述1.1软件危机 软件危机介绍 1968年由NATO(北大西洋公约组织)在德国Garmish召开的学术会议上,Fritz Bauer首先提出了“软件工程”概念。 软件技术面临的问题:复杂性和生产率 如:Windows95有1000万行代码 Windows2000有5000万行代码 Exchange2000和Windows2000开发人员结构Exchange2000Windows2000项目经理25人约250人开发人员140人约1700人测试人员350人约3200人 软件危机的主要特征:软件开发周期大大超过规定日期;软件开发成本严重超标;软件质量难于保证。 衡量一个软件成功的

2、标准在于:用户在用;用户可很容易地完成要做的事。 失败的根本原因:开发人员写出的东西达不到用户的要求(人的问题。技术问题)。 处在十字路口的中国软件产业: 主权大国必须建立基于自主技术的、完整的软件产业体系。 软件本国提供果:中国1/3左右,美国97% “印度模式”还是“中国模式” 软件人才结构不合理,缺乏中高级软件人才;此外,软件人员缺乏软件工程的概念也是问题之一。 产生软件危机的原因 在软件开发和维护的过程中存在这么多严重问题,原因主要在于:一方面与软件本身的特点有关;另一方面也是软件开发与维护的方法不正确有关。 消除软件危机的途径 为了解决软件危机,既要有技术措施(方法和工具),又要有必

3、要的组织管理措施。软件工程是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门新兴学科。1.2软件工程 软件工程的介绍 软件工程的定义 Fritz Bauer在NATO会议上给出的定义:软件工程是为了经济地获得可靠的和能在实际机器上高效运行的软件而确立和使用的健全的工程原理(方法)。 IEEEIEE83给出的软件工程定义:“软件工程是开发、运行、维护和修复软件的系统方法。” IEEEIEE93给出了一个更加综合的定义:“将系统化的、规范的、可度的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。” 综合以上得软件工程的定义为:软件工程是应用计算机科学、数学及管理科学等原理

4、开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。 软件工程是一门交叉学科 软件乘车的主要研究内容:1、软件开发技术:软件开发方法学;软件开发过程;软件工具和软件工程环境。2、软件工程管理:软件管理;软件经济学;软件心里学。软件工程所包括的内容不是一成不变的,随着人们对软件系统的研制开发和生产的理解。应该用发展的眼光来看待它。 软件工程的本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是用具有一种文化背景的人的思

5、维去取代具有另一种文化背景的人的工作方式。 软件工程的基本原理 1、用分阶段的生命周期计划严格管理;2、坚持进行阶段评审;3、实行严格的产品控制;4、采用现代程序设计技术;5、结果应能清楚地审查;6、开发小组的人员应该少而精;7、承认不断改进软件工程实践的必要性。 软件工程方法学 软件生命周期全过程中使用的一整套技术方法的集合称为方法学(methodology),也称为范型(paradigm)。 软件工程-一种层次化技术:工具-方法-过程-质量-特点 软件工程三个要素:方法 工具 过程软件工程与一般工程的差异:软件是逻辑产品而不是实物产品;软件的功能依懒于硬件和软件的运行环境以及人们对它的操作

6、;软件设计的复杂性;软件特征(1、功能的多样性;2、实现的多样性;3、能见度低;4、软件结构合理性差);智力密集及知识产权保护。软件工程知识结构:软件需求;软件设计;软件构造;软件测试;软件维护;软件配置管理;软件工程管理;软件工程过程;软件工程工具和方法;软件质量。“软件工程”课程与其他软件专业课的区别:1、立足于系统的整体;讲授系统分析、系统设计、测试及维护的理论和方法;3、构筑一个软件系统,实践软件开发全过程。“软件工程”课程教学与实践的目标:1、转变对软件的认识:程序-系统;2、转变思维定式:程序员-系统工程师(系统分析员);3、工程化训练。“一个好的工业,应有一套良好的标准来配套”

7、软件的工业化生产过程应具备的特点:1、明确的工作步骤;2、详细具体的规范化文档;3、明确的质量评价标准。软件工程技术的两个明显特点:软件产品的标准化-软件开发过程的标准化1.3软件生命周期 软件产品或软件系统从设计、投入使用到被淘汰的全过程。软件生存期的阶段划分:1、可行性研究与计划;2、需求分析;3、总体设计;4、详细设计;5、实现;6、集成测试;7、确认测试;8、使用和维护。阶段关键问题结束标准问题定义问题是什么关于规模和目标的报告书可行性研究有可行的解吗?系统的高层逻辑模型:数据流图,成本/效益分析需求分析系统必须做什么?系统的逻辑模型:数据流图、数据字典、算法描述总体设计应该如何解决这

8、个问题?可行的解法:系统流程图、成本/效益分析推荐的系统结构:层次图或结构图详细设计怎样具体实现这个系统编码规格说明:HIPO图或PDL编码和单元测试正确的程序模块源程序清单:单元测试方案和结果综合测试符合要求的软件综合测试方案和结果:完整一致的软件配置维护持久地满足用户需要的软件完整准确的维护记录软件工作的范围:只考虑编写程序-涉及整个软件生存周期1.4软件过程 软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件开发模型是软件开发全部过程、活动和任务的结构框架,它能直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策;软件开发模型也常称为

9、:软件过程模型;软件生存期模型;软件工程范型。瀑布模型按照传统瀑布模型开发软件的特点:阶段间具有顺序性和依懒性;推迟实现的观点;每个阶段必须完成规定的文档,每个阶段结束前完成文档审查及早改正错误。原型模型(快速成型模型) 增量模型(递增模型) 先完成一个系统子集的开发,再按同样的开发步骤增加功能(系统子集),如此递增下去直至满足全部系统需求。 系统的总体设计在初始子集设计阶段就应作出设想。 螺旋模型 产品维护项目产品增强项目-新产品开发项目-概念开发项目下载地址:第二章 可行性研究第三章 需求分析第四章 形式化说明技术第五章 总体设计第六章 详细设计第七章 实现第八章 维护第九章 面向对象方法学引论第十章 面向对象分析第十一章 面向对象设计第十二章 面向对象实现第十三章 软件项目管理

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!