为方便软考考生对软件评测师考试知识点的检测,希赛软考频道为考生带来软考软件评测师考试知识点填空检测的内容(完整版可在本文文首本文资料处或文末的资料下载栏目下载)。
软考软件评测师考试知识点填空检测(8)内容如下:
第8章 软件工程
软件工程
·软件工程
是指应用计算机科学、数学系管理科学等原理,以工程化的原则和方法来解决软件问题的工程,其目的是提高软件生产率、提高_______、降低_______。
·三要素
_______:是指完成软件开发的各项任务的技术方法。
_______:是指为运用方法而提供的软件工程支撑环境。
_______:是指为获得高质量的软件所需要完成的一系列任务的框架。
软件生命周期
·可行性分析与项目开发计划
这个阶段主要确定软件的_______及其_______。必须要回答的问题是:要解决的问题是什么?该问题有可行的解决办法吗?若有解决的办法,则需要多少费用?需要多少资源?需要多少时间?要回答这些问题,就要进行问题定义、可行性分析,制定项目开发计划。可行性分析与项目计划阶段的参加人员有用户、项目负责人和系统分析师。该阶段产生的主要文档有可行性分析报告和项目开发计划。
·需求分析
这个阶段的任务不是具体解决问题,而是准确地确定_______,确定软件系统的_______、
_______、_______和_______等要求,从而确定系统的逻辑模型。该阶段的参加人员有用户、项目负责人和系统分析师。该阶段产生的主要文档有_______。
·概要设计
就是设计软件的_______、明确软件由_______,这些模块的层次结构是怎样的,这些模块的调用关系是怎样的,每个模块的功能是什么。同时,还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。该阶段的参加人员有系统分析师和软件设计师。该阶段产生的主要文档有_______。
·详细设计
该阶段的主要任务是对每个模块完成的功能进行_______,要把功能描述转变为精确的、结构化的过程描述。即该模块的控制结构是怎样的,先做什么,后做什么,有什么样的条件判定,有些什么重复处理等,并用相应的表示工具把这些控制结构表示出来。该阶段参加的人员有软件设计师和程序员。该阶段产生的主要文档有_______。
·编码
该阶段就是把每个模块的控制结构转换成计算机可接受的程序代码,即写成某种特定程序设计语言表示的源程序清单。
·测试
是在设计测试用例的基础上检查软件的各个组成部分。该阶段主要文档有软件测试计划、测试用例和软件测试报告。
·维护
是软件生命周期中时间最长的阶段。已交付的软件投入正式使用后,便进入软件维护阶段。
需求的层次
·系统需求
从系统的角度来说明软件的需求。
·_______
规定了开发人员必须在系统中实现的软件功能。
·_______
指系统必须具备的属性和品质;可细分为:软件质量属性(如:可维护性、可靠性、效率等)和其他的非功能需求。
·_______
限制条件或补充规约;通常是对系统的一些约束说明;如:必须采用国有自主知识产权的数据库系统,必须运行在UNIX操作系统之下等。
需求的特征
·_______:每一项需求都必须将所要实现的功能描述清楚,使设计人员获得设计和实现这些功能所需的必要信息。
·_______:每一项需求都必须准确地陈述其要开发的功能:只有用户代表才能确定需求的正确性。
·_______:每一项需求都必须是在已知的系统或环境内可以实现的:建立数学模型,进行仿真。
·_______:每项需求都是编写文档的根源,每项需求都需要回溯到具体用户:用户需求,跟踪矩阵。
·_______:对所有的需求,读者只能有一个明确统一的解释:形式化的语言、图、表。
·_______:检查每一项需求是否能通过测试用例或其它验证方法。
聚合
衡量模块______________。
·偶然聚合:__________________________________________。
·逻辑聚合:__________________________________________。
·时间聚合:__________________________________________。
·过程聚合:__________________________________________。
·通信聚合:__________________________________________。
·顺序聚合:__________________________________________。
·功能聚合:__________________________________________。
耦合
度量_____________________。
·非直接耦合:___________________________________。
·数据耦合:___________________________________。
·标记耦合:___________________________________。
·控制耦合:___________________________________。
·外部耦合:___________________________________。
·公共耦合:___________________________________。
·内容耦合:___________________________________。
维护
·系统可维护性的评价指标
_______:是指理解、改正、改动、改进软件的难易程度。
_______:指维护人员理解软件的结构、接口、功能和内部过程的难易程度。
_______:是指测试和诊断软件错误的难易程度。
_______:是指修改软件的难易程度。
·维护分类(ISO/IEC14764)
更正性维护:___________________________________。
适应性维护:___________________________________。
完善性维护:___________________________________。
预防性维护:___________________________________。
数据流图/数据字典
·数据流图(Data Flow Diagram,DFD)
是一种最常用的结构化分析工具,从______________的角度,以图形的方式刻画系统内数据的运动情况。
是一种能全面地描述______________的主要工具,可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储的情况。
数据流图具有抽象性和概括性。
·数据流图设计注意事项
自外向内,自顶向下,逐层细化,完善求精;
保持______________的平衡;
保持数据守恒;
加工细节隐藏;
简化加工间的关系;
均匀分解;
适当取名,避免空洞的名字;
表现的是_______而不是_______;
每个加工必须既有_______,又有_______。
·数据字典
对数据流图的重要补充和说明。
是以特定格式记录下来的、对系统的数据流图中各个基本要素(_______、_______、_______和_______)的内容和特征所做的完整的定义和说明。
·数据流图的基本图形元素
_______:由一组固定成分的数据组成,表示数据的流向。
_______:描述了输入数据流到输出数据流之间的变换,也就是输入数据流经过什么处理后变成了输出数据流。
_______:用来存储数据。
_______:是指存在于软件系统之外的人员或组织,它指出系统所需数据的发源地(源)和系统所产生的数据的归宿地(宿)。
软件开发模型/方法
·瀑布模型
是将软件生存周期中的各个活动规定为依线性顺序连接的若干个阶段的模型,包括需求分析、设计、编码、测试、运行与维护。它规定了由前至后、相互衔接的固定次序;以项目阶段评审和文档控制为手段有效地对整个开发过程进行指导;
其优点是:______________;强调开发的阶段性早期计划及需求调查和产品测试;
其缺点是:____________________________;在开始的2~3个阶段中,很难评估真正的进度状态;当项目结束时,出现大量的集成和测试工作;直到项目结束之前,都不能演示系统的能力;需求或设计中的错误往往只有到了项目后期才能够被发现,对项目风险控制能力较弱,从而导致项目常常延期完成,开发费用超出预期。
·V模型
是瀑布模型的一个变体,描述了质量保证活动和沟通、建模相关活动以及早期构建相关的活动之间的关系。
其特点是:_____________________。
其优点是:纠正了不重视测试阶段重要性的错误认识,将测试分等级,并和前面的开发阶段对应起来;
其缺点是:_____________________。
·原型模型
开始于沟通,其目的是定义软件的总体目标,标识需求,然后快速制定原型开发的计划,确定原型的目标和范围,采用快速设计方式对其进行建模,并构建原型。
其优点是:__________________________________________;
其缺点是:__________________________________________。
分类:可分为探索型原型、实验型原型和演化型原型;
·增量模型
融合了瀑布模型的基本成分和原型实现的迭代特征,假设可以将需求分段为一系列增量产品,每一增量可以分别开发。
其特点:______________往往是核心产品;客户对每个增量的使用和评估都作为下一个增量发布的新的特征和功能;增量模型强调每一个增量均发布一个可操作的产品。
其优点是:________________________________________________________。
其缺点是:________________________________________________________。
·螺旋模型
采用一种周期性的方法来进行系统开发,结合_______和_______;每一周期都包括_______、_______、_______和_______4个阶段,进行迭代。
其优点是:_________________________________________________。
其缺点是:_________________________________________________。
·喷泉模型
是一种以用户需求为动力,以对象作为驱动的模型,适合于______________。使软件开发过程自下而上,周期的各阶段具有相互迭代和无间隙的特性。
其优点是:_________________________________________________;
其缺点是:_________________________________________________。
·结构化方法
基本思想是:用_______的思想,_______的方法,按_______的原则,结构化、模块化、自顶向下对信息系统进行分析与设计;严格区分工作阶段,每阶段有任务和结果;强调系统开发过程的整体性和全局性;系统开发过程工程化,文档资料标准化。
·面向对象
出发点和基本原则是:尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界、解决问题的方法与过程;更好的复用性;关键在于建立一个全面、合理、统一的模型;_______、_______、_______三个阶段,界限不明确。
·Jackson方法
是一种_______;是以_______作为驱动的,是一种基于进程的开发方法,所以适用于时序特点较强的系统,包括数据处理系统和一些实时控制系统。
·统一过程(UP,Unified Process)
是一种以_______驱动、以_______为核心、迭代及增量的软件过程模型,由UML方法和工具支持,广泛应用于各类面向对象项目。典型代表:RUP是由Rational公司开发并维护,和一系列软件开发工具紧密集成。RUP蕴含了大量优秀的实践方法,如:迭代式软件开发、需求管理、基于构件的构架应用、建立可视化的软件模型、软件质量验证、软件变更控制等。
在UP中过程被划分为4个阶段,_______、_______、_______、_______。
角色:描述某个人或者一个小组的行为与职责。RUP预先定义了很多角色。
活动:是一个有明确目的的独立工作单元。
工件:是活动生成、创建或修改的一段信息。
·敏捷方法
敏捷开发的总体目标是通过“_______、_____________________”使客户满意。通过在软件开发过程中加入灵活性,敏捷方法使用户能够在开发周期的后期增加或改变需求。
MVC
MVC全名是Model View Controller,是_______-_______-_______的缩写,是用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
·控制器:负责______________;主要负责_______和_______的交互。
·视图:代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet;主要负责_______,也就是用户界面。
·模型:就是业务流程/状态的处理以及业务规则的制定。业务模型的设计可以说是MVC最主要的核心;主要负责_______和_______。
能力成熟度模型
·初始级:___________________________________。
·可重复级:___________________________________。
·已定义级:___________________________________。
·已管理级:___________________________________。
·优化级:___________________________________。
面向对象
·对象:是基本运行时的实体,既包括_______,也包括作用于数据的_______。
·类:类所包含的方法和数据描述一组_______的共同行为和属性;_______是在_______之上的抽象,_______是_______的具体化,是_______的实例。
·_______:父类和子类之间共享数据和方法的机制。
·封装:将_______和_______衔接在一起,构成的一个具有______________的描述。
·_______:是多种表现形式;多态性的实现,一般通过在派生类中重定义基类的虚函数来实现。
·_______:描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做。
·消息:对象之间______________。
·组件:表示软件系统_______、_______组成部分,封装了模块功能的实现。
·_______:将已有的软件及其有效成分用于构造新的软件或系统。
·模式:描述了一个不断重复发生的问题,以及该问题的解决方案;模式由_______、_______、_______3个部分组成。
统一建模语言(Unified Modeling Language,UML)
是一种定义良好、易于表达、功能强大且普遍适用的建模语言。不仅可以支持面向对象的分析与设计,更重要的是能够有力地支持需求分析开始的软件开发的全过程。
·UML建立的模型的三个要素:
_______:是对模型中最具有代表性的成分的抽象。
_______:关系把事物结合在一起。
_______:图聚集了相关的事物。
·关系
_______:是两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物的语义。
_______:是一种结构关系,描述了一组链,链是对象之间的链接。
_______:是一种特殊的类型关联,描述了整体和部分间的结构关系。部分独立于整体。
_______:是聚合的一种特殊形式,暗示局部在整体内部的生存职责。部分依赖于整体。
_______:是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。
_______:是类元之间的语义关系,其中的一个类元指定了由另一个类元保证执行的契约。
·静态建模和动态建模
静态建模用以描述系统的_______,而动态建模则用以描述系统的_______。
·图分类
静态建模机制:_______、_______、_______、_______。
动态建模机制:_______、_______、_______、_______、_______。
·图
类图:展现了一组对象、接口、协作和它们之间的关系;类图用于对系统的静态设计视图建模。这种视图主要支持系统的功能需求,即系统要提供给最终用户的服务。当对系统的静态设计视图建模时,通常以下述方式之一使用类图:1)_______。2)_______。3)_______。
用例图:展现了一组_______、_______以及它们之间的关系。(注意:用例之间的三种关系:包含、扩展、泛化)
_______:描述以时间顺序组织的对象之间的交互活动。
_______:强调收发消息的对象的结构组织,早期版本称协作图。
_______:展现了一个状态机,由状态、转换、事件和活动组成。
_______:描述交互(特别是关注控制流)。
计时图:描述对象状态随时间改变的情况,适合分析_______和_______的任务。
_______:是一种特殊的状态图,展现了在系统内从一个活动到另一个活动的流程。
_______:展现了一组构件之间的组织和依赖。
_______:展现了运行处理节点以及其中的构件的配置。
注释
·_______:在每个程序或模块的开头的一段说明,起对程序理解的作用。一般包括:程序的表示、名称和版本号、程序功能描述、接口与界面描述、输入/输出数据说明、开发历史、与运行环境有关的信息。
·_______:一般嵌在程序之中,与要注释的部分匹配。注释一定要在程序编制中书写。
解释性注释不是简单直译程序语句,应能说明“做什么”。
热门:信息系统管理工程师报考指南 | 2025年软考报名时间及入口
推荐:信息系统项目管理师网络课堂 |系统架构设计师网络课程 | 工信部信创认证培训
活动:25年高项备考 | 软考机考模拟作答系统 | 网络工程师网络课程
备考:章节练习+真题 | 软考备考学习资料 | 软考免费课程
课程:论文专题讲解 | 信息系统项目管理师试听课