试题详情
- 简答题什么是软件过程?有哪些主要的软件过程模型?它们各有哪些特点?
-
软件过程是指在软件工具的支持下,所进行的一系列软件开发和进化的活动。软件过程模型是对软件开发实际过程的抽象和简化,是描述软件开发过程中各种活动如何执行的模型,因此又称为软件开发模型。
主要的软件过程模型有:瀑布模型、增量模型、螺旋模型、喷泉模型和基于知识的模型等。
⑴瀑布模型是经典的软件开发模型,将软件开发活动中的各项活动规定为依线性顺序连接的若干阶段,它简单易用,在消除非结构化软件、降低软件的复杂性、促进软件开发工程化方面起了很大的作用。但在软件开发实践中也逐渐暴露出它的缺点。它将一个充满回溯的软件开发过程硬性分割为几个阶段,无法解决软件需求不明确或者变动的问题。
⑵增量模型是一种非整体开发的模型。根据增量的方式和形式的不同,分为基于瀑布模型的渐增模型和基于原型的快速原型模型。该模型具有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。
⑶螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析。螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期可分为4个工作步骤:制定计划、风险分析、实施工程、客户评估。
⑷喷泉模型用于采用对象技术的软件开发项目。它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。喷泉模型使开发过程具有迭代性和无间隙性。软件开发过程有4个阶段,即分析、系统设计、软件设计和实现。各阶段相互重叠,以分析为基础,资源消耗成塔形,从高层返回低层无资源消耗。强调增量开发,是对象驱动的过程,反映了对象的开发和重用过程。
⑸基于知识的模型也称为智能模型。通过领域的专家系统,可使需求说明更加完整、准确和无二义性。通过软件工程知识和特定应用领域的知识和规则的应用来提供开发的帮助。 关注下方微信公众号,在线模考后查看
热门试题
- 软件项目与软件产品有什么不同?
- 软件需求分析主要解决软件项目()的问题。
- 什么是软件的可维护性?主要有哪些因素在影
- 软件设计工作只做概要设计,不做详细设计。
- 对比传统的软件测试和面向对象的软件测试策
- 软件公司的CMMI过程改进模型与软件开发
- 试述信息系统的定义及信息系统的基本内容。
- 试给出一种开源软件框架,并简要说明开源软
- 自底向上估算的优点是对各部分的估算交给负
- 下列是面向对象设计方法中有关对象的叙述,
- 某算法设计程序流程图如图所示。试分析该算
- 头插法建立单链表时,元素的输入顺序与在链
- 如果开发时间紧迫,是否可以跳过单元测试而
- UML建模语言是由视图、图、模型元素和通
- 项目运行到就绪里程碑时,应该发布那些工作
- 在概要设计的设计文档中,对每个模块的描述
- ()指的是该任务每隔一定时间就要例行发生
- 用于表示模块间的调用关系的图叫()
- 将如下的多出口循环结构改为单出口程序结构
- 试对等价类划分与边界值分析这两种黑盒测试