欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    计算机等级考试 二级C 之二 公共基础软件工程.ppt

    • 资源ID:67601141       资源大小:964KB        全文页数:64页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机等级考试 二级C 之二 公共基础软件工程.ppt

    程序设计基础程序设计基础1 1程序设计方法与风格程序设计方法与风格程序设计方法与风格程序设计方法与风格2 2结构化程序设计。结构化程序设计。结构化程序设计。结构化程序设计。3 3面向对象的程序设计方法,对象,方法,属性及继面向对象的程序设计方法,对象,方法,属性及继面向对象的程序设计方法,对象,方法,属性及继面向对象的程序设计方法,对象,方法,属性及继承与多态性。承与多态性。承与多态性。承与多态性。20092009年年3 3月:填空题月:填空题(3 3)符合结构化的三种基本结构是选择结构、循环结构和)符合结构化的三种基本结构是选择结构、循环结构和。顺序结构顺序结构顺序结构顺序结构真题实例真题实例20092009年年9 9月:选择题月:选择题(6 6)下列选项中,不符合结构化程序设计原则的是:)下列选项中,不符合结构化程序设计原则的是:A A)封装性)封装性B B)模块化)模块化C C)逐步求精)逐步求精D D)自顶向下)自顶向下A AB B20092009年年9 9月:填空题月:填空题(2 2)程序流程图中,菱形框表示的是)程序流程图中,菱形框表示的是。选择框选择框选择框选择框 三、软件工程基础三、软件工程基础1 1软件工程基本概念,软件生命周期概念,软件工具与软件工程基本概念,软件生命周期概念,软件工具与软件工程基本概念,软件生命周期概念,软件工具与软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。软件开发环境。软件开发环境。软件开发环境。2 2结构化分析方法,数据流图,数据字典,软件需求规结构化分析方法,数据流图,数据字典,软件需求规结构化分析方法,数据流图,数据字典,软件需求规结构化分析方法,数据流图,数据字典,软件需求规格说明书。格说明书。格说明书。格说明书。3 3结构化设计方法,总体设计与详细设计。结构化设计方法,总体设计与详细设计。结构化设计方法,总体设计与详细设计。结构化设计方法,总体设计与详细设计。4 4软件测试的方法,白盒测试与黑盒测试,测试用例设软件测试的方法,白盒测试与黑盒测试,测试用例设软件测试的方法,白盒测试与黑盒测试,测试用例设软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。计,软件测试的实施,单元测试、集成测试和系统测试。计,软件测试的实施,单元测试、集成测试和系统测试。计,软件测试的实施,单元测试、集成测试和系统测试。5 5程序的调试,静态调试与动态调试。程序的调试,静态调试与动态调试。程序的调试,静态调试与动态调试。程序的调试,静态调试与动态调试。软软 件件 概概 述述软件软件软件软件是计算机系统中与硬件相互依存的另一部分是计算机系统中与硬件相互依存的另一部分是计算机系统中与硬件相互依存的另一部分是计算机系统中与硬件相互依存的另一部分 是包括程序,数据及其相关文档的完整集合。是包括程序,数据及其相关文档的完整集合。是包括程序,数据及其相关文档的完整集合。是包括程序,数据及其相关文档的完整集合。软件的概念软件的概念软件的概念软件的概念 程序程序程序程序是按事先设计的功能和性能要求执行的是按事先设计的功能和性能要求执行的是按事先设计的功能和性能要求执行的是按事先设计的功能和性能要求执行的指令序列指令序列指令序列指令序列 数据数据数据数据是使程序能正常操纵信息的数据结构是使程序能正常操纵信息的数据结构是使程序能正常操纵信息的数据结构是使程序能正常操纵信息的数据结构 文档文档文档文档是与程序开发,维护和使用有关的图文是与程序开发,维护和使用有关的图文是与程序开发,维护和使用有关的图文是与程序开发,维护和使用有关的图文材料材料材料材料真题实例真题实例20092009年年3 3月:选择题月:选择题(5 5)软件按功能可以分为:应用软件、系统软件和支撑软件。)软件按功能可以分为:应用软件、系统软件和支撑软件。下面属于应用软件的有:下面属于应用软件的有:A A)编译程序)编译程序B B)操作系统)操作系统C C)教务管理系统)教务管理系统D D)汇编程序)汇编程序C CB B20102010年年3 3月:填空题月:填空题(4 4)软件是)软件是、数据和文档的集合。、数据和文档的集合。程序程序程序程序软件开发方法软件开发方法结构化结构化 自顶向下自顶向下自顶向下自顶向下,逐步求精逐步求精逐步求精逐步求精,单入口单入口单入口单入口,单出口单出口单出口单出口,基本原则是基本原则是基本原则是基本原则是抽象和分解抽象和分解抽象和分解抽象和分解围绕处理功能的实现过程来构造软件系统围绕处理功能的实现过程来构造软件系统围绕处理功能的实现过程来构造软件系统围绕处理功能的实现过程来构造软件系统,特别适合于特别适合于特别适合于特别适合于需求能够预先确定的系统开发需求能够预先确定的系统开发需求能够预先确定的系统开发需求能够预先确定的系统开发缺点缺点缺点缺点:大规模或者复杂项目大规模或者复杂项目大规模或者复杂项目大规模或者复杂项目,结构化方法不够适用结构化方法不够适用结构化方法不够适用结构化方法不够适用,难于难于难于难于解决软件复用解决软件复用解决软件复用解决软件复用,难于适应需求变化难于适应需求变化难于适应需求变化难于适应需求变化,软件维护比较复杂软件维护比较复杂软件维护比较复杂软件维护比较复杂.20092009年年9 9月:选择题月:选择题(6 6)下列选项中不属于结构化程序设计原则的是:)下列选项中不属于结构化程序设计原则的是:A A)可封装)可封装B B)自顶向下)自顶向下C C)模块化)模块化D D)逐步求精)逐步求精A A软件开发方法软件开发方法面向对象面向对象 尽可能模拟人类习惯思维方式使描述问题的问题尽可能模拟人类习惯思维方式使描述问题的问题尽可能模拟人类习惯思维方式使描述问题的问题尽可能模拟人类习惯思维方式使描述问题的问题空间与计算机上解决问题的解空间上尽可能一致空间与计算机上解决问题的解空间上尽可能一致空间与计算机上解决问题的解空间上尽可能一致空间与计算机上解决问题的解空间上尽可能一致对象的基本特点:对象的基本特点:对象的基本特点:对象的基本特点:(1 1)标识惟一性;)标识惟一性;)标识惟一性;)标识惟一性;(2 2)分类性;)分类性;)分类性;)分类性;(3 3)多态性;)多态性;)多态性;)多态性;(4 4)封装性;)封装性;)封装性;)封装性;(5 5)模块独立性好。)模块独立性好。)模块独立性好。)模块独立性好。软件的特点软件的特点软件的特点软件的特点 逻辑产品逻辑产品逻辑产品逻辑产品失失效效率率时间时间时间时间占占总总成成本本百百分分比比软件软件硬件硬件磨合调整磨损用坏永不磨损和老化永不磨损和老化永不磨损和老化永不磨损和老化通过通过通过通过“拷贝拷贝拷贝拷贝”进行批量生产进行批量生产进行批量生产进行批量生产规模增大,费用上升规模增大,费用上升规模增大,费用上升规模增大,费用上升 维护维护维护维护 软件开发技术落后软件开发技术落后软件开发技术落后软件开发技术落后时间时间软软件件复复杂杂度度需求增长需求增长技术进步技术进步 近近近近30303030年硬件性能价格比上升年硬件性能价格比上升年硬件性能价格比上升年硬件性能价格比上升101010106 6 6 6软软 件件 概概 述述软软 件件 概概 述述软件开发技术的发展软件开发技术的发展软件开发技术的发展软件开发技术的发展程序设计程序设计程序设计程序设计50605060年代年代年代年代程序系统程序系统程序系统程序系统60706070年代年代年代年代软件工程软件工程软件工程软件工程7070年代至今年代至今年代至今年代至今程序程序程序程序程序及说明书程序及说明书程序及说明书程序及说明书程序、文档、数据程序、文档、数据程序、文档、数据程序、文档、数据设计者本人设计者本人设计者本人设计者本人少数用户少数用户少数用户少数用户市场用户市场用户市场用户市场用户个人个人个人个人开发小组开发小组开发小组开发小组开发小组及大中开发小组及大中开发小组及大中开发小组及大中型软件开发机构型软件开发机构型软件开发机构型软件开发机构个人程序技术个人程序技术个人程序技术个人程序技术 小组技术水平小组技术水平小组技术水平小组技术水平管理水平管理水平管理水平管理水平时时时时 期期期期特特特特 点点点点软件所指软件所指软件所指软件所指需求者需求者需求者需求者开发软件开发软件开发软件开发软件的组织的组织的组织的组织决定质量决定质量决定质量决定质量的因素的因素的因素的因素发挥创造才能发挥创造才能发挥创造才能发挥创造才能的技术领域的技术领域的技术领域的技术领域软件危软件危软件危软件危机机机机由管理水平决由管理水平决由管理水平决由管理水平决定的工程产品定的工程产品定的工程产品定的工程产品 1963 1963年,年,美国。程序中的一点之差导致飞往火星的火箭爆炸美国。程序中的一点之差导致飞往火星的火箭爆炸 IBMIBM公司于公司于6060年代开发年代开发OS/360OS/360系统,问题频出,宣布失败系统,问题频出,宣布失败 Brooks描述研制过程的混乱和困境描述研制过程的混乱和困境 像巨兽在泥潭中作垂死挣扎,挣扎得越猛,泥浆沾得越多,最后,没有一只野兽能逃脱淹没在泥潭中的命运 程序设计就像这样一个泥潭一批程序员在泥潭中挣扎,没有人料到问题竟会这样棘手软件危机软件危机软件危机软件危机软件危机的表现软件危机的表现软件危机的表现软件危机的表现 开发成本和进度难于估计开发成本和进度难于估计开发成本和进度难于估计开发成本和进度难于估计 用户不满意用户不满意用户不满意用户不满意 软件质量被怀疑软件质量被怀疑软件质量被怀疑软件质量被怀疑 缺乏文档缺乏文档缺乏文档缺乏文档 维护困难维护困难维护困难维护困难 软件开发生产率的提高速度与用户需求之间软件开发生产率的提高速度与用户需求之间软件开发生产率的提高速度与用户需求之间软件开发生产率的提高速度与用户需求之间的差距越来越大的差距越来越大的差距越来越大的差距越来越大1.1.缺乏软件开发的经验和有关软件开发数据的积累缺乏软件开发的经验和有关软件开发数据的积累 2.2.软件需求在开发的初期阶段不够明确,或是未能得到软件需求在开发的初期阶段不够明确,或是未能得到确切的表达确切的表达3.3.开发过程没有统一、公认的方法论和规范进行指导,开发过程没有统一、公认的方法论和规范进行指导,开发人员自行其事开发人员自行其事4.4.未能在测试阶段充分做好检测工作。未能在测试阶段充分做好检测工作。软件危机产生的原因软件危机产生的原因软件危机产生的原因软件危机产生的原因指软件开发和维护中遇到的一系列严重问题软件工程软件工程软件工程软件工程软件工程软件工程三要素三要素三要素三要素方法、工具和过程方法、工具和过程方法、工具和过程方法、工具和过程软件工程软件工程软件工程软件工程的核心的核心的核心的核心把软件当成一个工程产品来处理把软件当成一个工程产品来处理把软件当成一个工程产品来处理把软件当成一个工程产品来处理软件工程软件工程软件工程软件工程过程过程过程过程把输入转化为输出的一再组相关的资源和活动把输入转化为输出的一再组相关的资源和活动把输入转化为输出的一再组相关的资源和活动把输入转化为输出的一再组相关的资源和活动 在软件开发过程中应用工程化原则。在软件开发过程中应用工程化原则。软件工程软件工程软件生存期软件生存期软件生存期软件生存期软件产品的孕育、诞生、成长、成熟、衰亡的生存过程软件产品的孕育、诞生、成长、成熟、衰亡的生存过程软件产品的孕育、诞生、成长、成熟、衰亡的生存过程软件产品的孕育、诞生、成长、成熟、衰亡的生存过程 需求分析软件设计程序编码软件测试运行维护制定计划软件生存期软件生存期软件生存期软件生存期三个阶段三个阶段三个阶段三个阶段软件定义、软件开发,软件维护软件定义、软件开发,软件维护软件定义、软件开发,软件维护软件定义、软件开发,软件维护 软件生存期软件生存期软件生存期软件生存期主要活动阶段主要活动阶段主要活动阶段主要活动阶段:瀑布模型瀑布模型问题定义问题定义可行性研究可行性研究需求分析需求分析设设 计计编编 程程测测 试试运行维护运行维护软软件件定定义义软软 件件 开开 发发软软件件维维护护生存期模型软件人员遵循严格的规范,软件人员遵循严格的规范,每一阶段结束,要严格每一阶段结束,要严格评审和确认评审和确认写出完整、无多义性写出完整、无多义性的文档的文档用户很难表达用户很难表达对系统的全面对系统的全面要求要求开发人员不懂开发人员不懂用户的业务用户的业务真题需求分析需求分析 任务任务任务任务充分理解用户需要解决的问题:充分理解用户需要解决的问题:问题特征、特点、可以抽象为何种模型问题特征、特点、可以抽象为何种模型定义软件的规格说明定义软件的规格说明 描述软件的需求描述软件的需求需求分析的过程需求分析的过程需求分析的过程需求分析的过程常用的分析方法常用的分析方法常用的分析方法常用的分析方法结构化分析方法结构化分析方法 面向对象方法面向对象方法 识别问题识别问题分析与综合分析与综合编写需求分析规格说明书编写需求分析规格说明书需企业分析评审需企业分析评审结构化分析的常用工具结构化分析的常用工具数据流图、数据字典、判定树和判定表数据流图、数据字典、判定树和判定表数据流图数据流图用图形的方法来表达数据处理的过程。用图形的方法来表达数据处理的过程。功能功能功能功能主要图形元素主要图形元素主要图形元素主要图形元素数据流数据流加工加工数据存储数据存储数据源点或终点数据源点或终点数据文件数据文件数据库数据库写写读读数据流图的层次结构数据流图的层次结构数据流图的层次结构数据流图的层次结构 转换处理型转换处理型 可将此类数据流图看成是对输可将此类数据流图看成是对输入数据进行转换而得到输出数据的入数据进行转换而得到输出数据的处理,转换处理过程大致分为处理,转换处理过程大致分为输入输入数据数据、变换数据变换数据、输出数据输出数据三步。三步。输入输入加工加工中心中心加工加工输出输出加工加工输入信息内部数据内部结果输出信息数据流图类型(数据流图类型(1 1)事物处理型事物处理型 可将此类数据流图看成是对可将此类数据流图看成是对一个数据流进行加工后,按加工一个数据流进行加工后,按加工的结果选择一个输出数据流继续的结果选择一个输出数据流继续执行的处理。执行的处理。IP1P2P3事务流事务流事务中心事务中心数据流图类型(数据流图类型(2 2)数据流图示例数据流图示例用户用户操作操作信息信息图书管理系统用户用户操作操作结果结果用户用户借阅信息借阅信息用户用户1登录登录借阅管理2查询管理3书籍管理4操作操作信息信息书籍信息书籍信息查询信息查询信息查询结果查询结果借阅结果借阅结果书籍结果书籍结果查询3.1查询信息查询信息查询结果查询结果用户用户书库书库书库书库数据词典数据词典 对数据流图所有元素的定义的集合对数据流图所有元素的定义的集合数据流、文件、数据项、加工数据流、文件、数据项、加工数据流条目数据流条目数据流条目数据流条目列出数据流的各数据项列出数据流的各数据项如:证件如:证件如:证件如:证件=读者编号读者编号读者编号读者编号+读者姓名读者姓名读者姓名读者姓名+读者单位读者单位读者单位读者单位文件记录的组成项文件记录的组成项如:书籍数据文件如:书籍数据文件如:书籍数据文件如:书籍数据文件=书号书号书号书号+书名书名书名书名+作者作者作者作者+出版社出版社出版社出版社+分类分类分类分类对每个数据单项的定义对每个数据单项的定义如:读者编号如:读者编号如:读者编号如:读者编号=0001=0001=0001=0001 9999 9999 9999 9999(4 4 4 4位字符类型)位字符类型)位字符类型)位字符类型)文件条目文件条目文件条目文件条目数据项条目数据项条目数据项条目数据项条目数据词典数据词典对基本加工进行的精确描述对基本加工进行的精确描述 如:如:登录登录 IF 号码有效号码有效 THENIF 密码正确密码正确 THEN登录正确登录正确ELSE 提示密码错误提示密码错误 ELSE 身份无效身份无效加工条目加工条目加工条目加工条目过程过程软件设计过程是对程序结构、数据结构和过程细节逐软件设计过程是对程序结构、数据结构和过程细节逐步求精、复审并编制文档的过程。步求精、复审并编制文档的过程。设计编码信息描述功能描述行为描述其他需求数据设计总体结构设计过程设计需求分析阶段是解决系统需求分析阶段是解决系统“做什么做什么”的问题,进入设的问题,进入设计阶段,解决系统计阶段,解决系统“怎么做怎么做”的问题。的问题。目标1、提高可靠性:正确性、健壮性2、提高可维护性3、提高可理解性4、提高效率概要设计详细设计数据设计系统结构设计过程设计管理观点技术观点有一定的目标,软件设计阶段从这个出发点出发,考虑系统的总体性能概要设计:根据需求确定软件和数据的总体框架概要设计:根据需求确定软件和数据的总体框架设计软件系统结构,进行模块划分,建立模块层次设计软件系统结构,进行模块划分,建立模块层次结构,确立模块间的调用等;设计全局数据结构和结构,确立模块间的调用等;设计全局数据结构和数据库,设计系统接口和人机界面等数据库,设计系统接口和人机界面等详细设计:将概要进一步精化成模块的算法详细设计:将概要进一步精化成模块的算法和局部数据结构和局部数据结构总体设计方法:总体设计方法:模块化方法,功能分解法,面向数据流的设计方法;面模块化方法,功能分解法,面向数据流的设计方法;面向数据结构的设计方法,面向对象的设计方法向数据结构的设计方法,面向对象的设计方法详细设计方法:详细设计方法:程序流程图、程序流程图、NS图、图、PAD图、图、PDL语言语言此时涉及到此时涉及到以前的知识以前的知识,如何实现小如何实现小功能的算法功能的算法抽象与逐步求精抽象与逐步求精抽象与逐步求精抽象与逐步求精把事物本质的共同属性提取出来把事物本质的共同属性提取出来,而不考虑其它而不考虑其它细节。它要求人们将注意力集中在某一层次上考虑细节。它要求人们将注意力集中在某一层次上考虑问题,而忽略那些低层次的细节。问题,而忽略那些低层次的细节。软件设计过程是在不同抽象级别考虑和处理问软件设计过程是在不同抽象级别考虑和处理问题的过程。题的过程。模块化模块化模块化模块化把待开发的软件分解成若干个小的简单的部分。每把待开发的软件分解成若干个小的简单的部分。每个部分完成一个特定的子功能,按一定的方法组装起来,个部分完成一个特定的子功能,按一定的方法组装起来,实现整个程序的功能。实现整个程序的功能。结论:各个击破结论:各个击破,分而治之分而治之信息隐蔽信息隐蔽信息隐蔽信息隐蔽在一个模块内包含的信息(过程或数据),对于不在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块是不可访问的。需要这些信息的其他模块是不可访问的。程序设计原理程序设计原理模块独立性模块独立性模块独立性模块独立性每个模块只完成系统要求的独立的子功能,对于不每个模块只完成系统要求的独立的子功能,对于不需要这些信息的其他模块是不可访问的。需要这些信息的其他模块是不可访问的。模块独立模块独立:模块化模块化 抽象抽象 信息隐蔽概念的直接结果信息隐蔽概念的直接结果.模块的独立性是评价软件好坏的重要度量指标。内聚度:模块内部彼此结合的紧密程度耦合度:模块间关联的程度内聚度偶然性内聚:模块内各成分为完成一组功能而组合在一起偶然性内聚:模块内各成分为完成一组功能而组合在一起逻辑性内聚:模块内的诸任务逻辑上相关逻辑性内聚:模块内的诸任务逻辑上相关时间性内聚:模块内的诸任务在同一时间段完成时间性内聚:模块内的诸任务在同一时间段完成过程性内聚:模块内成分相关,且按特定次序执行过程性内聚:模块内成分相关,且按特定次序执行通信性内聚:模块内成分都对数据结构的同一区域进行操通信性内聚:模块内成分都对数据结构的同一区域进行操作,以达到通信的目的作,以达到通信的目的顺序性内聚:模块内成分与同一功能相关,且顺序执行顺序性内聚:模块内成分与同一功能相关,且顺序执行功能性内聚:模块内成分形成一个整体,完成单个功能功能性内聚:模块内成分形成一个整体,完成单个功能低 高模块内聚性越强,模块的独立模块内聚性越强,模块的独立模块内聚性越强,模块的独立模块内聚性越强,模块的独立性越强性越强性越强性越强耦合度非直接耦合:不互相依赖对方能独立工作非直接耦合:不互相依赖对方能独立工作数据耦合:模块间交换信息仅限于数据参数数据耦合:模块间交换信息仅限于数据参数特征耦合:通过数据结构传递数据信息特征耦合:通过数据结构传递数据信息控制耦合:传递的信息中除数据信息外还含有控制信息控制耦合:传递的信息中除数据信息外还含有控制信息外部耦合:若干模块均与同一外部环境关联外部耦合:若干模块均与同一外部环境关联公共耦合:若干模块通过全局数据环境相互作用公共耦合:若干模块通过全局数据环境相互作用内容耦合:一个模块直接使用另一模块的数据或控制信息;内容耦合:一个模块直接使用另一模块的数据或控制信息;一个模块直接转移到另一模块的内部一个模块直接转移到另一模块的内部低 高模块的偶合性越强,则该模块的独模块的偶合性越强,则该模块的独模块的偶合性越强,则该模块的独模块的偶合性越强,则该模块的独立性越弱。立性越弱。立性越弱。立性越弱。软件结构改进软件结构改进软件结构改进软件结构改进模块的扇入和扇出:扇出不超过7(7加减2)深度宽度扇入扇出ABCDEFGHIA控制范围控制范围:模块及下属模块模块及下属模块影响范围影响范围:若有一个条件若有一个条件,所有所有受判定条件影响的范围受判定条件影响的范围.控制的总分布控制的总分布原则:影响范围不应超出控制范围模块的大小:50100行。l设计各个模块的实现的算法描述设计各个模块的实现的算法描述l设计实现算法所用的数据结构设计实现算法所用的数据结构l用某种选定的工具表达算法和局部数据结构用某种选定的工具表达算法和局部数据结构常见的设计工具常见的设计工具 图形工具:图形工具:流程图、流程图、流程图、流程图、PADPADPADPAD(问题分析图)、(问题分析图)、(问题分析图)、(问题分析图)、HIPOHIPOHIPOHIPO 表格工具:表格工具:判定表判定表判定表判定表 语言工具:语言工具:PDLPDLPDLPDL(伪码)(伪码)(伪码)(伪码)软件编码软件编码 操作系统的选择操作系统的选择 编程语言和开发工具的选择编程语言和开发工具的选择 编程的编程的标准与风格标准与风格 数据库的使用数据库的使用过程过程第七讲第七讲 软件测试是在软件投入运行软件测试是在软件投入运行前为了发现错误而执行程序的过前为了发现错误而执行程序的过程,是保证软件质量的关键步骤。程,是保证软件质量的关键步骤。g 测试的测试的策略和步骤策略和步骤g 测试的测试的方式方式g 测试测试技术技术g 测试的测试的目标和原则目标和原则g软件测试目标:软件测试目标:以最少的时间和人力找出软件以最少的时间和人力找出软件中潜在的各种错误和缺陷中潜在的各种错误和缺陷g软件测试原则:软件测试原则:不要抱有不要抱有“软件不会有错或查不出错软件不会有错或查不出错”的幻想的幻想设计测试用例时,应同时确定输出结果设计测试用例时,应同时确定输出结果设计测试用例时,应包含合理和不合理数据设计测试用例时,应包含合理和不合理数据软件设计者应避免测试自己的程序软件设计者应避免测试自己的程序严格全面执行测试计划严格全面执行测试计划测试完成后,应产生测试文档测试完成后,应产生测试文档静态测试静态测试静态测试静态测试(走查和会审)(走查和会审)阅读和检查阅读和检查-软件结构是否合理;模块接口软件结构是否合理;模块接口是否正确;数据结构分析和语法分析是否正确;数据结构分析和语法分析动态测试动态测试动态测试动态测试 上机测试上机测试-运行中的错误运行中的错误自动测试自动测试自动测试自动测试 使用测试工具,代替人工进行静态分析和动使用测试工具,代替人工进行静态分析和动态测试态测试 静态分析工具静态分析工具 动态分析工具动态分析工具 综合测评工具综合测评工具g测试方式(执行软件的角度)测试方式(执行软件的角度)g测试技术(测试功能)测试技术(测试功能)白盒测试与黑盒测试白盒测试与黑盒测试动态测试的关键:动态测试的关键:动态测试的关键:动态测试的关键:设计高效合理的测试用例。设计高效合理的测试用例。设计高效合理的测试用例。设计高效合理的测试用例。测试用例:为了测试而设计的数据。测试用例:为了测试而设计的数据。测试用例:为了测试而设计的数据。测试用例:为了测试而设计的数据。测试用例格式:测试用例格式:由输入数据和与之对应的语气输出结果组成。由输入数据和与之对应的语气输出结果组成。(输入数据),(输出数据)(输入数据),(输出数据)g测试技术(测试功能)测试技术(测试功能)白盒测试(结构测试或逻辑驱动测试)白盒测试(结构测试或逻辑驱动测试):是根据软件产品的内部工作过程,检查内是根据软件产品的内部工作过程,检查内是根据软件产品的内部工作过程,检查内是根据软件产品的内部工作过程,检查内部成分,以确认内部操作符合设计规格要求。部成分,以确认内部操作符合设计规格要求。部成分,以确认内部操作符合设计规格要求。部成分,以确认内部操作符合设计规格要求。将测试对象看作打开的盒子,利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。对程序所有独立执行的路径至少测试一次;对所有逻辑判定,取真、假的两种情况至少测试一次;在循环的边界和运行界限内执行循环体;测试内部数据结构的有效性;分类:分类:逻辑覆盖逻辑覆盖逻辑覆盖逻辑覆盖和和基本路径测试基本路径测试基本路径测试基本路径测试白盒测试/结构测试语句覆盖:使得每一可执行语句至少执行一次判定覆盖:使得程序中每个判断的取真分支和取假分支至少执行一次条件覆盖:使得程序中每个判断的每个条件的可能取值至少执行一次判定-条件覆盖:使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果至少执行一次条件组合覆盖:使得每个判断的所有可能的条件取值组合至少执行一次路径覆盖:覆盖程序中所有可能的路径覆盖程度测试路径输入预期AB XX语句覆盖 s,a,c,b,d,e(c,d均执行)2001判定覆盖 s,a,c,b,d,e(判定ab均取真)2001s,a,b,e(判定ab均取假)1011条件覆盖 s,a,b,d,e2112s,a,b,d,e1023判定条件 s,a,c,b,d,e2043s,a,b,e1111条件组合 s,a,c,b,d,e2043s,a,b,d,e2112s,a,b,d,e1023s,a,b,e1111黑盒测试黑盒测试(功能测试或数据驱动测试):功能测试或数据驱动测试):对软件已经实现的功能是否满足需求进行测试和验证对软件已经实现的功能是否满足需求进行测试和验证对软件已经实现的功能是否满足需求进行测试和验证对软件已经实现的功能是否满足需求进行测试和验证。将测试对象看作一个黑盒子,测试人员完全不考虑内将测试对象看作一个黑盒子,测试人员完全不考虑内部逻辑结构,只依据需求规格说明书,检查程序的功能是部逻辑结构,只依据需求规格说明书,检查程序的功能是否符合它的功能说明,所以又叫功能测试。否符合它的功能说明,所以又叫功能测试。是否有不正确或遗漏了的功能在接口上,输入能否正确地被接受;能否输出正确结果是否有数据结构错误或外部信息访问错误性能上是否能满足要求是否有初始化或终止性错误g测试步骤(实施)测试步骤(实施)单元单元测试测试单元单元测试测试单元单元测试测试集成集成测试测试已测试的模块设计信息确认确认测试测试软件需求已集成的软件系统系统测试测试其他因素已确认的软件可交付的软件g测试策略测试策略单元测试:单元测试:对模块进行检查对模块进行检查,尽可能尽可能保证模块程序的质量保证模块程序的质量模块接口测试模块接口测试模块局部数据结构测试模块局部数据结构测试每一条独立执行路径测试每一条独立执行路径测试出错处理测试出错处理测试边界条件测试边界条件测试内内 容容单元测试可以采用静态测试和动态测试,单元测试可以采用静态测试和动态测试,动态测试时通常以白盒测试为主,动态测试时通常以白盒测试为主,辅之以黑盒测试辅之以黑盒测试M1M2M3M4组装测试(集成)组装测试(集成):按系统程序结构,沿控按系统程序结构,沿控制层次自顶向下进行组装制层次自顶向下进行组装M1M2M3M4M5M6第一步:测试第一步:测试M1,设计桩设计桩模块模块S1、S2、S3模拟被模拟被M1调用的模块调用的模块S1S2S3自顶向下集成自顶向下集成软件单元的接口测试、全局数据结构、边界条件软件单元的接口测试、全局数据结构、边界条件和非法输入等。和非法输入等。M1M2M3M4自顶向下集成自顶向下集成 按系统程序结构,沿控按系统程序结构,沿控制层次自顶向下进行组装制层次自顶向下进行组装第二步:依次用第二步:依次用M2、M3、M4替代桩模块替代桩模块S1、S2、S3,每替每替换一个模块就进行一次测试。换一个模块就进行一次测试。S2S3M1M2M3M4M5M6M1M2M3M4自顶向下集成自顶向下集成按系统程序结构,沿控按系统程序结构,沿控制层次自顶向下进行组装制层次自顶向下进行组装第三步:为下一层模块设计第三步:为下一层模块设计桩模块桩模块S4、S5作为作为M5、M6的模拟模块进行测试。的模拟模块进行测试。S4S5M1M2M3M4M5M6M1M2M3M4自顶向下集成自顶向下集成按系统程序结构,沿控制层次按系统程序结构,沿控制层次自顶向下进行组装自顶向下进行组装第四步:依次用第四步:依次用M5、M6替换替换桩模块桩模块S4、S5,进行新的测试,进行新的测试,直至组装完毕。直至组装完毕。M5S5M1M2M3M4M5M6D1D2自底向上集成自底向上集成按系统程序结构,沿控制按系统程序结构,沿控制层次自底向上进行组装层次自底向上进行组装第一步:为最底层模块设计第一步:为最底层模块设计驱动模块驱动模块D1、D2作为作为M2、M4的模拟模块进行测试。的模拟模块进行测试。M5M6M1M2M3M4M5M6M2D2自底向上集成自底向上集成按系统程序结构,沿控制层次按系统程序结构,沿控制层次自底向上进行组装自底向上进行组装第二步:依次用第二步:依次用M2、M4替换替换驱动模块驱动模块D1、D2进行测试。进行测试。M5M6M1M2M3M4M5M6第三步:逐渐向上层设计驱第三步:逐渐向上层设计驱动模块,直至全部组装完毕。动模块,直至全部组装完毕。确认测试(验收测试):确认测试(验收测试):验证软件的功能和性能是否满足需求规格说明中确验证软件的功能和性能是否满足需求规格说明中确验证软件的功能和性能是否满足需求规格说明中确验证软件的功能和性能是否满足需求规格说明中确定的各种需求,以及软件配置是否完全、正确定的各种需求,以及软件配置是否完全、正确定的各种需求,以及软件配置是否完全、正确定的各种需求,以及软件配置是否完全、正确经过一系列的黑盒测试来验证软件是否满经过一系列的黑盒测试来验证软件是否满足需求规格说明书的上的需求说明,文档资料足需求规格说明书的上的需求说明,文档资料是否完整准确,人机界面和其他性能是否令用是否完整准确,人机界面和其他性能是否令用户满意。户满意。通过通过、测试,发现只有最终用户才能发现测试,发现只有最终用户才能发现的问题。的问题。测试是开发者组织人员模拟各类用户行为测试是开发者组织人员模拟各类用户行为来进行测试,尽最大努力涵盖所有可能的用户操来进行测试,尽最大努力涵盖所有可能的用户操作方式。经过作方式。经过 测试的产品称测试的产品称 版本。版本。版本由典型用户在实际使用中进行版本由典型用户在实际使用中进行 测试,测试,并报告问题。并报告问题。系统测试:系统测试:经过确认测试的软件,作为基于计算机系经过确认测试的软件,作为基于计算机系统的一个元素,与计算机硬件、外设、支持软统的一个元素,与计算机硬件、外设、支持软件、数据和人员等其他元素组合在一起,在实件、数据和人员等其他元素组合在一起,在实际运行(试用)环境下对计算机系统进行一系际运行(试用)环境下对计算机系统进行一系列的集成测试和确认测试。列的集成测试和确认测试。必须在目标环境下运行。必须在目标环境下运行。功能测试功能测试功能测试功能测试性能测试性能测试性能测试性能测试操作测试操作测试操作测试操作测试配置测试配置测试配置测试配置测试外部接口测试外部接口测试外部接口测试外部接口测试安全性测试安全性测试安全性测试安全性测试 经过测试,错误暴露出来,还须进经过测试,错误暴露出来,还须进一步诊断错误的原因和位置,进而一步诊断错误的原因和位置,进而改正程序中的错误。改正程序中的错误。确定错误的准确位置仔细研究并设法改正错误调试调试方法调试调试方法强行排错法:强行排错法:强行排错法:强行排错法:设置断点和监视表达式。设置断点和监视表达式。回溯法:回溯法:回溯法:回溯法:确定确定“症状症状”位置,沿控制流程回溯位置,沿控制流程回溯原因排除法原因排除法原因排除法原因排除法:演绎:演绎:从一般原理或前提出发通过排除和精化的过程从一般原理或前提出发通过排除和精化的过程 来推导出结论的思考方法。来推导出结论的思考方法。归纳:归纳:从特殊推断出一般的系统化思考方法从特殊推断出一般的系统化思考方法。二分法:二分法:过程过程真题实例真题实例20092009年年3 3月:选择题月:选择题(6 6)下列叙述中错误的是:)下列叙述中错误的是:A A)软件测试的目的是发现错误并改正错误)软件测试的目的是发现错误并改正错误B B)对被测试的程序进行错误定位是程序调试的表要步骤)对被测试的程序进行错误定位是程序调试的表要步骤C C)程序调试通常也称为)程序调试通常也称为debugdebugD D)软件测试应严格执行测试计划,排除测试的随意性)软件测试应严格执行测试计划,排除测试的随意性A AB B20092009年年3 3月:填空题月:填空题(2 2)软件测试可分为白盒测试和黑盒测试,基本路径测试属于)软件测试可分为白盒测试和黑盒测试,基本路径测试属于测试。测试。白盒白盒白盒白盒真题实例真题实例20092009年年3 3月:选择题月:选择题(7 7)耦合性和内聚性是对模块独立性度量的两个标准,)耦合性和内聚性是对模块独立性度量的两个标准,下列叙述中正确的是:下列叙述中正确的是:A A)提高耦合性、降低内聚性有利于提高模块的独立性)提高耦合性、降低内聚性有利于提高模块的独立性B B)降低耦合性、提高内聚性有利于提高模块的独立性降低耦合性、提高内聚性有利于提高模块的独立性C C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D D)内聚性是指模块间相互连接的紧密程度)内聚性是指模块间相互连接的紧密程度A AB B20092009年年9 9月:填空题月:填空题(3 3)软件开发过程中主要分为需求分析、设计、编码与测试)软件开发过程中主要分为需求分析、设计、编码与测试4 4个阶段,其中个阶段,其中产生软件规格说明书。产生软件规格说明书。需求分析需求分析需求分析需求分析真题实例真题实例20092009年年9 9月:选择题月:选择题(5 5)软件设计中划分模块的一个准则是)软件设计中划分模块的一个准则是A A)低内聚低耦合)低内聚低耦合B B)高内聚低耦合高内聚低耦合C C)低内聚高耦合)低内聚高耦合D D)高内聚高耦合)高内聚高耦合B BB B20092009年年9 9月:填空题月:填空题(3 3)软件开发过程中主要分为需求分析、设计、编码与测试)软件开发过程中主要分为需求分析、设计、编码与测试4 4个阶段,其中个阶段,其中产生软件规格说明书。产生软件规格说明书。需求分析需求分析需求分析需求分析真题实例真题实例20092009年年9 9月:选择题月:选择题(7 7)软件详细设计产生的图如下,该图是)软件详细设计产生的图如下,该图是A A)N-S

    注意事项

    本文(计算机等级考试 二级C 之二 公共基础软件工程.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开