大学计算机基础第6章-软件工程

上传人:宝路 文档编号:46986373 上传时间:2018-06-29 格式:PPT 页数:53 大小:711.92KB
返回 下载 相关 举报
大学计算机基础第6章-软件工程_第1页
第1页 / 共53页
大学计算机基础第6章-软件工程_第2页
第2页 / 共53页
大学计算机基础第6章-软件工程_第3页
第3页 / 共53页
大学计算机基础第6章-软件工程_第4页
第4页 / 共53页
大学计算机基础第6章-软件工程_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《大学计算机基础第6章-软件工程》由会员分享,可在线阅读,更多相关《大学计算机基础第6章-软件工程(53页珍藏版)》请在金锄头文库上搜索。

1、第六章 软件工程朱雪峰大学计算机基础课程组中国石油大学(北京)计算机科学与技术系Tel: 89733006(O)Date16.1 软件工程的基本概念n什么是软件?软件=程序+数据+文档程序:指令序列;数据:程序所处理的内容;文档:记录开发、维护和使用过程的资料。Date26.1 软件工程的基本概念n由此可见,软件由两部分组成:一是机器可执行的程序和数据;二是与软件开发、运行、维护、使用相关的文档。Date36.1 软件工程的基本概念n软件的分类系统软件:操作系统UNIX等;应用软件:办公软件OFFICE等;支撑软件:测试软件LOADRUNNER等;Date46.1 软件工程的基本概念n软件危机

2、(主要针对大型复杂软件的开发)软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。经典案例:IBM S/360操作系统(失败)Date56.1 软件工程的基本概念n概括来说,软件危机包含下述两方面问题:如何开发软件,以满足对软件日益增长的需求如何维护数量不断膨胀的已有软件。Date66.1 软件工程的基本概念n软件危机产生的原因客观原因:软件系统复杂度越来越高;主观原因:缺乏管理和规范的开发方法Date76.1 软件工程的基本概念n软件工程为了解决软件危机;1968年西德召开的NATO会议上首次提出。Date86.1 软件工程的基本概念n软件工程1993年IEEE的定义:“软件工

3、程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;研究中提到的途径。”Date96.1 软件工程的基本概念n软件工程的三要素软件工程的层次Date106.1 软件工程的基本概念n软件工程的三要素:方法、工具和过程,其中:方法是完成软件工程项目的技术手段 ;工具支持软件的开发、管理、文档生成 ;过程支持软件开发的各个环节的控制、管理 。Date116.1 软件工程的基本概念n软件生命周期Date126.1 软件工程的基本概念n软件生命周期软件定义时期n问题定义、可行性研究、需求分析软件开发时期n总体设计、详细设计、编码和单元、综合测试软件维护时期Date

4、136.1 软件工程的基本概念n软件工程分为:传统软件工程面向对象软件工程形式化方法Date146.2 结构化分析方法n结构化方法包括:结构化分析结构化设计结构化实现结构化测试Date156.2 结构化分析方法n需求分析-什么是软件需求需求的定义(IEEE,1997)n1、用户解决问题或达到目标所需的条件或能力n2、系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力n3、一种上面1或2所描述的条件或文档说明Date166.2 结构化分析方法n需求分析需求分析作为软件生命周期的第一个阶段,其需求分析作为软件生命周期的第一个阶段,其重要性越来越突出,到重要性越来越突出,到2

5、020世纪世纪8080年代中期,逐年代中期,逐步形成了步形成了软件工程的子领域软件工程的子领域需求工程。需求工程。Date176.2 结构化分析方法n需求分析目前,关于需求工程的国际会议RE(IEEE International Requirements Engineering Conference)已成为软件工程领域级别比较高的国际会议。Date186.2 结构化分析方法n需求分析需求分析的目的,是得出系统要“做什么”,而不是“怎么做”,即描述系统能够完成哪些功能。这方面的内容称为功能性需求。近来,人们对于软件产品产品质量如可维护性、可用性、可移植性以及效率等方面的要求越来越高,这方面的需求

6、称为非功能性需求。Date196.2 结构化分析方法n需求分析阶段的工作:需求获取需求分析编写需求规格说明书需求评审Date206.2 结构化分析方法n结构化分析方法结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。Date216.2 结构化分析方法n结构化分析的常用工具数据流图和数据字典判定表判定树Date226.2 结构化分析方法n数据流图数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。Date236.2 结构化分析方法n数据流图数据流图中的主要图形元素与说明如下:n 加工(转换):输入数

7、据经加工变换产生输出。n 数据流:沿箭头方向传送数据的通道,一般在旁边标注数据流名。n 存储文件(数据源):表示处理过程中存 放各种数据的文件。Date246.2 结构化分析方法n数据流图建立数据流图的步骤如下:n第1步,由外向里:先画系统的输入输出,然后画系统的内部。n第2步,自顶向下:顺序完成顶层、中间层、底层数据流图。n第3步,逐层分解。Date256.2 结构化分析方法n某企业销售管理系统的功能为:接受顾客的订单,检验订单,若库存有货,进行供货处理,即修改库存,给仓库开备货单,并且将订单留底;若库存量不足,将缺货订单登入缺货记录。根据缺货记录进行缺货统计,将缺货通知单发给采购部门,以便

8、采购。根据采购部门发来的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进行供货处理。根据留底的订单进行销售统计,打印统计表给经理。Date266.2 结构化分析方法顶层数据流图Date276.2 结构化分析方法0层数据流图Date286.2 结构化分析方法n数据字典作用:对数据流图中出现的被命名的图形元素的确切解释。通常数据字典包含的信息有:名称、别名、何处使用/如何使用、内容描述、补充信息等。 Date296.2 结构化分析方法n数据字典(例子)存折户名所号账户开户日性质(印密)1 存取行 50之后,户名、所号、账户、性质、印密、存取行等信息需要进一步定义。 Date306.2

9、结构化分析方法n判定树使用判定树进行描述时,应先从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。Date316.2 结构化分析方法n假设某航空公司规定,乘客可以免费托运重量不超过30kg的行李。当行李重量超过30kg时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。Date326.2 结构化分析方法n判定树Date336.2 结构化分析方法n判定表当数据流图中的加

10、工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。 Date346.2 结构化分析方法国内乘客国内乘客头头 等等 舱舱残疾乘客残疾乘客行李行李 30kg30kg免费免费(W-30)*2(W-30)*2(W-30)*3(W-30)*3(W-30)*4(W-30)*4(W-30)*6(W-30)*6(W-30)*8(W-30)*8(W-30)*12(W-30)*12T TT TT TF FT TT TT TT TT TT T T TT TT TT T F FF FF FF FF FF FF FF FF FF FF FF FF FF FF

11、 FF FF FF FF F Date356.2 结构化分析方法n软件需求规格说明书作用是:便于用户、开发人员进行理解和交流。反映出用户问题的结构,可以作为软件开发工作的基础和依据。作为确认测试和验收的依据。Date366.3 结构化设计方法n软件设计的基本概念抽象信息隐蔽模块化模块独立性:内聚与耦合Date376.3 结构化设计方法n概要设计(主要任务)软件体系结构设计(确定模块及其间关系)数据结构及数据库设计编写概要设计文档概要设计文档评审Date386.3 结构化设计方法n面向数据流的设计方法变换型事务型Date396.3 结构化设计方法n变换型Date406.3 结构化设计方法n事务型

12、Date416.3 结构化设计方法n详细设计任务:确定模块的算法和数据结构工具:n流程图nN-S图nPAD图Date426.3 结构化设计方法n流程图Date436.3 结构化设计方法nN-S图Date446.3 结构化设计方法nPAD图Date456.4 软件测试n2011年11月3日凌晨,“天宫一号”与“神州八号”成功交会对接,中国由此成为第三个掌握空间飞行器对接技术的国家。背后:软件系统可靠性靠什么保证?答案:软件测试Date466.4 软件测试n为什么需要软件测试1996年6月4日,欧洲空间局的阿丽亚娜火箭,发射后37秒爆炸。损失6亿美元原因分析:ADA语言编写的一段程序,将一个64位

13、浮点整数转换为16位有符号整数时,产生溢出,导致系统惯性参考系统完全崩溃。Date476.4 软件测试n软件测试的目的?证明程序正确?(No)尽可能多地找出程序中的错误?(Yes)Date486.4 软件测试n软件测试方法黑盒测试法白盒测试法Date496.4 软件测试n黑盒测试法等价类划分边界值分析因果图Date506.4 软件测试n白盒测试(逻辑覆盖)语句覆盖判定覆盖条件覆盖判定/条件覆盖条件组合覆盖Date516.4 软件测试n软件测试工作划分为单元测试集成测试确认测试系统测试平行运行Date526.4 软件测试n软件测试学习网站:http:/n软件测试工具LOADRUNNERWINRUNNERTestDirectorQTPDate53

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号