- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
瀑布模型 瀑布模型的特点 (1)阶段间具有顺序性和依赖性。 (2)推迟实现原则 (3)质量保证机制 易于组织,易于管理:因为你可以预先完成所有计划。 是一种严格线性的、按阶段顺序的、逐步细化的过程模型(开发模式)。 缺乏灵活性,难以解决需求不明确或不准确的问题 原型模型的特点 适用于用户驱动的系统(即需求模糊或随时间变化的系统)。 优点: 从实践中学习(Learning by doing) 改善通信 改善用户参与 使部分已知需求清晰化 展示描述的一致性和完整性 提高系统的实用性、可维护性 节省开发的投入、缩短整个软件的开发周期 原型模型存在的问题 原型模型的缺点 用户有时误解了原型的角色,例如他们可能误解原型应该和真实系统一样可靠。 缺少项目标准,进化原型方法有点像编码修正。 缺少控制,由于用户可能不断提出新要求,因而原型迭代的周期很难控制。 额外的花费:研究结果表明构造一个原型可能需要10%额外花费。 为了尽快实现原型,采用了不合适的技术,运行效率可能会受影响。 原型法要求开发者与用户密切接触,有时这是不可能的。例如外包软件。 3.2 螺旋模型(Spiral Model) Spiral 模型(Boehm, 1988提出) 综合了原型实现模型模型的迭代特征和顺序模型的控制和系统化的优点。 增加了风险分析,是以风险为导向的生命期模型。 从一个小范围的关键中心地带开始寻找风险因素,制定风险控制计划,并交付给下一步骤,如此迭代,每次迭代将项目扩展到一个更大的规模。 认为软件开发是一系列增量的发布 系统的完善是随着迭代的深入 螺旋模型的活动 螺旋模型沿着螺线旋转,在四个象限上分别表达四个方面的活动: 制定计划:确定软件目标,选定实施方案,弄清项目开发的限制 风险分析:分析所选方案,考虑如何识别和消除风险 实施工程:实施软件开发 客户评估:评价开发工作,提出修正建议 软件生命周期各阶段的基本任务 1、问题定义 — 要解决的问题是什么? 2、可行性研究 — 有行得通的解决办法吗? 3、需求分析 — 目标系统必须做什么? 4、总体设计(概要设计) — 怎样实现目标系统?怎么做? 软件生命周期各阶段的基本任务 5、详细设计(模块设计) — 怎样具体地实现系统? 6、编码及单元测试 — 用程序设计语言表达详细设计的结果,并对每一个模块进行测试。 7、综合测试 — 集成测试:根据设计的软件结构,把各模块装配起来,在装配过程中进行的测试。 — 验收测试:按规格说明书的要求,由用户对目标进行验收。 软件生命周期各阶段的基本任务 8、软件维护:持久地满足用户的需要。 — 改正性维护:诊断和改正在使用过程中发现的软件错误。 — 适应性维护:修改软件以适应环境的变化。 — 完善性维护:根据用户的要求改进或扩充软件使其更完善。 — 预防性维护:为将来的维护活动先做准备。 — 业界“40-20-40”规律 计算机 软件基础 第三篇 软件工程基础 第十四章 软件工程概论 第一节、软件工程概念 一. 软件和软件危机 软件的定义: 软件是计算机系统中与硬件相互依存的另一部分,提供了人与计算机交互的界面。软件=程序+数据+文档 1)按事先设计的功能和性能要求执行的指令序列(即程序)。 2)使程序能够正确运行的数据结构(即数据)。 3)与程序开发、运行和维护有关的图文资料(即文档)。 第一节、软件工程概念 2 软件危机: 是指软件开发和维护过程中遇到的一系列严重问题。 主要内容: 1)如何高效地开发软件以满足日益增长的应用要求; 2)如何维护数量不断膨胀的已有软件。 具体表现: 1)软件开发成本和进度难以估计; 2)用户对软件系统的功能要求难以满足。 第一节、软件工程概念 2 软件危机: 具体表现:(续) 3)软件产品质量差,可靠性不能保证 。 4)软件缺少适当的文档资料,难以维护。 5)软件开发速度跟不上社会需求的增长。 软件危机产生的原因 1)软件是逻辑部件,缺乏“可见性”,且软件产品往往规模 庞大,维护困难。 2)软件开发人员忽视软件需求分析的重要性,轻视软件维护。 第一节、软件工程概念 二、软件工程的定义 软件工程是软件开发、运行、维护和引退的系统方法 许多定义的主要思想都是强调在软件开发过程中需要应用工程化原则的重要性。软件工程是指导计算机软件开发和维护的工程学科。 软件工程三要素是方法、工具和过程。 第一节、软件工程概念 二、软件工程的定义 软件工程的基本原理 (1)用分阶段的生命周期计划严格管理 (2)坚持进行阶段评审 (3)实行严格的产品控制 (4)采用现代程序设计技术 (5)清楚地审查结果 (
文档评论(0)