栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > 架构设计

【软件工程】第2章 软件过程 第3章 软件过程模型

架构设计 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【软件工程】第2章 软件过程 第3章 软件过程模型

【软件工程】第2章 软件过程 第3章 软件过程模型 思考题
  1. 简述软件过程、软件生存周期、软件过程模型(软件生存周期模型)三者之间的概念区别。
  2. 软件过程就是软件开发过程么?为什么?
  3. 请选择两个常见的软件过程模型,谈谈你对它们的理解?并对它们进行比较。
  4. 瀑布模型和其他常见模型有什么关联和区别?
  5. 根据你当前所在的团队项目,你更倾向于选择哪一种软件过程模型?为什么?
拙见 1. 简述软件过程、软件生存周期、软件过程模型(软件生存周期模型)三者之间的概念区别。
  • 软件过程:
    • 软件生存周期中的一系列相关过程所涉及的活动。
    • 过程是活动的集合。
    • 活动是任务的集合。
    • 任务是将输入转换为输出的操作。
  • 软件生存周期:软件也有一个从生到死的过程,这个过程一般称之为软件的软件生存周期或生命周期
  • 软件过程模型(软件生存周期模型):
    • IEEE 12207.0-1996 定义
      • 一个包括软件产品开发、运行和维护中有关过程、活动和任务的框架,覆盖了从系统的需求定义到系统的使用终止。
    • 软件生存周期模型是一种软件过程的抽象表示,也称为软件开发模型。
    • 软件生存周模型一般使用直观的图形标识软件开发的过程,主要根据软件的类型、规模,特别是软件的开发方法、开发环境等多种因素确立过程模型。
2. 软件过程就是软件开发过程么?为什么?
  • 软件过程并不是软件开发过程
  • 因为软件过程是
    • 软件生存周期中的一系列相关过程所涉及的活动。
    • 过程是活动的集合。
    • 活动是任务的集合。
    • 任务是将输入转换为输出的操作。
  • 而软件开发过程只是其中的一部分
3. 请选择两个常见的软件过程模型,谈谈你对它们的理解?并对它们进行比较。
  • 增量模型
    增量模型是把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。运用增量模型的软件开发过程是递增式的过程。相对于瀑布模型而言,采用增量模型进行开发,开发人员不需要一次性地把整个软件产品提交给用户,而是可以分批次进行提交。
  • 螺旋模型
    螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控。螺旋模型最大的特点在于引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失。同时,在每个迭代阶段构建原型是螺旋模型用以减小风险的途径。螺旋模型更适合大型的昂贵的系统级的软件应用。
  • 比较
    • 增量模型中某些阶段按照瀑布模型的整体方式开发;某些阶段按照增量方式开发,即融合了瀑布模型的基本成分(重复应用)和原型实现的迭代特征
      • 优点:开发中用户可以及早看到部分软件功能,发现问题
    • 螺旋模型是结合了瀑布模型和快速原型模型的迭代开发模型,以进化的开发方式为中心,每个项目阶段使用瀑布模型法
    • 增量模型在活动级迭代,螺旋模型在过程级迭代
    • 增量通过避免使用未成熟技术和经常的客户反馈等方法减少风险,螺旋模型直接增加风险识别、风险分析、风险控制,计划性较强。
4. 瀑布模型和其他常见模型有什么关联和区别?
  • 关联与区别
    • 原型模型利用原型法技术尽可能快地构造一个实际系统的简化模型。实现一个基本原型,让用户对原型进行评价,逐步调整,使其满足用户最终需求。
    • 增量模型中某些阶段按照瀑布模型的整体方式开发;某些阶段按照增量方式开发,即融合了瀑布模型的基本成分(重复应用)和原型实现的迭代特征
    • 螺旋模型(Spiral Model)由Barry Boehm提出,是结合了瀑布模型和快速原型模型的迭代开发模型
5. 根据你当前所在的团队项目,你更倾向于选择哪一种软件过程模型?为什么?
  • 倾向于瀑布模型
  • 因为产品较为小型、需求改变变动较小
慕课 软件生存周期过程的概念
  1. 单选(2分)获取正确软件的关键是()
    A.开发逻辑
    B.开发团队
    C.人员素质
    D.明确需求
  2. 判断(2分)软件生存周期的含义是表明软件的演化和发展具有周期性,每过一段时间就需要更新。
    A.√
    B.×
  3. 判断(2分)当软件的一个版本被淘汰时,则该软件的生存周期就结束了。
    A.√
    B.×
  4. 判断(2分)软件生存周期过程表示软件生存周期内的一个过程。
    A.√
    B.×
  5. 填空(2分)为了表述软件开发需要做什么映射,引入了三个概念:(请按概念的范围由大到小填写,用空格分隔)
参考答案
  1. A
  2. B
  3. B
  4. B
  5. 过程 活动 任务
软件生存周期过程的分类
  1. 单选(2分)按照(),可以将软件生存周期过程分为基本过程、支持过程和组织过程。
    A.软件开发活动的层次关系
    B.软件开发工作的主体
    C.软件开发项目的结构
    D.软件开发任务的重要程度
  2. 多选(2分)下述过程属于基本过程的是()
    A.获取过程
    B.开发过程
    C.运行过程
    D.供应过程
  3. 判断(2分)支持过程是指那些与软件生产组织有关的活动集。
    A.√
    B.×
  4. 多选(2分)下列关于软件开发过程说法正确的是()
    A.软件生存周期过程就是软件开发过程
    B.软件开发过程是软件开发者所从事的一系列活动
    C.软件开发过程中还包括了系统需求分析、系统结构设计等系统层面的活动
    D.软件开发过程包含了软件升级和演化等活动
参考答案
  1. B
  2. ABCD
  3. B
  4. BC
软件生存周期模型的概念
  1. 判断(2分)软件生存周期模型是对软件生存周期中过程、活动和任务的组织。
    A.√
    B.×
  2. 判断(2分)软件生存周期模型必须要将所有类型的过程、活动和任务考虑在内,形成满足每个软件项目需要的模型。
    A.√
    B.×
  3. 判断(2分)软件开发模型是软件开发过程的活动和任务的结构框架。
    A.√
    B.×
参考答案
  1. A
  2. B
  3. B
常见的软件生存周期模型
  1. 多选(2分)下列关于瀑布模型的说法正确的是()
    A.瀑布模型仅能依次经过需求、设计、编码、测试、集成和维护这一路径进行项目开发,不能从后一阶段返回到前面的阶段。
    B.瀑布模型在每一阶段都会生成相应的文档。
    C.瀑布模型只有在需求阶段和运行阶段才能有获取方和用户参与,其余阶段只能开发团队参加。
    D.瀑布模型要求需求在最初阶段就要完整和明确。
  2. 多选(2分)多选题:下列关于增量模型的说法正确的是()
    A.增量模型要求需求在最初阶段就要完整和明确。
    B.相比于瀑布模型,采用增量模型开发的项目所需的成本和时间要少。
    C.采用增量模型时,每一增量必须按照既定顺序依次开发,不能更改。
    D.增量模型能够更早的向用户交付第一个版本的系统。
  3. 多选(2分)多选题:下列关于演化模型的说法正确的是()
    A.演化模型要求需求在最初阶段就要完整和明确。
    B.演化模型可以弱化需求和设计文档的编写,以提高开发效率。
    C.演化模型在每一次迭代过程中可以采用瀑布模型。
    D.相比瀑布模型,演化模型需要获取方和用户更多的参与。
  4. 单选(2分)单选题:下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是()。
    A.演化模型
    B.瀑布模型
    C.喷泉模型
    D.增量模型
参考答案
  1. BD
  2. AD
  3. CD
  4. C
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/911316.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号