荟萃馆

位置:首页 > 计算机 > 计算机四级

计算机四级软件工程论述题

计算机等级考试四级软件工程论述题是很多考生的弱项,下面应届毕业生小编为此整理了计算机等级考试四级软件工程论述题,希望帮助大家提高考试成绩。

计算机四级软件工程论述题

软件测试是软件质量保证的重要措施。测试的目的是在软件投入生产性运行前,应尽可能地发现并排除软件中隐含的各种错误。测试是对软件规格说明、设计和编码的全面和最后的审查。因此,软件测试应贯穿在整个软件开发的全过程。

⑴试陈述软件测试的基本任务和方法。(6分)

⑵简述黑箱测试和白箱测试的内容和方法。(10分)

⑶陈述软件测试过程的基本组成,并介绍各种测试对象的测试内容和方法(15分)

答案:(1)软件测试是软件开发过程中的重要阶段,是软件质量保证的重要手段.其任务可归纳为三个方面:

1)预防软件发生错误

2)发现改正程序错误

3)提供错误诊断信息

目前,软件测试的方法有三种:动态测试,静态测试和正确性证明.

(2)黑箱测试是一种功能测试,测试时完全不考虑程序内部细节,结构和实现方式,仅检验程序结果与说明书的一致性.测试实例设计完全以说明书为准.黑箱测试不关心程序内部的逻辑,而只是根据程序的功能说明来设计测试用例.在使用黑箱法时,手头只需要有程序功能说明就可以了.黑箱法分以下几种:等价分类法.边缘值分析法,因果图法,错误推测法。

白箱测试是一种结构测试,它与程序内部结构相关,要利用程序结构的实现细节知识设计测试实例.它将涉及程序设计风格,控制方法,潭语句,数据库设计,编码细节.白箱测试时将包括:

1)语句测试——要求程序中每个语句最少检查一次.

2)分支测试——要求程序中每个分支路径最少检查一次.

3)路径测试——要求程序中每条路径最少检查一次.

白箱测试考虑的是测试实例对程序内部逻辑的覆盖程度.为了衡量测试的覆盖程度,需要建立一些标准.覆盖程序从低到高分别为:语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组全覆盖.

(3)

1)单元测试

通过测试发现该模块单元的子程序或过程的实际功能与该模块的功能和接口的描述是否相符,以及是否有编码错误存在.

2)集成测式

集成测试是在组装软件模块的同时,进行测试以查找与接口有关的错误.组装模块的过程可以分为自顶向下组装法和自底向上组装法.

3)有效性测试

有效性测试是指:当软件的运行达到了用户的期望时,则认为软件是有效的.

4)系统测试

系统测试是指将软件系统与硬件,外设或其他系统元素结合在一起,对整个软件系统进行测试.

5)验收测试

系统测试通过后,用户根据合同进行验收测试,确定系统功能和性能的可接受性.

2.(2000年)

原型化方法或称快速原型化方法是一种当前常用的软件工程方法,尽管其特征民传统的结构化生命周期法有所不同,但从原型化方法的演变仔细分析,仍可看出它与结构化方法的内在联系,试回顾两种方法的发展特征和演进历史并论述下述问题:

(1)两种方法的基本特征和内在联系。(14分)

(2)结构化生命周期方法的优点及其适应对象。(8分)

(3)实施快速原型法的前提和条件。(8分)

答案:

(1)结构化方法的基本特征:是一类预先严格定义需求的方法,它强调用户需求第一,并在需求分析报告中即基本冻结了用户的需求,其开发的阶段划分,文档的规范都基于需求定义的明确。

快速原型方法的基本特征:是一类动态定义需求的方法,它强调快速获取用户基本需求,快速建立需求模型,并与用户交互,迭代并修改和完善模型.

两种方法间的联系:结构化方法实施的过程,培养了一批熟悉业务,掌握领域知识的人员,他们是实施原型化的理想人员;结构化方法实施中形成了一批软件开发工具.它们使快速开发原型系统成为可能;结构化方法的应用积累了一批原型系统,为原型化方法实施提供了基础;原型化方法是一类需求定主的快速方法,一旦需求定义明确;即可实施严格的结构化方法.

(2)结构化生命周期方法的主要优点是:方法强调需求分析的重要性,即体现软件开发中用户至上的原则;开发过程的阶段划分,各阶段的具体任务明确;各阶段有具体的描述工具易于掌握;强调文档的重要性,并给出文档的内容和格式,因此方法具有易操作性,是软件开发人员应该掌握的基本方法.

结构化方法更适合于需求能够预先明确定义的软件系统,如系统软件或某些实时控制软件等.

(3)实施快速原型法的基本前提条件一般是:有高水平的实施原型化的人员,他们掌握工具,了解业务,能快速获取用户需求;有快速建造模型系统的工具,二者缺一不可.有相应原型系统的积累可加速实施,但不是实施原型化方法的前提. 3.(2001年)

软件产品生产周期长、耗资巨大,必须特别注意保证质量,而通常保证软件质量的措施可归为四方面,即复审、复查、管理复审和测试,不同的方面反映了软件质量保证措施中的不同需要,试回答以下问题并适当加以阐述:

(1)、复审、复查、管理复审和测试各自包括的具体内容是什么,它在哪些方面对软件质量的保证产生了作用?(12分)

(2)、软件复审和软件测试之间有什么联系,又有什么差别?各自有什么侧重?(6分)

(3)、软件测试的目的是什么,对其具体的内容和实现过程做—扼要陈述,无需对测试方法做出介绍、(12分)

答案:

本题主要考查考生对软件质量保证措施的全面了解程度。软件质量保证措施除了常规的对编码进行测试外,还有软件生命周期阶段成果的复审,对各阶段文档和材料的复查,从管理的角度对软件开发工作的复审以及对编码的测试,要求学生建立软件质量保证的整体概念。

(1)、关于复审、复查、管理复审和测试共12分,每方面给3分。

1)复审是搭在编码以前对分析、设计成果的非正规和正规审查,其重点是发现系统性的错误或缺点。

2)复查是指对阶段产生的文档和材料的检查,以保证下阶段工作的开始。

3)管理复查是指从项目管理的角度,从总体、成本和进度等方面进行检查。

4)测试是指对编码的查错和排错,应说测试的内容和过程,如单元测试、集成测试、系统测试等。

(2)、软件复审是软件在编码前对分析文档和设计文档的审查,其目的是发展和纠正在分析和设计阶段中可能产生的系统性错误,它是软件测试的固有和重要内容和步骤。软件测试是对基于正确设计基础上所开发的程序的测试。二者是从不同方面对软件质量的保证。

涉及到上述内容即可得6分,缺少可适当扣分。

(3)、软件测试的目的从编码阶段来说是发现程序中可能出现的错误并排除错误。测试的具体内容是从不同范围和对象中来发现可能存在的错误并排除之,包括:单元测试即对模块进行测试,再对由模块集成的子系统进行测试,再将子系统集成起来进行系统测试,测试中将应用到测试实例和测试数据。涉及到上述内容即可得12分,部分者可适当扣分。

4.(2002年)

软件维护是软件生命周期的重要组成,而影响维护的因素较多,除了人员因素、技术因素和管理因素外,还有程序自身的因素,具体影响因素可归纳为:

1)软件系统的规模;

2)软件系统的年龄;

3)软件系统的结构;

试回答以下问题:

(1).给出上述三项因素的解释,阐述“规模”、“年龄”和“结构”的具体含义。(10分)

(2).扼要分析影响维护工作量的因素,即分析可能增加维护工作量的因素和可能减少维护工作量的因素。(10分)

(3).简单叙述软件可维护性度量的含义。(10分)

答案:

(1).系统的规模。指软件系统规模的大小,系统规模越大,维护困难越大。

系统的年龄。系统运行时间越长,可能经过多次修改,从而造成维护的困难。

系统的结构。系统结构合理与否,会给维护带来困难。(符合上述要求的给10分,不足者可适当减分。)

(2).增加维护工作量的因素有:

软件系统的年龄和规模、结构合理性、程序复杂性、用户的数量、应用的变化和文档的质量。

减少维护工作量的因素有:

结构化技术的使用,自动化工具使用,数据库技术应用,高性能软件使用,新的软件技术的应用。(满足上述内容的给10分,否则根据回答的比例适当减分。)

(3).可维护性度量表示软件系统维护工作的强度或维护工作量的大小。人们为了度量可维护性,常将可维护性度量问题分解为对:可测试性、可理解性、可修改性、可移植性、可靠性、有效性和可用性的度量。(前三项每项2分,后四项每项1分。)5.(2003年)

软件维护是对交付使用以后的软件系统所做的.改变,从某种意义上讲,维护比开发更为困难,更需要计划和经验,也需要工具的辅助并加强管理,它需要进行创造性的工作,试根据你对软件维护的理解,回答并讨论以下问题:

(1).试划分软件维护阶段所执行的任务的归类。(注意,并不需要罗列软件维护的细节内容)(15分)

(2).试陈述软件维护管理所涉及的四个方面,并简述各方面所包括的具体内容。(15分)

答案:

(1).本题属于软件维护技术的相关内容,在软件维护阶段的任务归类中,将软件维护阶段的任务执行分为三部分:理解现有系统;修改现有系统;重新确认修改部分。

(2).软件维护管理包括四部分内容,它们是:

1)控制程序的改变

①论证程序改变的合理性改变来自多方面,要分析其要求的合理性,并不一定接收所有的改变要求。并应注意:

Ⅰ.维持目标中版本的选择方式,是单一版本,还是多用户版本。

Ⅱ.近期是否有替换该程序的计划,如有可推迟改变。

Ⅲ.是否改变程序的范围和目标,如是,则应慎重决定。

②对改变进行控制,除紧急任务外,其改变需按计划执行,改变控制应包括:

Ⅰ.研究程序如何改变,并安排计划。

Ⅱ.向改变申请者提供报告,改变计划或拒绝理由。

Ⅲ.执行计划。

2)程序质量检查

①保证程序设计标准。

②对改变过程进行检查。

3)安排维护计划

①研究改变申请,确定实现改变的可行性和费用。

②制定维护计划应考虑的因素:

Ⅰ.程序的稳定(持久)性。

Ⅱ.程序的错误类型。

Ⅲ.申请改变的用户数量。

4)建立维护机构

①建立专职维护结构--维护小组。

②设立专职维护人员。

③制定维护政策。 6.(2004年)

软件工程项目在实施中必须进行科学的管理,以保证工程的进度和质量。软件的配置管理是软件管理的重要内容之一。试述:

(1)软件配置和软件配置管理的概念。(12分)

(2)列举10个软件配置的配置项。(10分)

(3)软件配置管理的基本任务是什么?(8分)

答案:

(1) 一个完整的软件系统的构成就是软件配置.(4分)

软件配置管理是软件生命周期内管理变化的一组活动.包括:

1) 标识变化;

2) 控制变化;

3) 确保实现了变化;

4) 报告变化;(4分)

软件在设计,生产和使用中,会产生不同的版本.软件配置管理应对不同的软件版本进行标识和管理.(4分)

(2) 软件配置由配置项组成,软件配置项有:

·系统规格说明书

·项目开发计划

·软件需求说明书

·原型系统

·总体(或概要)设计说明书

·详细设计说明书

·源程序清单

·测试计划

·测试报告

·操作手册

·用户手册

·目标程序

·软件问题报告

·维护请求

·软件变更通知

·软件工程标准

·项目开发总结

(以上配置每回答项出1个给1分,越过10个最多给10分)

(3) 软件配置管理的基本任务包括:

1) 制定文件书写标准和标识方法.(2分)

2) 控制配置变更,记录与评价软件配置的.(2分)

3) 实现对已完成文档的存取管理和跟踪版本变化.(2分)

4) 对版本进行检查和维护.(2分)