




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章软件工程
-2-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-3-软件工程概念软件工程是在七十年代为了对付应用软件日益增长的复杂程度、漫长的开发周期以及用户对软件产品经常不满意的状况而发展起来的(60年代末出现的软件危机)。软件工程是一类求解软件的工程,它应用计算机科学、数学以及管理科学等原理,借鉴传统工程的原则、方法,创建软件以达到提高质量,降低成本的目的-4-软件生命周期开发软件和生成其它产品一样,周期性地重复一些阶段。软件经过最初的开发并交付使用,会经历使用和修改的交替过程,软件最终会由于“过时”而被淘汰-5-开发过程模型在软件的生命周期中,开发过程又可以分解为四个阶段:分析、设计、实现和测试开发过程有多种模型,最常见的两种:瀑布模型和增量模型。-6-瀑布模型结束一个阶段的工作,再开展下一个阶段优点:阶段任务明确,下一阶段开始前之前的各阶段已经完成;缺点:难以定位问题;难以控制风险-7-增量模型开发者首先完成整个系统的简化版本,在第二个版本中增加细节;逐步增加功能,直到要求的全部功能被加入。在每一次递增过程,都要经历分析、设计、实现、测试阶段。-8-增量模型-9-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-10-分析阶段整个开发过程始于分析阶段,该阶段生成规格说明文档,说明软件要做什么,而没有说明如何去做。两种方法:基于过程式语言的面向过程分析、基于面向对象语言的面向对象分析。-11-1、面向过程分析实体关系图:用于数据库设计状态图:用于当系统中的实体状态在响应事件时将会改变的情况下。-12-面向过程分析数据流图:显示系统中的数据流动-13-2、面向对象分析用例图:用例图显示了用户与系统间的交互,用例图包含:系统、用例、参与者、关系。-14-面向对象分析类图:通过类图描述系统中涉及的实体以及它们之间的关联。状态图:同面向过程分析状态图。-15-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-16-设计阶段设计阶段定义系统怎样完成在分析阶段定义的需求。在设计阶段,系统所有的组成部分都被定义。按照开发语言,区分为面向过程设计与面向对象设计。-17-1、面向过程设计面向过程设计中,整个系统被分解为一组过程或模块,同时设计数据。结构图:说明模块之间的关系。-18-面向过程设计模块化:将大项目分解成小的部分,以便能够理解和处理,模块化时需要关注耦合和内聚。耦合是两个模块互相绑定紧密程度的度量,模块间的耦合必须最小化。松散耦合的模块易于被重用松散耦合模块不容易在相关模块中产生错误修改松散耦合模块时,不会影响到其他模块内聚是程序中处理过程相关紧密程度的度量,模块间的内聚必须最大化。-19-2、面向对象设计面向对象设计中,详细描述类的细节,定义类的属性和方法。-20-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-21-实现阶段在实现阶段,程序员为面向过程设计中的模块编写程序或程序单元;实现面向对象设计的类。语言选择:选择适合的编程语言。-22-软件质量高质量软件系统是一个能满足用户需求、符合组织操作标准、能高效运行的软件。软件质量的度量:-23-1、可操作性可操作性涉及系统的基本操作和用户的感受。准确性效率可靠性安全性及时适用性-24-2、可维护性可维护性以保持系统正常运行并及时更新为参考。改变不能说明软件实现的不好,有可能是外部的因素引起的改变。可变性可修正性:出现故障后修正程序所需时间适应性:适应变动的难易程度可测试性-25-3、可迁移性把数据和(或)系统从一个平台移到另一个平台并重用代码的能力。代码可重用性:编写的函数可以在不同的程序或项目中重用,建立函数库;互操作性:发送数据给其它系统的能力;可移植性:把软件从一个平台转移到另一个平台的能力。-26-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-27-测试阶段测试阶段的目标就是发现错误,应尽可能发现系统中的错误。测试阶段是程序开发过程中非常单调且花费时间的部分。两种测试:白盒测试与黑盒测试。-28-1、白盒测试白盒测试由软件工程师或专门团队负责,他们知道软件的内部结构。测试目标是检查所有部件是否达到设计目标每个模块中的所有独立路径至少被测试1次;所有判断结构的每个分支都被测试;每个循环被测试;所有的数据结构都被测试。-29-基本路径测试基本路径测试使得软件中每条语句至少被执行1次的方法。-30-控制结构测试条件测试:基于模块中的条件,检查是否所有条件都被正确设置。数据流测试:基于通过模块的数据流循环测试:使用测试用例检查循环的正确性。-31-2、黑盒测试黑盒测试在不知道程序内部也不知程序是怎样工作的情况下对程序进行测试,把程序看成黑盒。黑盒测试按照软件应该完成的功能来测试软件。-32-黑盒测试穷尽测试:用输入域中的所有可能值去测试软件复杂软件中,输入域巨大,难以实现随机测试:选择输入域的子集测试;边界值测试:软件常在遇到边界值时发生错误,需要对边界值充分测试。-33-本章内容安排软件生命周期分析阶段设计阶段实现阶段测试阶段文档-34-文档软件的正确使用和有效维护离不开文档。文档是一个持续过程,软件发布后的修改与维护阶段也需要编写文档。软件通常有3种独立的文档:用户文档系统文档技术文档-35-1、用户文档用户文档在传统上称为用户手册,是指导用户正确使用软件包的说明文档。通常包含一个教程以指导用户熟悉软件包的各项特征。好的用户文档能够成为功能强大的营销工具。-36-2、系统文档系统文档定义软件包本身。目的是为了让原始开发人员之外的人能够维护和修改软件包。在系统开发的每个阶段都应该撰写相应的系统文档。-37-不同阶段的系统文档分析阶段文档:记录收集的信息,定义信息的来源。记录定义需求和选用方法时的思路和基本原理。设计阶段文档:最终版本中用到的工具必须记录在文档中,如记录结构图并进行注释说明。-38-不同阶段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 唐山职业技术学院《建筑经济》2023-2024学年第二学期期末试卷
- 扬州环境资源职业技术学院《体育一羽毛球》2023-2024学年第二学期期末试卷
- 漳州科技职业学院《公司战略与风险管理》2023-2024学年第二学期期末试卷
- 辽宁轻工职业学院《数学分析(Ⅱ)》2023-2024学年第一学期期末试卷
- 湖北开放职业学院《体育游戏与创编》2023-2024学年第一学期期末试卷
- 重庆工程学院《高级生物化学Ⅰ》2023-2024学年第二学期期末试卷
- 江苏省常州市新北区2024-2025学年初三下学期第一次阶段测试英语试题含答案
- 山东服装职业学院《科学研究导论及学术前沿进展》2023-2024学年第二学期期末试卷
- 采购合同进度管理重点基础知识点
- 邯郸市高三月教学质量检测英语试题
- 2025年中铁快运股份有限公司招聘(98人)笔试参考题库附带答案详解
- 2025年武汉数学四调试题及答案
- 职业病防护设施与个体防护用品的使用和维护
- 《西方哲学史》第二章-苏格拉底哲学和柏拉图哲学课件
- 水利基本建设财务管理讲义
- 会计学总论知识讲义课件
- 人教版道德与法治八上第三单元勇担社会责任复习课(课件)课件
- 心包积液患者的护理查房ppt
- MSCCirc850船舶防火系统和设备保养检查指南
- 酒店改造工程施工组织方案
- 2022年医疗器械公司年度培训计划及培训记录
评论
0/150
提交评论