1 / 27

软件过程

软件过程. 制作小组:曾繁德、朱财荣、陈嘉豪、 陈家林、李晓彬、吴东霖. 概 要. 瀑布模型 快速原型模型 增量模型 螺旋模型(重点) 喷泉模型 Rational统一过程 敏捷过程与极限编程 微软过程. 软件过程. 软件过程是近十年来人们关注的焦点。软件过程是为开发高质量软件所需要完成的任务的框架。软件工程是有创造力、有知识的人在定义好的、成熟的软件过程框架中进行的。. 软件过程. 过程:为实现一个给定目标而进行的一系列运作步骤。 过程具有一系列的性质:时间性、并发性、嵌套性和度量性等。

Download Presentation

软件过程

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 软件过程 制作小组:曾繁德、朱财荣、陈嘉豪、 陈家林、李晓彬、吴东霖

  2. 概 要 • 瀑布模型 • 快速原型模型 • 增量模型 • 螺旋模型(重点) • 喷泉模型 • Rational统一过程 • 敏捷过程与极限编程 • 微软过程

  3. 软件过程 软件过程是近十年来人们关注的焦点。软件过程是为开发高质量软件所需要完成的任务的框架。软件工程是有创造力、有知识的人在定义好的、成熟的软件过程框架中进行的。

  4. 软件过程 • 过程:为实现一个给定目标而进行的一系列运作步骤。 • 过程具有一系列的性质:时间性、并发性、嵌套性和度量性等。 • 软件过程:开发和维护软件及其相关产品所设及的一系列活动。过程是活动的集合;活动是任务的集合;任务是把输入转换为输出的操作。

  5. 软件过程 软件工程层次图 工具 方法 过程 质量焦点

  6. 软件过程 • 软件工程的方法层 提供了为开发软件在技术上需要“如何做”。方法涵盖了一系列的任务:需求分析、设计、编程、测试和维护。软件工程方法依赖于一组原则,这些原则控制了每一个技术区域,且包含建模活动和其他描述技术。

  7. 软件过程模型 软件过程模型是软件开发的指导思想和全局性框架,软件过程模型的提出和发展反映了人们对软件过程的某种认识观,体现了人们对软件过程认识的提高和飞跃。

  8. 软件过程模型 瀑布模型 强调阶段的划分 及其顺序性、各阶段工作 及其文档的完备性,是一种严格线性的、 按阶段顺序的、逐步细化的开发模式。 定义 分析 设计 编码 测试 维护

  9. 软件过程模型 瀑布模型的特点: • 结构简单明了;历史较长、应用面广泛、为广大软件工作者所熟悉;已有与之配套的一组十分成熟的开发方法和丰富的支撑工具。 • 确定了需求分析的绝对重要性,但是在实践中要想获得完善的需求说明是非常困难的;反馈信息慢。

  10. 软件过程模型 快速原型模型 听取用户意见 建造/修改 原型 用户测试 运行原型

  11. 软件过程模型 快速原型模型的特点: • 原型作为标识软件需求的一种机制,原型被建造仅是为了定义需求,之后就该被抛弃(或至少部分抛弃); • 实际的软件在充分考虑了质量和可维护性之后才被开发。

  12. 软件过程模型 增量模型 增量1 分析 设计 编码 测试 增量2 分析 设计 编码 测试 增量3 分析 设计 编码 测试

  13. 软件过程模型 增量模型的特点: • 以功能递增的方式进行软件开发 • 能较快地产生可操作的系统; • 在每一步递增中,都可以把用户/开发者的经验结合到不断求精的产品中; • 可改善测试效果和降低软件开发总成本。

  14. 软件过程模型 需求定义 风险分析 螺旋模型 评审 工程实现

  15. 软件过程模型 螺旋模型的特点: • 把软件开过程组成为一个逐步细化的定义周期(螺旋周期)序列,每经历一个周期,系统就得到进一步的细化和完善; • 本质上,具有上述特征的螺旋是一直运转的直到软件退役。有时这个过程处于睡眠状态,但任何时候出现了改变,过程都会从合适的入口点开始;

  16. 软件过程模型 螺旋模型的特点: • 紧密围绕开发中的风险问题,用风险分析推动软件设计向深一层扩展、求精; • 强调持续地判断、确定和修改用户任务目标,并按成本、效益来分析候选的软件产品性质对任务目标的贡献; • 可结合采用多种软件开发方法,但究竟结合哪一种方法仍由风险分析来决定。

  17. 软件过程模型 喷泉模型

  18. 软件过程模型 喷泉模型的特点: • 无间隙,指在各项活动之间无明显边界,如分析、设计和编码之间没有明显的界限。 • 喷泉模型在系统某个部分常常被重复工作多次,相关对象在每次迭代中随之加入渐进的系统

  19. Rational统一过程 Rational统一过程(RUP)是Rational软件公司(现在Rational公司被IBM并购)创造的软件工程方法。RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程(也被称作厚方法学),因此特别适用于大型软件团队开发大型项目。

  20. Rational统一过程 最佳实践: 1、迭代式开发 2、管理需求 3、使用基于构件的体系结构 4、可视化建模 5、验证软件质量 6、控制软件变更

  21. Rational统一过程 RUP软件开发生命周期: 1、核心工作流:业务建模、需求、分析与设计、实验、测试、部署、配置与变更管理、项目管理、环境 2、工作阶段:初始阶段、精化阶段、构建阶段、移交阶段 3、RUP迭代式开发

  22. 敏捷过程与极限编程 敏捷过程体现的价值观: 1、个体交互胜过过程和工具 2、可以工作的软件胜过面面俱到的文档 3、客户合作胜过合作谈判 4、响应变化胜过遵循计划

  23. 敏捷过程与极限编程 1、极限编程的有效实践:客户作为开发团队的成员、使用用户素材、短交付周期、验收测试、结对编程、测试驱动开发、集体所有、持续集成、可持续的开发速度、开发的工作空间、及时调整计划、简单的设计、重建、使用隐喻 2、极限编程的整体开发过程 3、极限编程的迭代过程

  24. 微软过程 • 1、微软过程准则 • 2、微软软件生命周期 • (1)规划阶段 • (2)设计阶段 • (3)开发阶段 • (4)稳定阶段 • (5)发布阶段 • 3、微软过程模型

  25. 谢谢观赏

More Related