欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    软件工程软件工程学概述.ppt

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

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

    软件工程软件工程学概述.ppt

    02:24,1.2 软件危机,1.3 软件工程,1.4 软件生命周期,1.5 软件过程,1.1 软件,02:24,1.1 软件 软件:程序以及开发、使用和维护程序所需要的所有文档。 软件:计算机程序、方法、规则、相关的文档资料以及在计算机上运行程序时所必需的数据。(1983 IEEE),Institute of Electrical and Electronic Engineers,(软件程序文档数据) 软件与程序的主要区别是: 规模庞大、复杂度高,02:24,1.2 软件危机 1.2.1 软件危机介绍 1.软件危机 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 软件萧条(software depression) 软件困扰(software affliction),02:24,2.软件危机的典型表现 (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有合适的文档资料 (6)软件成本在计算机系统总成本中所占比例逐年上升; (7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。,02:24,1.2.2 软件危机产生的原因 1.软件本身的特点 (1)软件是逻辑部件而不是物理部件,缺乏“可见性”,管理和控制软件开发过程相当困难; (2)软件维护较难; (3)软件规模庞大。 2.软件开发与维护的方法不正确 (1)忽视需求分析 (2)轻视软件维护,02:24,1.2.3 消除软件危机的途径 1.应该对计算机软件有一个正确的认识 软件程序文档数据 2.必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目 3.应该开发和使用更好的软件工具,02:24,1.3 软件工程 提出:1968年 NATO 联邦德国 1.3.1 软件工程介绍 1.软件工程 (1)软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。,1968年第一届NATO会议提出,(2)软件工程是:a把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;b研究a中提到的途径。,1993年IEEE提出,02:24,(3)软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前呢能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。 2.软件工程的特性 (1)软件工程关注于大型程序的构造 (2)软件工程的中心课题是控制复杂性 (3)软件经常变化 (4)开发软件的效率非常重要 (5)和谐地合作是开发软件的关键 (6)软件必须有效地支持它的用户 (7)在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。,02:24,1.3.2 软件工程的基本原理 1.用分阶段的生命周期计划严格管理 2.坚持进行阶段评审 3.实行严格的产品控制 4.采用现代程序设计技术 5.结果应能清楚地审查 6.开发小组的人员应该少而精 7.认不断改进软件工程实践的必要性,02:24,1.3.3 软件工程方法学 软件工程包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。 管理:是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,以达到既定目标的过程。 方法学:在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为范型。 软件工程方法学的要素: 方法 工具 过程 方法:是完成软件开发的各项任务的技术方法,回答“怎样做”的问题。,02:24,工具:是为运用方法而提供的自动的或半自动的软件工程支撑环境。,如果把各个阶段使用的软件工具有机地集合称一个整体,支持软件卡发的全过程,则称为软件工程支撑环境。,过程:是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。,02:24,1.传统方法学 传统方法学也称为生命周期方法学或结构化范型。 采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。 前一个阶段任务的完成是开始进行后一个阶段工作的前提和基础,而后一阶段任务的完成通常是使前一阶段提出的解决更进一步具体化,加进了更多的实现细节。,02:24,2.面向对象方法学 面向对象方法学把数据和行为看成同等重要,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法。 要点: (1)把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件。 (2)把所有对象都划分成类(class)。 (3)按照父类(基类)与子类(派生类)的关系,把若干个相关类组成一个层次结构的系统(类等级)。 (4)对象彼此间仅能通过发送消息相互联系。,02:24,1.4 软件生命周期,软件定义,软件开发,运行维护,确定软件开发工程必须完成的总目标;确定工程的可行性;导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。,具体设计和实现在前一个时期定义的软件。,使软件持久地满足用户的需要,02:24,软件生命周期各个阶段的基本任务 1.问题定义 要解决的问题是什么? 2.可行性研究 对于上一个阶段所确定的问题有行的通的解决办法吗? 3.需求分析 为了解决这个问题,目标系统必须做什么? 4.总体设计 概括地说,应该怎样实现目标系统? 5.详细设计 应该怎样具体地实现这个系统呢?,02:24,6.编码和单元测试 写出正确的容易理解、容易维护的程序模块。 7.综合测试 通过各种类型的测试使软件达到预定的要求。 8.软件维护 通过各种必要的维护活动使系统持久地满足用户的需要。,改正性维护:诊断和改正在使用过程中发现的软件错误。 适应性维护:修改软件以适应环境的变化。 完善性维护:根据用户的要求改进或扩充软件使它更完善。 预防性维护:修改软件为将来的维护活动预先做准备。,02:24,1.5 软件过程 是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 1.5.1 瀑布模型,02:24,1.瀑布模型的特点 (1)阶段间具有顺序性和依赖性 a.必须等前一阶段的工作完成之后,才能开始后一阶段的工作; b.前一阶段的输出文档就是后一阶段的输入文档,因此,只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。 (2)推迟实现的观点 (3)质量保证的观点 a.每一阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务; b.每一阶段结束前都要对所完成的文档进行评审,以便尽早发现问题,改正错误。,02:24,实际的瀑布模型,02:24,2.瀑布模型的优点 (1)可强迫开发人员采用规范的方法; (2)严格地规定了每个阶段必须提交的文档; (3)要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 3.瀑布模型的缺点 瀑布模型由文档驱动是它的一个主要缺点,很可能导致最终开发出的软件产品不能真正满足用户的需求。,02:24,1.5.2 快速原型模型 是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。,02:24,快速原型模型的优点: (1)有助于保证用户的真实需求得到满足; (2)不带反馈环,软件产品开发基本上是线性顺序进行的。,02:24,1.5.3 增量模型,02:24,增量模型的优点: (1)能在较短时间内向用户提交可完成部分工作的产品; (2)逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。,02:24,1.5.4 螺旋模型,02:24,螺旋模型的优点: (1)对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标; (2)减少了过多测试或测试不足所带来的风险; (3)维护只是模型的另一个周期,在维护和开发之间没有本质区别。,

    注意事项

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

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




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开