• 软件工程基础图式(第二章)


    软件工程图示(第二章)

    学习目标

    1)软件过程和过程模型的概念

    2)不同过程模型特征及优缺点

    3)如何为不同项目选择过程模型

    1、软件过程概念


    软件过程:路线图(可预测步骤)

    过程模型:定义了若干小的框架活动,为完整的软件开发过程奠定了基础(活动>动作>任务)

      活动:宽泛目标(不实际意义考虑)

      动作

      任务:小而明确,产生实际产品

    软件生命周期:止于被废弃

    所有过程都具有以下活动:1、沟通  2、计划  3、建模  4、构建  5、布署

    2、传统软件过程模型


     瀑布模型/经典生命周期模型(9个活动)

    内容:可行性研究⬅️➡️需求分析⬅️➡️总体设计⬅️➡️详细设计⬅️➡️实现与组装测试⬅️➡️验收测试⬅️➡️软件使用与维护

    可行性研究:(1)技术可行性(2)经济可行性(3)法律可行性

    特点:(1)顺序性和依赖性(2)推迟实现(3)每个过程建立完整文档(里程碑-可交付产品)

    缺点:(1)增加工作量(死板、大量文档)(2)开发风险大(3)早期错误发现晚(4)不适应需求变化(不支持迭代)

    问题:(1)小型,需求非常明确(2)技术成熟、工程管理严格:军工、航天、医疗

    原型模型(原型+瀑布模型——降低需求不明确风险)

    原型:一个部分开发的产品。用于明确需求,验证方案,最终可能会被抛弃。

    内容:原型构建+系统开发

    优点:减少需求不明确带来的风险

    增量模型(n✖️瀑布模型——降低需求变化风险)

    增量:小而可用的软件。在前面增量的基础上开发后面的增量,每个增量的开发可用瀑布或快速/原型模型。

    开发方法:(1)增量方式:增加新功能(2)迭代方式;改进功能

    特点:(1)非整体开发,进化式(2)从部分需求开发(3)迭代的思路。

    优点:方便改动,人员精简

    缺点:增量功能不相似则不合适,增量划分难把握

    螺旋模型(原型嵌入瀑布模型)

    开发过程分成若干次迭代(组成瀑布模型),每次迭代代表开发的一个阶段,对应模型一条环线

    经典四迭代:操作概念—>软件需求—>软件设计—>软件实现

    每次迭代分成四个方面活动(含原型模型),对应四个象限

    喷泉模型

    面向对象开发

    3、如何选择过程模型

  • 相关阅读:
    Atitit。D&D drag&drop拖拽功能c#.net java swing的对比与实现总结
    Atitit.js javascript异常处理机制与java异常的转换 多重catc hDWR 环境 .js exception process Vob7
    Atitit.web 视频播放器classid clsid 大总结quicktime,vlc 1. Classid的用处。用来指定播放器 1 2. 标签用于包含对象,比如图像、音
    ListView与Adapter的那些事儿
    (转)Android反面自动静音
    (转)socket 与 file_get_contents的区别和优势的简单介绍
    Android ArrayAdapter 详解
    ImageView相关
    Android dip,px,pt,sp 的区别
    (转)Android 程序获取、设置铃声、音量、静音、扬声器
  • 原文地址:https://www.cnblogs.com/ggotransfromation/p/11609695.html
Copyright © 2020-2023  润新知