软件工程–实践者的研究方法[软件工程模型]

软件工程模型

  • 4.1 惯用过程模型(传统的)
    • 4.1.1 瀑布模型
    • 4.1.2 增量过程模型
    • 4.1.3 演化过程模型
    • 4.1.4 演化过程模型评述
  • 4.2 专用过程模型
    • 4.2.1 基于构件的开发
    • 4.2.2 形式化方法模型
    • 4.2.3 面向方面的软件开发
  • 4.3 统一过程(UP)
  • 4.4 产品与过程

课程连接 –> [进入]
过程模型

  • 过程模型为软件工程工作提供了特定的路线图,该路线图规定了所有活动的流程、动作、任务、迭代的程度、工作产品及要完成的工作应如何组织
  • 提出过程模型是为了改变软件开发的混乱状况,使软件开发更加有序

过程模型分类

惯用的过程模型

  • 瀑布模型
  • V模型
  • 增量过程模型
  • 演化过程模型
  • 原型开发
  • 螺旋模型
  • 并发开发模型

专用过程模型

  • 基于构建的开发
  • 形式化方法模型(变形方法:净室软件工程)
  • 面向方面的软件开发

统一过程

4.1 惯用过程模型(传统的)

惯用过程模型:

  • 规定了一套过程元素——框架活动、软件工程动作、任务、工作产品、质量保证以及每个项目的变更控制机制
  • 过程模型还定义了工作流,即过程元素之间相互关联的方式。
  • 所有的软件过程模型都支持通用框架活动,但是每一个模型都对框架活动有不同的侧重,并且定义了不同的工作流如何以不同的方式执行每一个框架活动。

4.1.1 瀑布模型

瀑布模型(the waterfall model),又称为经典生命周期

4.1.2 增量过程模型

  • 快速设计
  • 关注用户看得到的方面
  • 采用迭代
  • 原型可以作为第一个系统
  • 原型模型的使用方法

    • 使用方法一
      1)开发人员与客户双方通过沟通,明确已知的需求,并大致勾画出以后再进一步定义的东西。
      2)迅速策划一个原型开发迭代并进行建模,主要集中于那些最终用户所能看到的方面,如人机接口布局或者输出显示格式等;
      3)快速设计产生原型,对原型进行部署,由客户和用户进行评价;
      4)根据反馈,抛弃掉不合适的部分,进一步细化需求并调整原型;
      5)原型系统不断调整以逼近用户需求。
    • 使用方法二:把原型系统作为需求分析的工具,明确需求后,原型系统被抛弃。

    原型开发应用举例
    开发一个教务管理系统。

    • 第一次迭代:完成基本的学籍管理、选课和成绩管理功能。(6周)
      客户反馈:基本满意,但是对大数据量运行速度慢效率,不需要学生自己维护学籍的功能等。
    • 第二次迭代:修改细节,提高成绩统计和 表执行效率(2周)。
      客户反馈:需要严格的权限控制, 表打印格式不符合要求。
    • 第三次迭代:完善打印和权限控制功能。(2周)
      客户反馈:可以进行正式应用验证。

    原型开发的优点和问题

    优点

    • 快速开发出可以演示的系统,方便了客户沟通
    • 采用迭代技术能够使开发者逐步弄清客户的需求

    问题

    • 为了尽快完成原型,开发者没有考虑整体软件的质量和长期的可维护性,系统结构通常较差
    • 用户可能混淆原型系统和最终系统,原型系统在完全满足用户需求之后可能会被直接交付给客户使用。

    螺旋模型

    4.4 产品与过程

    问题:开发软件是创造产品还是经历过程p>

    • 如果过程很薄弱,最终产品必将受到影响。
    • 但是对过程的过于依赖也是很危险的。

    产品过程二象性(对比光的波粒二象性)
    产品和过程的二象性已经称为保留推动软件工程不断进步的创造性人才的一个重要因素

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2021年1月25日
    下一篇 2021年1月25日

    相关推荐