第章 软件工程学概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 二者区别 传统方法学:强调自顶向下顺序地完成软件开发的各阶段任务。 面向对象方法:是主动地多次反复迭代的演化过程 * 1.3 软件生命周期 一、什么是软件生命周期( life cycle) 指软件孕育、诞生、成长、成熟、衰亡的生存过程 GB 一 8567 中将软件生命周期分为 7 个阶段: 可行性研究和项目开发计划; 需求分析; 总体设计; 详细设计; 编码; 测试; 维护 * 本教材对软件生命周期的划分 * 1 、软件定义时期 任务: 确定软件开发工程必须完成的总目标; 确定工程的可行性; 导出实现工程目标应该采用的策略及系统必须完成的功能; 估计完成该项工程需要的资源和成本,并且制定工程进度表。 通常分为问题定义、可行性研究和需求分析三个阶段。 * 软件定义时期的三个阶段 ① 问题定义阶段回答: 回答:“要解决的问题是什么?” ② 可行性研究阶段 回答:“对于上一个阶段所确定的问题有行得通的解决办法吗? ③需求分析(Requirement Analysis) 回答“为了解决这个问题,目标系统必须做什么 ? 用正式文档准确地记录对目标系统的需求,这份文档通常称为规格说明书( specification )。 * 2 、软件开发时期 具体设计和实现前一个时期定义的软件,通常分为四个阶段: ① 总体设计(概要设计) 回答:“概括地说,应该怎样实现目标系统? ” 根据需求分析,设计软件的体系结构;定义结构中的组成模块。 ② 详细设计(模块设计) 回答:“应该怎样具体地实现这个系统呢? ” 对每个模块要完成的工作进行具体的描述,为源程序编写打下基础。编写设计说明书,提交评审。 二者统称系统设计 * 软件开发时期四个阶段 ③ 程序编写( Coding, Programming ) :把软件设计转换成计算机可以接受的程序代码。 ④ 软件测试(Testing ) : 按规定的各项需求,逐项进行有效性测试,决定已开发的软件是否合格,能否交付用户使用,包括单元测试和组装测试。 二者统称系统实现 * 3、运行维护(软件维护)时期 使软件持久的满足用户的需要。包括: 改正性维护:运行中发现了软件中的错误需要修正。 适应性维护:为了适应变化了的软件工作环境,需做适当变更。 完善性维护:当用户有新的要求时,应该及时改进软件以满足用户的要求。 预防性维护: 即修改软件为将来的维护活动预先做准备。 * 几个关干软件生命周期阶段的问题 问题一:开发一个软件大概需要多少资金、时间,将获得什么效益一般是在哪个阶段确定?相对而言,在哪个阶段与用户交流最多? 问题二:系统分析员主要工作在哪个时期?程序员主要工作在哪个时期? 问题三:软件定义时期的三个阶段,各自回答什么关键问题? 问题四:软件开发时期有几个阶段?各自回答什么关键问题? * 问题五:软件体系结构最早是在哪个阶段决定的? 问题六:详细设计与程序编写阶段有什么样的密切联系? 问题七:“软件测试是为了验证系统的正确性”这句话对吗? 问题八:软件维护有那几种?各有什么功能? * §1.4 软件过程( Software Process ) 1 、什么是软件过程 软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 ISO 9000的定义: “过程”是使用资源将输入转化为输出的活动所构成的系统。 “系统”是相互关联或相互作用的一组要素。 过程是软件工程三要素之一。 通常用软件生命周期模型来描述。 * 2 、什么是软件生命周期模型 又称:软件开发模型/软件过程模型/软件工程范型。 指软件项目从需求定义直至软件经使用后废弃为止,跨越整个生存周期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。 常见的有:瀑布模型、演化模型、螺旋模型、喷泉模型、智能模型 * § 1.4.1瀑布模型(waterfall model) 1970年,由W.Royce提出 一、瀑布模型的过程 1 、传统的瀑布模型 从上一阶段接受本阶段 的工作对象,作为输 入; 利用输入,完成本阶段活 动的内容. 本阶段的工作成果作为输出 传入下一阶段。 * 瀑布模型 — 实际的瀑布模型 需求分析 验证 规格说明 验证 设计 验证 编码 测试 综合测试 维护 变化的需求 验证 增加了一个评审活动,评审每个阶段完成的活动,若得到确认,则进行下一阶段的活动;否则返回前一阶段,甚至更前阶段返工; * 二、瀑布模型特点 阶段间具有顺序性和依赖性 推迟实现的观点 质量保证的观点 * 三、瀑布模型优缺点 优点: 可强迫开发人

文档评论(0)

kfcel5889 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档