软件工程与 Chapter 0 .ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程与 Chapter 0

第一部分 软件工程基础 第二章 软件过程 华南师范大学 教育信息技术学院 郑云翔 提纲 软件过程框架 软件过程模型 瀑布模型 原型实现模型(快速原型法) 演化软件过程模型 基于构件的开发模型 极限编程 其他模型 软件过程能力成熟度模型 软件过程框架 给定一个需求,如何开展工作一步步地实现预定的目标(其过程是怎样的)? 非软件:如市场调查 软件:如学生选课系统、人事系统 软件过程框架 问题描述 可行性分析与项目计划 需求获取和分析 总体设计 详细设计 编码实现 测试 运行和维护(纠错、适应 增强、预防) 软件过程框架 强调:软件开发 ≠ 编程 软件过程框架 通用的,适用于所有软件项目 提纲 软件过程框架 软件过程模型 瀑布模型 原型实现模型(快速原型法) 演化软件过程模型 基于构件的开发模型 极限编程 其他模型 软件过程能力成熟度模型 软件过程模型 软件开发过程模型用于总体上指导软件开发过程的进行,其选择依赖于: 项目和应用的性质 所采用的方法和工具 需要交付的产品 软件开发的控制 软件过程模型 所有软件开发都可被刻画为一个问题解决环,包含四个不同的阶段: 状态描述(状态引用):表示事物的当前状态 问题定义:标识要解决的待定问题 技术开发:通过应用某些技术来解决问题 解决集成(方案集成):集成和提交结果 上述四个阶段也是问题求解的一般过程 软件过程模型 软件过程模型——软件的生命周期 软件也有生命周期: 并非开发完交付客户后即结束 旧的产品被升级更新,甚至抛弃 软件生命周期:软件从项目需求定义直至软件经使用后废弃为止,所经历的系统开发、运作和维护等的全部过程 软件生命周期模型:某种软件生命周期及其活动的框架性描述,也称为软件过程模型 提纲 软件过程框架 软件过程模型 瀑布模型 原型实现模型(快速原型法) 演化软件过程模型 基于构件的开发模型 极限编程 其他模型 软件过程能力成熟度模型 瀑布模型 软件过程中的活动自顶向下,一个台阶一个台阶地按顺序进行,不可逆转 需求分析?软件设计?编码?测试?安装运行?维护 瀑布模型 瀑布模型(具有维护循环) 瀑布模型 瀑布模型是一种线性顺序模型,需要事先把整个过程分解为若干活动,规定好每个活动的: 任务 入口和出口条件 评审内容 检查点 应交付的产品 …… 瀑布模型的特点 线性化模型 各阶段划分明确 基于文档的驱动 严格的阶段评审 瀑布模型pros and cons 提供了软件开发的基本框架,迈出了第一步:分解(分而治之) 提供了模版和实践基础 有利于人员的组织和管理 有利于开发方法和工具的使用 提高了软件的质量和效率 适用于大型、需求较稳定和明确的项目 瀑布模型pros and cons 需求和其他条件不可能一开始很清楚,不可能不变,不太可能严格划分阶段然后按顺序进行开发: 用户对需求的不明确,甚至“误导” 开发人员对问题域不了解,产生交流障碍,导致系统需求不完整、有缺陷,到后期才发现 用户和开发人员交流不充分 技术的发展 其他原因 瀑布模型pros and cons 在项目初始阶段确定全部需求,用户和项目负责人需要很长的时间才能拿到需求版本 只有开发完成后,整个软件才全部展现在用户面前,这时如果用户发现有不满意的地方,为时已晚(即:需求变化引起的代价很高) 太理想化,太单纯 提纲 软件过程框架 软件过程模型 瀑布模型 原型实现模型(快速原型法) 演化软件过程模型 基于构件的开发模型 极限编程 其他模型 软件过程能力成熟度模型 原型实现模型(快速原型法) 构造原型?用户评价?改进原型?…… ?明确系统需求 原型实现模型(快速原型法) 原型实现模型 原型实现模型(快速原型法) 快速原型法包括: 原型的选择:选择系统最需要确定的部分,忽略其他已确定或较容易确定的部分 快速:逻辑上模拟,快速得出框架 原型可以抛弃(丢弃型原型)??演化型原型 原型实现模型(快速原型法)的特点 往往忽略软件整体质量和可维护性 暂时使用,并不要求完整,作出很多折衷和简化 快速原型法不能贯穿软件的整个生命周期,需要和其他的过程模型相结合才能产生作用 对丢弃型原型:一旦需求或设计确定下来了,原型就将被抛弃 原型实现模型(快速原型法)的特点 对演化型原型: 原型完成后通过不断迭代、修改,最终得到正式系统 不能有方向性错误 与客户一起工作 通过不断发布新的软件版本而使软件逐步完善 特别适合于那些用户急需的软件产品开发 原型实现模型pros and cons 有利于快速获取系统需求 用户的“尽早”参与 使开发前测试成为可能,尤其是可用性方面 原型实现模型pros and cons 开发阶段划分不清,项目管理较困难 正式开发时若不抛弃原型,则会留下隐患 提纲 软件过程框架 软件过程模型

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档