欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    计算机软件开发软件工程.ppt

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

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

    计算机软件开发软件工程.ppt

    第七章 软件工程,计算机科学与技术总论,计算机科学与技术系,软件的特点:,软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性。软件的生产与硬件不同,在它的开发过程中没有明显的制造过程。在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。,计算机科学与技术总论,计算机科学与技术系,软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性。软件的开发至今尚未完全摆脱手工艺的开发方式。软件本身是复杂的实际问题的复杂性。程序逻辑结构的复杂性。软件成本相当昂贵。相当多的软件工作涉及到社会因素。,计算机科学与技术总论,计算机科学与技术系,一、软件工程基本概念二、软件工程基本原则三、软件工程的设计模式四、软件质量,计算机科学与技术总论,计算机科学与技术系,1、软件工程基本概念,程序设计阶段 50至60年代 程序系统阶段 60至80年代 主要围绕软件项目,开展开发模型、支持工具以及开发方法的研究。软件工程阶段 80年代以后 开展有关软件生产技术、软件复用技术、软件生产管理的研究和实践;提出具有广泛应用前景的面向对象方法和相关的语言,近年来,软件工程的研究从过程转向产品更加注重程序的开发范型和软件生产。高智能、自动化CASE成为软件工程技术研究的热点。,计算机科学与技术总论,计算机科学与技术系,Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。IEEE:软件工程是开发、运行、维护和修复软件的系统方法。Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。,一、软件工程概念,计算机科学与技术总论,计算机科学与技术系,软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。目标是让学生了解和掌握软件开发中的方法学和工程学知识,并应用于实践。刘乃琦 教授,软件设计实现技术与软件工程方法,计算机科学与技术总论,计算机科学与技术系,软件工程项目的基本目标,付出较低的开发成本达到要求的软件功能取得较好的软件性能开发的软件易于移植需要较低的维护费用能按时完成开发工作,及时交付使用,计算机科学与技术总论,计算机科学与技术系,1、软件生命周期,软件生命周期:开发、使用、修改。软件命周期六个步骤:(问题定义和可行性研究)制定计划、需求分析、设计(总体设计和详细设计)、程序编码、测试及运行维护。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,2、制定计划,确定要开发软件系统的总目标。给出功能、性能、可靠性以及接口等方面的要求。完成该软件任务的可行性研究。估计可利用的资源(计算机硬件,软件,人力等)、成本、效益、开发进度。制定出完成开发任务的实施计划,连同可行性研究报告,提交管理部门审查。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,3、需求分析和定义,对待开发软件提出的需求进行分析并给出详细的定义。编写软件需求说明书或系统功能说明书及初步的系统用户手册。提交管理机构评审。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,4、软件设计,概要设计 把各项需求转换成软件的体系结构。结构中每一组成部分都是意义明确的模块,每个模块都和某些需求相对应。详细设计 对每个模块要完成的工作进行具体的描述,为源程序编写打下基础。编写设计说明书,提交评审。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,5、程序编写,把软件设计转换成计算机可以接受的程序代码,即写成以某一种特定程序设计语言表示的“源程序清单”。写出的程序应当是结构良好、清晰易读的,且与设计相一致的。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,6、软件测试,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,测试是软件开发的最后一个阶段,是保证软件质量的重要环节,它是对需求分析、设计和编码的最后复审,通过测试可以发现和纠正软件中的错误,以保证软件的可靠性。,6.1 程序测试的基本概念,计算机科学与技术总论,计算机科学与技术系,测试看作其程序能够正常运行的证明。GJMyers:“程序测试是为了发现错误而执行程序的过程。”根据这一测试定义,只有发现了错误的测试才能认为是成功的测试。测试具有不彻底性。通过测试可以找出程序中的错误,但任何测试都是不彻底的,不能保证测试后的程序不存在遗留的错误。,6.2、程序测试的基本概念,计算机科学与技术总论,计算机科学与技术系,测试时还要考虑其经济性。一般来说,测试成本占整个开发成本的三分之一左右。为了降低测试成本,要认真研究测试策略,采用尽可能少的测试用例,发现尽可能多的程序错误。如果在设计阶段程序设计做得很好,那么测试时就不需花费太多时间。如果设计时没有充分地对算法进行测试,那么就可能存在许多逻辑错误,要花费较长时间来进行测试。一般规律是:在分析和设计算法时花时间越多,调试程序时就花时间越少。,计算机科学与技术总论,计算机科学与技术系,6.2 测试的种类,在程序测试期,通常进行两类测试:人工测试和机器测试。人工测试(静态测试)对程序首先进行的不是机器测试,而是通过人工集体协同的方式来对被测程序进行静态审查,以发现代码中的错误。,计算机科学与技术总论,计算机科学与技术系,机器测试(动态测试)动态测试分为两类。一类是把被测程序看成一个黑盒,根据程序功能来设计测试用例,称为黑盒测试;另一类是根据被测程序的内部结构来设计测试用例,测试者必须事先了解被测程序的内部结构,故称为白盒测试。,6.2 测试的种类,计算机科学与技术总论,计算机科学与技术系,高级测试 高级测试通常就是由程序测试小组与用户一起进行的验收测试,这时不是将程序功能与系统设计规范说明书相比较,而是将它与用户需求说明相比较,即将它与用户的原始目标、预期结果以及用户当前需要相比较。当用户认为程序能够满足预期的需要时,开发过程的测试阶段就结束了。,6.2 测试的种类,计算机科学与技术总论,计算机科学与技术系,6.3 程序运行和维护,程序初步测试成功,并不说明大功告成,必须经过运行,在运行中使程序老化。所谓老化就是经过一段时间的运行之后,验证程序的性能指标,看看是否便于维护。已交付的软件投入正式使用,便进入运行阶段。这一阶段可能持续若干年甚至几十年。软件在运行中可能由于多方面的原因,需要进行修改。其可能的原因有:软件在运行中发现了错误需要修正;为了适应变化了的软件工作环境,需要适当变更;为了增强软件的功能需做变更等等。,计算机科学与技术总论,计算机科学与技术系,7、运行维护,改正性维护 运行中发现了软件中的错误需要修正。适应性维护 为了适应变化了的软件工作环境,需做适当变更。完善性维护 为了增强软件的功能需做变更。,二、软件工程的基本原则,计算机科学与技术总论,计算机科学与技术系,瀑布模型 演化模型 螺旋模型 喷泉模型 智能模型,三、软件工程的设计方法,计算机科学与技术总论,计算机科学与技术系,1、瀑布模型,瀑布模型有什么缺点?如何改进?,计算机科学与技术总论,计算机科学与技术系,从上一阶段接受本阶段工作的对象作为输入。本阶段的工作成果作为输出传入下一阶段。评估各阶段,若本阶段工作得到确认,继续,否则返回前一阶段。可以增加反馈线来表示具有反馈回路的瀑布模型。,计算机科学与技术总论,计算机科学与技术系,核心系统开发,2、演化模型,演化模型有什么特点?,计算机科学与技术总论,计算机科学与技术系,w由于在项目开发的初始阶段人们对软件的需求认识常常不够清晰,用户只能给出系统的核心,并根据实现的核心系统有效地提出反馈,来支持系统的最终设计和实现。w第一次只是试验开发核心系统,其目标只是在于探索可行性,弄清软件需求。w第二次则在此基础上提出精化系统,获得较为满意的软件产品。,计算机科学与技术总论,计算机科学与技术系,3螺旋模型,计算机科学与技术总论,计算机科学与技术系,w制定计划确定软件目标,选定实施方案,弄清项目开发的限制条件。w风险分析分析所选方案,考虑如何识别和消除风险。w实施工程实施软件开发。w客户评估评价开发工作,提出修正建议。,计算机科学与技术总论,计算机科学与技术系,迭代 重复 演进无间隙 各阶段间无明显界限,4、喷泉模型,计算机科学与技术总论,计算机科学与技术系,基于知识的软件开发模型,并把专家系统结合在一起。该模型应用基于规则的系统,采用规约和推理机制,帮助软件人员完成开发工作,并使维护在系统规格说明一级进行。建立知识库,将模型、软件工程知识与特定领域的知识分别存入数据库。,5、智能模型,计算机科学与技术总论,计算机科学与技术系,软件工程与其他工程的区别?,软件组件的重用率低;对精度要求高;评价标准难以确定。,计算机科学与技术总论,计算机科学与技术系,四、软件质量,可操作性:准确性 效率 可靠性 安全性 时效性 适用性,可维护性:可变性 可修正性 灵活性 可测试性,可移植性:代码可用性 互操作性 可移植性,计算机科学与技术总论,计算机科学与技术系,思考:,软件工程质量包括哪些内容?软件工程质量的影响因素?如何评价软件工程质量?,计算机科学与技术总论,计算机科学与技术系,

    注意事项

    本文(计算机软件开发软件工程.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开