当前位置:文档之家› 系统开发规范与文档编写(简答题库)

系统开发规范与文档编写(简答题库)

、试述瀑布模型有何优缺点。
瀑布模型有以下优点:
1)为项目提供了按阶段划分的检查点。
2)当前一阶段完成后,您只需要去关注后续阶段。
3)可在迭代模型中应用瀑布模型。
增量迭代应用于瀑布模型。迭代1解决最大的问题。每次迭代产生一个可运行的版本,同时增加更多的功能。每次迭代必须经过质量和集成测试。
2、瀑布模型有以下缺点:
1)在项目各个阶段之间极少有反馈。
2)只有在项目生命周期的后期才能看到结果。
3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段。


2、试述软件工程的基本原则。
1、 用分阶段的生命周期计划严格管理
2、 坚持进行阶段评审
3、实行严格的产品控制
4、 用现代程序设计技术
5、 结果应能清楚地审查
6、 开发小组的人员应该少而精。
7、 承认不断改进软件工程实践的必要性

、软件危机有哪些表现,产生的原因有哪些?
软件危机宏观上主要是指:

1、软件的发展赶不上计算机硬件的发展。
2、软件的发展赶不上社会对于软件需求的增长。

具体软件来说,危机是:
1、软件往往不能按计划、按预算、按时完成。
2、已开发的软件不能很好的使用,甚至很快就不用。

原因是:
一、软件操作方面:
1、软件需求分析不充分。
2、软件开发的规范性不够。
3、软件开发计划的科学性不够。
4、缺少对于软件的评测手段。
二、宏观原因
1、集成电路每18个月翻一番,而软件开发周期落后于硬件。
2、社会需求及软件问题所导致的严重事故时有发生,给社会和有关单位带来损失。

4、什么是数据字典?它有什么作用?
答:数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。
作用:数据字典最重要的作用是作为分析阶段的工具。任何字典最重要的用途都是供人查询对不了解的条目的解释,在结构化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明

5、什么是软件工程的最基本含义?
软件工程是把系统化的、规范化的、可度量的方法应用于软件开发、运行和维护的过程,也就是把工程化运用于软件的过程,并对这样的方法进行研究。其研究的对像包括与软件开发和维护有关的技术和管理方法。也就是说,软件工程包含技术和管理两个方面的内容。软件的开发和维护即要有适用的技术,也要有严格的管理。

6、在画系统的分层数据流图时,需要注意哪些问题?
答:数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理

逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。
作用:数据字典最重要的作用是作为分析阶段的工具。任何字典最重要的用途都是供人查询对不了解的条目的解释,在结构化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明


、为了使开发组织能够严格控制软件项目,需求变更应遵循哪些原则?
1、仔细评估已建议的变更
2、挑选合适的人选对变更做出决定
3、变更应及时通知所有涉及的人员
4、项目要按一定的程序来采纳需求变更。

、简述总体设计的一般过程。
软件总体设计的主要任务是要建立软件系统的体系结构,即软件系统要划分多少模块,模块之间的层次结构和调用关系是怎样的。同时还要设计数据结构和数据库结构、人机接口等。在概要设计阶段需要完成的基本任务,有以下几个方面:采用某种设计方法,将一个复杂的系统按功能划分成模块的层次结构;确定每个模块的功能,建立与已确定的软件需求的对应关系;确定模块之间的调用关系;确定模块之间的接口,即模块之间的信息,设计接口的信息结构;评价模块划分的质量及导出模块结构的规则。 

什么是软件过程?软件过程着重描述什么?
软件过程是指软件生存周期所涉及的一系列相关过程。过程是活动的集合;活动是任务的集合;任务要起着把输入进行加工然后输出的作用。活动的执行可以是顺序的、重复的、并行的、嵌套的或者是有条件地引发的。

软件过程可概括为三类:基本过程类、支持过程类和组织过程类。基本过程类包括获取过程、供应过程、开发过程、运作过程、维护过程和管理过程。支持过程类包括文档过程、配置管理过程、质量保证过程、验证过程、确认过程、联合评审过程、审计过程以及问题解决过程。组织过程类包括基础设施过程、改进过程以及培训过程。

软件过程主要针对软件生产和管理进行研究。为了获得满足工程目标的软件,不仅涉及工程开发,而且还涉及工程支持和工程管理。对于一个特定的项目,可以通过剪裁过程定义所需的活动和任务,并可使活动并发执行。与软件有关的单位,根据需要和目标,可采用不同的过程、活动和任务。


、什么是类、对象和消息?
类具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类实际上就是一种数据类型。 类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。 类具有操作,它是对象的行为的抽象,用

操作名和实现该操作的方法来描述。
对象是具有相同状态的一组操作的集合。
消息是一个对像与另一个对象的通信单元,是要求某个对象执行类中定义的某个操作的规格说明。

2、什么叫面向对象?面向对象方法的特点是什么?
以对象为中心,以类和继承为构造机制来认识、理解、刻画客观世界和设计、构建相应的软件系统的方法叫面向对象方法。
特点:(1)对象唯一性。
每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。

(2)分类性。
分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。

(3)继承性。
继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。
(4)多态性(多形性)
多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。
、简述类之间存在的关系。
: 类之间的关系有:关联;聚合;组成和泛化
关联表示类与类之间的一种抽象关系,从说明层观点看,关联代表一种职责;
聚合关系表示类和类之间的整体和部分的关系;
组成关系是另外一种形式的聚合关系,部分对象仅属于一个整体对象,且部分对象与整体对象共存亡;
泛化关系也称继承关系。它是类之间的一般合特殊的关系。

简答题。(共4道试题,每题5分)

4、简述面向对象分析的一般步骤。
1、获取用户对面禹对象系统的需求,包括表示场景、用例,建造需求模型。
2、为每个系统对象标识属性和层次。
3、定义组织类的结构和层次。
4、建造对象一关系模型。
5、建造对象一行为模型。
6、使用场景、用例复审OO分析模型。


1、软件配置管理是否需要贯穿整个软件生存周期?说明原因。
:是 原因是:1.配置管理系统是组织内部信息交换的中心;2. 软件配置管理将软件生存期各开发阶段末尾的特定点定义为基线,实行变更控制,贯穿整个软件生存周期.

、软件开发过程中影响软件质量的因素都有哪些?
1、人的因素
2、软件需求
3、开发各个环节的衔接
4、测试的局限性
5、质量管理不够重视
6

、软件开发的非工程化和开发人员的传统习惯。
7、开发没有规范、标准。
8、技术上解决软件质量问题的局限性。

简答题。(共3道试题,每题5分)

3、程序注释如何分类?
注释从其整体观感和作用上可以分为两种:高级注释——说明程序功能并描述程序各组成部分相互关系:低级注释——逐行解释程序指令如何工作。
高级注释是必要和有用的:低级注释不利于读写和修改,是不必要的,也是难以维护的。

一、 简答题
1. 软件工程
软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。
2.软件危机
软件危机泛指在计算机软件的开发、维护和使用过程中所遇到的一系列严重问题。
3.软件危机有哪些表现,产生的原因有哪些?
软件危机的表现:
从宏观上说,软件危机主要是指:1软件的发展赶不上计算机硬件的发展2软件的发展赶不上社会对于软件需求的增长
从具体的软件来说,软件危机是指:1软件往往不能按计划、按预算、按时完成2已开发的软件不能很好的使用,甚至很快就不用
软件危机产生的原因:
(1) 软件需求分析不充分
(2) 软件开发的规范性不够
(3) 软件开发计划的科学性不够
(4) 缺少对于软件的评测手段
4.数据字典
数据字典是对系统用到的所有数据项和结构的精确定义,以确保开发人员使用统一的数据定义。数据字典与数据流图配合,能清楚地表达数据处理的要求。
5.与别的产品相比,软件有哪些特征?
1软件是一种逻辑实体,主要是人的脑力劳动的产物,软件具有抽象性2软件具有复杂性。3软件的维护具有长期性。4软件具有高成本性。
6.试述软件工程的基本原则
1用分阶段的生命周期计划严格管理2坚持进行阶段评审3实行严格的产品控制4采用现代程序设计技术5结果应能清楚地审查6结果应能清楚地审查7承认不断改进软件工程实践的必要性

7.试述瀑布模型有何优缺点
优点:它在支持结构化软件开发、控制软件开发的复杂性、促进软件开发工程化等方面起着显著的作用。
缺点:首先,瀑布模型它要求在软件开发的初始阶段明确软件系统的全部需求,在实际中做到这一点是很困难的,甚至是不现实的。其次,使用瀑布模型开发软件,用户和项目管理者要等很长时间才能得到一份软件的最初版本,如果用户对该软件提出了较大的改进意见,将使整个项目蒙受巨大的损失。
8.优秀的需求说明书应该具备哪些特点?
(1)完整性。需求规格说明书不能遗漏任何必要的需求信息,对于当前不能确定的,则使用“带确定”标示。
(2)无二义性。

对所有需求说明的读者都只能有一个明确统一的解释。
(3)一致性。与其他软件需求或高层(系统、业务)需求不相矛盾。
(4)可修改性。便于修改,并且在修改后维护需求的一致性、完整性和无二义性。
(5)可跟踪性。在进一步产生和改变文档编制时,可以方便的引证每一个需求。
9.结构化需求分析方法包含那些步骤?
(1)对现行系统的“物理环境”进行研究,获得现行系统的具体模型。分析现行系统的输入和输出,系统中的数据如何流经整个系统的,划出系统的数据流图,用具体的模型来表示自己对现行系统的理解。
(2)抽象出与现行系统模型等价的逻辑模型。对具体模型进行抽象,提取其一般的,本质的因素,去掉那些非本质的因素,获得反映系统本质的逻辑模型。
(3)建立目标系统的逻辑模型。要明确需要在现行系统上做哪些改变,根据新系统作要做的改变,参照现行系统逻辑模型,画出新的数据流图。
(4)补充目标系统的逻辑模型。确定目标系统的人机界面,补充一些尚未详细考虑的细节问题


10.在画系统的分层数据流图时,需要注意哪些问题?
(1) 加工的编号方法。根据加工的编号,应该能知道该加工属于哪一层,该加工的父图以及时从父图中的哪个加工分解得来的。
(2) 分解程度。应该使分解力求自然,使分解后各界面清晰,意义明确
(3) 父图与子图的平衡。子图中的输入输出应该和父图中相对应的加工的输入输出相一致,以保持数据流的平衡,保证加工过程的连续性和一致性。
(4) 文件的局部性。在只有文件成为两个或多个加工的接口时,才出现在该层及下层数据流图上。
11.用例模型
用于描述指定系统的用例,参与者和用例—参与者关联关系的组合。
12.在建立系统的用例模型时,如何确定系统的参与者?
为了有效地发现参与者,必须回答以下几个问题:
(1)谁是系统的主要用户,即谁使用系统的主要功能;
(2)谁从系统获得信息;
(3)谁向系统提供信息;
(4)谁来管理、维护系统,以保证系统的正常运行;
(5)系统需要与哪些其他的系统交互(包含其他的计算机系统或应用程序);
(6)为了完成系统的功能,需要哪些硬件设备的支持。
13.为了使开发组织能够严格控制软件项目,需求变更应遵循哪些原则?
(1)仔细评估已建议的变更;
(2)挑选合适的人选对变更做出决定;
(3)变更应及时通知所有涉及的人员;
(4)项目要按一定的程序来采纳需求变更。
五、应用题
1.对象是构成世界的一个独立单元,它具有自己的静态特征和动态特征。
类是具有相同属性和

操作的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,包括属性和操作两个部分。

消息是一个对象与另一个对象的通信单元,是要求某个对象执行类中定义的某个操作的规格说明。发送给一个对象的消息定义为一个操作名和一个实参数表(可能是空的)。
2.类之间的关系有:关联;聚集;组成和泛化
关联表示类与类之间的一种抽象关系,从说明层观点看,关联代表一种职责;
聚集关系表示类和类之间的整体和部分的关系;
组成关系是另外一种形式的聚集关系,部分对象仅属于一个整体对象,且部分对象与整体对象共存亡;
泛化关系也称继承关系。
3.Coad和Yourdon对面向对象给出了一个定义:“面向对象 = 对象 + 类 + 继承 + 消息通信”。
面向对象技术是一个非常实用的软件开发方法,具有以下特点。第一,开发方法的唯一性,即方法是对软件开发过程所有阶段进行综合考虑而得到的。二是从生存期的一个阶段到下一个阶段的高度连续性,即在一个阶段所用到的部分与在下一个阶段所使用的部分是衔接的,所使用的技术经过生存期每一阶段后不改变。最后,把面向对象分析、面向对象设计和面向对象程序设计集成到生存期的相应阶段。
4.用例模型用于系统需求的获取,描述系统的功能需求。
用例模型的主要成分有用例、参与者和系统。系统被看作一个提供用例的黑盒,系统如何做、用例如何实现、内部如何工作,这些对用例模型都是不重要的。创建用例模型的工作包括:定义系统,寻找参与者和用例,描述用例,定义用例之间的关系,最后确认模型,用例模型由用例图组成。
5.面向对象分析的一般步骤是:
1)获取用户对OO系统的需求,包括表示场景或者用例;建造需求模型。
2)为每个系统对象标识属性和操作。
3)定义组织类的结构和层次。
4)建造对象-关系模型。
5)建造对象-行为模型。
6)使用用例/场景复审OO分析模型



相关主题
文本预览
相关文档 最新文档