软考考前冲刺第七章软件工程基础知识

瀑布模型:严格遵循软件生命周期各阶段的固定顺序,一个阶段完成再进入另一个阶段。其优点是:可以使过程比较规范化,有利于评审;缺点在与:过于理想,缺乏灵活性,容易产生需求偏移。所以瀑布模型的应用场合为:需求明确的项目、二次开发项目以及与原型法配合使用。

快速原型模型:采用了一种动态定义需求的方法,通过快速的建立一个能够反映用户主要需求的软件原型,让用户在计算机上使用它,了解其概要,再根据反馈的结果进行修改,因此能够充分体现用户的参与与决策。原型化人员对原型的实施很重要,衡量他们的重要标准是能否从用户的模糊描述中快速地获取实际的需求。所以快速原型模型很好的弥补了瀑布模型的缺陷,它适合于需求不明确的项目。

演化模型:也是一种原型化开发,但与快速原型不同的是,快速原型模型在获得真实需求时,就将抛弃原型。而演化模型则不然,它将从初始的模型中逐渐演化为最终软件产品,是一种“渐进式”原型法。其应用场合也是需求不明确的项目。

增量模型:它采用的是一种“递增式”模型,它将软件产品划分为一系列的增量构件,分别进行设计、编码、集成和测试。相对于原型法而言,这种模型其实是从系统开发的另一方面看待问题,原型法关注点是“制作一个原型”,而增量模型的关注点是“系统的功能模块不是一次完成的,而是一块一块开发,以增加的方式进行的”。在现实开发中,我们会发现,一个项目开发过程既用了增量模型也用了原型模型。所以增量模型仍有利于进行需求不明确的项目开发。

螺旋模型:结合了瀑布模型和演化模型的优点,最主要的特点在于加入了风险分析。它是由制定计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋。

喷泉模型:主要用于描述面向对象的开发过程,最核心的特定是迭代。所有的开发活动没有明显的边界,允许各种开发活动交叉进行。

UP:既是一个统一的软件开发过程,又是一个通用过程框架,可以应付种类广泛的软件系统、不同的组织类型、不同的性能水平和不同的项目规模。UP是基于构件的,这意味着利用它开发的软件系统是由构件构成的,构件之间通过定义良好的接口相互联系。在准备软件系统所有蓝图的时候,UP使用的是统一建模语言UML。与其他软件过程相比,UP具有三个显著的特点:用例驱动、以基本架构为中心、迭代和增量。

UP中的软件过程在时间上被分解为四个顺序的阶段,分别是初始阶段、细化阶段、构建阶段和交付阶段。每个阶段结束时都要安排一次技术评审,以确定这个阶段的目标是否已经满足。如果评审结果令人满意,就可以允许项目进入下一阶段。

UP一般用于大型软件的开发。

敏捷开发:从敏捷开发一词的敏捷可以看出,该方法是一种轻量级的开发方法。这种开发方法的主要思想是:传统的软件工程方法文档太“重”了,现在需要进行减负,所以将不必要的文档去掉,这就形成了敏捷开发。具体一点讲,敏捷方法包括:XP(极限编程)、自适应开发、水晶方法、特性驱动开发等。

在XP方法中,提出了四大价值观:沟通、简单、反馈、勇气。五大原则:快速反馈、简单性假设、逐步修改、提倡更改、优质工作。十二个最佳实践:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结对编程、集体代码所有制、持续集成、每周工作40小时、现场客户、编码标准。

1.假设某软件公司与客户签订合同开发一个软件系统,系统的功能有较清晰的定义,且客户对交付时间有严格要求,则该系统的开发最适宜采用瀑布模型。

2.为了有效地捕获系统需求,应采用原型模型。

3.模块A直接访问模块B的内部数据,则模块A和模块B的耦合类型是内容耦合。

4.以下关于封装在软件复用中所充当的角色的叙述,正确的是(A).

A.封装使得其他开发人员不需要知道一个软件组件内部如何工作。

B.封装使得软件组件更有效的工作。

C.封装使得软件开发人员不简要编制开发文档。

D.封装使得软件组件开发更加容易。

封装是面向对象技术的三大特点之一,封装的目的是使对象的定义和实现分离,这样,就能减少耦合。封装可以使得其他开发人员不需要知道一个软件组件内部是如何工作的,只需要使用该组件提供的接口来完成交互即可,如果在另外一个地方需要完成相同的功能,我们可以将该组件使用在另外一个地方,这样就提供了软件的复用性。

5.软件系统的可维护性评价指标不包括(C).

A.可理解性  B.可测试性  C.扩展性  D.可修改性

6.McCall软件质量模型从软件产品的运行、修正和转移三个方面确定了11个质量特性,其中灵活性不属于产品运行方面的质量特性。

运行方面:正确性、可靠性、效率、完整性、使用性;修正方面:维护性、测试性、灵活性;转移方面:维护性移植性、复用性、共运行性。

7.根据ISO/IEC9126软件质量模型中软件质量特性的定义,可维护性质量特性的易测试性子特性是指与为确认经修改软件所需努力有关的软件属性。

可维护性质量特性是指与软件维护的难易程度相关的一组软件属性,它包含了易分析性、稳定性、易测试性和易改变性4个子特性。其中:

易分析性是描述诊断缺陷或失效原因、判定待修改程度的难易程度的特性。

稳定性是描述修改造成难以预料的后果的风险程度,风险程度越低,稳定性越好。

易测试性是描述测试已修改软件的难易程度的特性。

易改变性是描述修改、排错或适应环境变化的难易程度。

8.某项目组拟开发一个大规模系统,且具备了相关领域及类似规模系统的开发经验。瀑布模型最适合开发此项目。

9.进行防错性程序设计,可以有效地控制正确性维护成本。

10.在软件维护阶段,为软件的运行增加监控设施属于完善性维护。

11.在软件开发过程中进行风险分析时,风险控制活动目的是辅助项目建立处理风险的策略,有效的策略应考虑风险避免、风险监控、风险管理及意外事件计划

时间: 2024-12-23 00:17:04

软考考前冲刺第七章软件工程基础知识的相关文章

软考考前冲刺第五章数据库系统基础知识

1.E-R模型向关系模型转换时,三个实体之间多对多的联系m:n:p应该转换为一个独立的关系模式,且该关系模式的关键字由三个实体的关键字组成. 在E-R模型向关系模型转换时,如果是多对多的联系,那么这个联系需要转换为一个独立的关系模式,且该关系模式的属性由各实体的关键字和该联系自身的属性组成,而该关系模式的关键字(主键)由各实体的关键字组成. 2.CD 投影运算是从一个关系里面抽取指明的属性(列)组成一个新的关系,这种运算是一种对列进行操作的运算.本题中∏1.3(R)的含义就是从关系R中,选取第一

软考考前冲刺第十三章UML建模

1.如果一个对象发送了一个同步消息,那么它要等待对方对消息的应答,收到应答后才能继续自己的操作.而发送异步消息的对象不需要等待对方对消息的应答便可以继续自己的操作. 2.部署图描述了一个运行时的硬件结点,以及在这些结点上运行的软件组件的静态视图.部署图显示了系统的硬件,安装在硬件上的软件,以及用于连接异构的机器之间的中间件.因此它是在实施阶段被使用. 3.业务用例其实是对用例思想的一种延续,只是改变了使用场合.用例是从使用者的角度定义"软件系统"的需求.而业务用例不研究"软件

程序员教程-5章-软件工程基础知识

先给出目录结构 5.1 软件工程概述 5.1.1 软件生存周期 1 问题定义 2 可行性分析 3 需求分析 4 总体设计 5 详细设计 6 编码和单元测试 7 综合测试 8 维护 5.1.2 软件生存周期模型 1 瀑布模型 2 增量模型 3 演化模型 4 螺旋模型 5 喷泉模型 6 统一过程 7 敏捷方法 5.1.3 软件过程评估 1 软件能力成熟度模型 2 能力成熟度模型集成 5.1.4 软件工具 1 软件开发工具 2 软件维护工具 3 软件管理和软件支持工具 5.1.5 软件开发环境 5.2

第一章 计算机基础知识

第一章 计算机基础知识 第一部分 概述 1.1946年2月15日,第一台计算机 ENIAC 2.物理原件(电子原件) 第一代:电子管.第二代:晶体管.第三代:中小规模集成电路.第四代:超大规模集成电路.第五代:超导材料.第六代:人工智能.#考试考到第四代. 3.计算机的分类 巨型机,大型机,中型机,小型机,微型机 现在的巨型机也是存在的 4.微处理器(CPU.中央处理器)由控制器.寄存器.运算器组成 第二部分 微机系统的组成 CPU>内存>外存 #速度 CPU和内存之间有一个CACHE,叫做高

【安富莱二代示波器教程】第1章 示波器基础知识

第1章   示波器基础知识 本章的内容整理自网络,主要讲解示波器的基础知识.如果初学的话非常有必要对这部分知识有一个了解.因为示波器是硬件调试必不可少的设备. 1.1 什么是示波器 1.2 示波器的发展史 1.3 示波器的基础概念 1.4 触发系统 1.5 李沙育图形 1.6 窗函数选择 1.7 总结 1.1  什么是示波器 示波器是形象地显示信号幅度随时间变化的波形显示仪器,是一种综合的信号特性测试仪,是电子测量仪器的基本种类. 自然界运行着各种形式的正弦波,比如海浪.地震.声波.爆破.空气中

APUE学习笔记:第一章 UNUX基础知识

1.2 UNIX体系结构 从严格意义上,可将操作系统定义为一种软件(内核),它控制计算机硬件资源,提供程序运行环境.内核的接口被称为系统调用.公用函数库构建在系统调用接口之上,应用软件即可使用公用函数库,也可使用系统调用.shell是一种特殊的应用程序,它为运行其他应用程序提供了一个接口 从广义上,操作系统包括了内核和一些其他软件,这些软件使得计算机能够发挥作用,并给予计算机以独有的特性(软件包括系统实用程序,应用软件,shell以及公用函数库等) 1.3  shell shell是一个命令行解

高项3.7日第一次课,第一章信息化基础知识与第二章信息系统服务管理梳理

第一章 信息化的基础知识 1.国家信息化体系要素: 主要包括6要素,信息技术应用(龙头).信息资源(关键).信息网络(必要手段).信息技术产业(基础).信息化人才(成功之本).信息化法规政策和规范(保障). 2.电子政务: 电子政务建设的指导原则: (1)统一规划,加强领导. (2)需求主导,突出重点. (3)统一规划,拉动产业. (4)统一标准,保障安全. 主要任务: (1)电子政务网络由政务内网和政务外网构成,两网之间物理隔离,政务外网与互联网之间逻辑隔离.政务内网主要是副省级以上政务部门的

APUE第一章 UNIX基础知识

前语:本人是半路出家做程序员,实际上应付平时工作中的业务还可以,但是基础知识实在薄弱,当然也跟中国计算机教育有关系,平时跟同事聊天,实际上就算是科班出身,对于计算机本身的了解也知之甚少,因此在毕业两周年到来的时候,给自己确定了以后的技术学习方向,同时也决定了将基础部分补充起来,特来CSDN开这个专题,去学习程序员圣经般著作-<UNIX高级环境编程>,这本书也是被某个同事经常提起,书本比较厚,但是不能操之过急,但是也不要指望一次性就能学完学透,没事回来看看,总有收获,自勉之. 一.UNIX体系结

第三章 nodejs基础知识(上)

本章主要介绍一些nodejs的基础知识: 1. 什么是nodejs中的控制台,如何向控制台进行标准输出流与标准错误输出流的输出: 2. 什么是nodejs中的全局作用域,在nodejs中预先提供了哪些全局函数以及全局变量: 3. 什么是nodejs中的事件处理机制以及事件环进制,如何在nodejs中为各种事件指定事件触发以及事件取消时执行的回调函数: 4. 如何使用nodejs 中的调试器进行应用程序的调试: 3.1 nodejs中的控制台 在nodejs中,使用console对象代表控制台.在