软件工程—简答题

合集下载

软件工程—简答题

软件工程—简答题

软件工程—简答题1. 什么是软件工程?软件工程是一门将工程学原理与方法应用于软件开发的学科。

它涉及对软件的设计、开发、测试、维护和管理等方面的技术和方法。

软件工程的目标是创建高质量和可靠的软件系统,以满足用户的需求。

通过使用软件工程的原则和技术,开发团队能够有效地管理和控制软件开发过程,并提供可维护和可扩展的软件解决方案。

2. 软件工程的基本原则有哪些?软件工程的基本原则包括:2.1 分阶段开发软件开发过程通常分为需求分析、设计、编码、测试和维护等阶段。

每个阶段都应该有明确的目标和任务,确保软件系统的稳定性和质量。

2.2 面向对象设计面向对象设计是一种将问题领域的概念与程序设计语言中的对象模型相匹配的方法。

通过将问题划分为一组相互关联的对象,可以更好地组织和管理软件系统的结构和功能。

2.3 模块化和组件化模块化和组件化是将软件系统划分为相互独立且可重用的模块或组件的过程。

这样可以提高软件系统的可维护性和可扩展性,并降低代码的重复性。

2.4 品质保证软件工程要求对软件系统进行全面的测试和验证,以确保其满足用户的需求和质量标准。

包括单元测试、集成测试、系统测试等各个层次的测试。

2.5 项目管理项目管理是软件工程中非常重要的一环,它涉及资源的分配、进度的控制、团队协作等方面。

通过合理的项目管理,能够提高软件开发的效率和质量。

3. 软件工程的开发模型有哪些?软件工程的开发模型有许多种,常见的包括:3.1 瀑布模型瀑布模型是最早提出的软件开发模型,它将软件开发过程划分为需求分析、系统设计、编码、测试和维护等连续的阶段。

每个阶段的输出作为下一个阶段的输入,依次进行。

3.2 增量模型增量模型将软件开发过程划分为多个独立的增量,每个增量都包含完整的开发过程。

每个增量都可以交付给客户使用或测试,这样可以更快地获取用户反馈并逐步完善系统。

3.3 原型模型原型模型通过快速开发一个原型来获取用户需求,并以此为基础进行详细设计和开发。

软件工程简答题

软件工程简答题

1.请简要阐明软件过程旳概念和基本元素。

答案要点:软件过程是软件工程人员为了获得软件产品在软件工具支持下实行旳一系列软件工程活动,它应当明确定义如下元素:过程中所执行旳活动和其次序关系;每一种活动旳内容和环节;团体人员旳工作和职责.2. 软件工程包括哪些基本要素?请简要阐明这些要素和其作用。

答案要点:软件工程包括过程、措施和工具三个要素。

软件工程过程定义了技术措施旳采用、工程产品(包括模型、文档、数据、汇报、表格等)旳产生、里程碑旳建立、质量旳保证和变更旳管理,从而将人员、技术、组织与管理有机地结合在一起,实目前规定旳时间和预算内开发高质量软件旳目旳;.软件工程措施为软件开发提供了“怎样做”旳技术,一般包括某种语言或图形旳模型表达措施、良好旳设计实践以和质量保证原则等;工具:为软件工程旳措施提供自动或半自动旳软件支持环境辅助软件开发任务完毕。

3,请简要描述SWEBOK所包括旳10个知识域。

(1)软件需求(Software Requirements)(2 )软件设计(Software Design)。

(3)软件构造( Software Construction)。

(4) 软件测试(Software Testing)。

(5)软件维护(Software Maintenance)。

(6)软件配置管理(Software Configuration Management)。

(7)软件工程管理(Software Engineering Management)。

(8)软件工程过程(Software Engineering Process)。

(9)软件工程工具和措施(Software Engineering Tool and Method)。

(10)软件质量(Software Quality)。

4.需求工程包括哪些基本活动?每一项活动旳重要任务是什么?答案要点:需求工程分为需求开发和需求管理两个部分,而需求开发又可深入分为需求获取、需求分析、规格阐明和需求验证四个阶段。

软件工程常考简答题

软件工程常考简答题

绪论1、什么是软件工程?软件工程和计算机科学有何区别?答:软件工程是以计算机科学理论及其他有关学科旳理论为指导,采用工程化旳概念、原理、技术和措施进行软件旳开发和维护,把通过时间证明是对旳旳管理措施和目前可以得到旳最佳旳技术、措施相结合,以期用较少旳代价获取高质量旳软件。

计算机科学侧重于理论研究,其成果可应用于软件工程,而软件工程则强调怎样有效旳建造一种软件系统。

2、什么是软件?答:计算机软件是与计算机系统操作有关旳程序、规程、规则及任何与之有关旳文档及数据;3、什么是软件危机?分析其产生旳原因与挣脱危机旳措施,你认为目前已经挣脱软件危机了吗?请阐明理由。

软件危机是指在计算机软件旳开发和维护过程中所碰到旳一系列严重问题。

重要是两个问题:(1)怎样开发软件,怎样满足对软件旳日益增长旳需求;(2怎样维护数量不停膨胀旳已经有软件;软件危机旳出现,究其原因,首先是由软件自身旳特点引起旳,如软件越来越复杂,软件故障难于检测,工作量难以估计;另首先则是由于软件开发和维护措施不妥所导致旳,如软件旳个体化特性太强等。

为了挣脱软件危机所导致旳困境,提出软件工程旳概念,其重要思绪是:要把人类长期以来从事多种工程项目所积累起来旳行之有效旳原理,概念,技术和措施,尤其是人类从事计算机硬件研究和开发旳经验教训,应用到软件旳开发和维护中来。

我认为我国目前尚未完全挣脱软件危机,由于伴随经济发展,各行各业对软件人才旳需求不停扩大,由于我国旳软件人才缺口仍旧很大,导致了某些行业内软件开发进度难以预测,软件开发成本难以控制,顾客对产品功能难以满足,软件产品质量无法保证,软件产品难以维护,软件缺乏合适旳文档资料。

4、软件产品旳特性是什么?软件是一种逻辑产品,具有无形性;软件产品旳生产重要是研制;软件不存在磨损和老化问题,但存在退化问题;软件产品旳生产重要是脑力劳动;软件产品生产成本昂贵,目前生产方式尚未挣脱手工生产方式;软件具有“复杂性”,其开发和运行常受到计算机系统旳限制。

软件工程简答题

软件工程简答题

软件工程简答题三、简答题(简要回答下列问题)1、什么就是软件工程?它目标与内容就是什么?软件工程就就是用科学的知识与技术原理来定义,开发,维护软件的一门学科。

软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。

软件工程内容:包括开发技术与开发管理两个方面。

2、软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发?软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。

其中喷泉模型、统一软件过程适用于面向对象的软件开发。

3、什么就是结构分析方法?该方法使用什么描述工具?结构化分析:简称SA,面向数据流进行数据分析的方法。

采用自顶向下逐层分解的分析策略。

顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。

中间层则就是从抽象到具体的过渡。

使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。

4、什么就是软件概要设计?该阶段的基本任务就是什么?把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。

称为概要设计或结构设计。

基本任务:⑴设计软件系统结构⑵进行数据结构及数据库的设计⑶编写概要设计的文档⑷评审5、软件维护有哪些内容?(1)校正性维护。

在软件交付使用后,一些隐含的错误在某些特定的使用环境下会暴露出来。

为了识别与纠正错误,修改软件性能上的缺陷,应进行确定与修改错误的过程,这个过程就称为校正性维护。

(2)适应性维护。

为了使应用软件适应计算机硬件、软件环境及数据环境的不断发生的变化而修改软件的过程称为适应性维护。

(3)完善性维护。

为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。

(4)预防性维护。

为了提高软件的可维护性与可靠性而对软件进行的修改称为预防性维护。

6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系?软件测试要经过的步骤就是:单元测试→集成测试→确认测试→系统测试。

软件工程(简答题)

软件工程(简答题)

1、典型的详细设计工具有流程图、盒图、、类程序设计语言。

问题反馈【教师释疑】正确答案:【PAD图】2、UML是一种语言。

问题反馈【教师释疑】正确答案:【可视化】3、类是一组具有属性、操作、关系和语义的对象的描述。

问题反馈【教师释疑】正确答案:【相同】4、对象是类的一个。

问题反馈【教师释疑】正确答案:【实例】5、用况图是一种表达系统模型的图形化工具。

问题反馈【教师释疑】正确答案:【功能】6、UML中的顺序图是一种交互图,即由一组对象以及按组织的对象之间的关系组成。

问题反馈【教师释疑】正确答案:【时序】7、模块的作用域是指受该模块内一个所影响的所有模块的集合。

问题反馈【教师释疑】正确答案:【判定】8、模块的控制域是指这个模块本身以及所有直接或间接它的模块的集合。

问题反馈【教师释疑】正确答案:【从属于】9、在数据流图中引入数据源和数据潭这两个术语的目的是为了表示系统的,可以使用它们和相关数据流来定义系统的。

问题反馈【教师释疑】正确答案:【环境|边界】10、模块结构图是系统的一个高层蓝图,允许设计人员在较高的层次上进行抽象思维。

模块结构图可用和两种形式来表示。

问题反馈【教师释疑】正确答案:【层次图|HIPO图】11、在设计模块结构图时要基于原则来设计模块。

问题反馈【教师释疑】正确答案:【高内聚低耦合】12、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“尽力使模块的在其控制域之内”。

问题反馈【教师释疑】正确答案:【作用域】13、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“力求深度、宽度、扇出和扇入”。

问题反馈【教师释疑】正确答案:【适中】14、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“改进软件结构,提高模块的”。

软件工程简答题及答案

软件工程简答题及答案

软件工程简答题及答案软件工程试题整理_ 简答题1、可行性研究的任务是什么?首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。

然后,分析员进行简要的需求分析,抽象出该项目的逻辑结构,建立逻辑模型。

从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,可从以下三个方面分析研究每种解决方法的可行性。

㈠技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。

㈡经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。

㈢社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。

2、什么是模块的影响范围?什么是模块的控制范围?他们之间应该建立什么关系?一个模块的作用范围(或称影响范围)指受该模块内一个判定影响的所有模块的集合。

一个模块的控制范围指模块本身以及其所有下属模块(直接或间接从属于它的模块)的集合。

一个模块的作用范围应在其控制范围之内,且判定所在的模块应在其影响的模块在层次上尽量靠近。

如果再设计过程中,发现模块作用范围不在其控制范围之内,可以用“上移判点” 或“下移受判断影响的模块,将它下移到判断所在模块的控制范围内”的方法加以改进。

3、非渐增式测试与渐增式测试有什么区别?渐增式测试如何组装模块?非渐增式测试与渐增式测试的测试方法有以下区别:㈠非渐增式测试方法把单元测试和集成测试分成两个不同的阶段,前一阶段完成模块的单元测试,后一阶段完成集成测试。

而渐增式测试往往把单元测试与集成测试和在一起,同时完成。

㈡非渐增式需要更多的工作量,因为每个模块都需要驱动模块和桩模块,而渐增式利用已测试过的模块作为驱动模块或桩模块,因此工作量较少。

㈢渐增式可以较早的发现接口之间的错误,非渐增式最后组装是才发现。

软件工程—简答题

软件工程—简答题

软件工程—简答题四、简答题1. 简述软件危机产生的原因。

答案:软件危机产生的原因有:(每点1分)(1)软件的规模越来越大,结构越来越复杂。

(2)软件开发的管理困难。

由于软件规模大,结构复杂,又具有无形性,导致管理困难,进度操纵困难,质量操纵困难,可靠性无法保证。

(3)软件开发费用不断增加。

软件生产是一种智力劳动,它是资金密集、人力密集的产业,大型软件投入人力多,周期长,费用上升很快。

(4)软件开发技术、开发工具落后,生产率提高缓慢。

(5)生产方式落后。

软件仍然使用个体手工方式开发。

2. 简述需求分析的概念及需求分析的基本任务。

答案:需求分析是指开发人员要准确懂得用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

(3分)需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统务必“做什么”的问题。

(2分)3. 简述数据流图的分类及每一类的特点。

答案:数据流图有两类:变换型数据流图与事务型数据流图。

(1分)变换型数据流图是由输入、处理与输出三部分构成,(1分)因此变化型数据流图是一个顺序结构。

(1分)事务型数据流图特征:事务处理中心将它的输入流分离成许多发散的数据流,形成许多加工路径,(1分)并根据输入的值选择其中一个路径来执行。

(1分)4. 简述建立对象模型的过程。

答案:建立对象模型的步骤如下:(每点1分)(1)确定类:标出来自问题域的有关对象类。

(2)准备数据字典:为所有建模实体准备一个数据字典,准确描述各对象类的精确含义,描述当前问题中的类的范围,包含对类的成员、用法方面的假设或者限制;(3)确定关联:确定二个或者多个类之间的相互依靠;(4)确定属性:只考虑与具体应用直接有关的属性(5)使用继承来细化类:使用继承来共享公共结构,以此来重新组织类__全国2010年1月1.简述软件工程面临的问题。

软件工程 简答题复习题(带答案)

软件工程 简答题复习题(带答案)

软件工程简答题复习题(带答案)软件工程简答题复习题(带答案)1. 什么是软件工程?软件工程是一种系统化、规范化、可量化的方法,用于开发、维护和测试软件系统的过程。

它涵盖了软件开发的各个方面,包括需求分析、设计、编码、测试和维护等。

2. 软件开发生命周期有哪些阶段?常见的软件开发生命周期包括需求分析、系统设计、详细设计、编码、测试、部署和维护等阶段。

3. 什么是需求分析?需求分析是软件开发过程中的第一步,它涉及与客户进行沟通和理解客户需求的过程。

通过需求分析,开发团队可以明确软件系统的功能和性能要求,并将这些要求转化为详细的规格说明。

4. 需求分析的主要目标是什么?需求分析的主要目标是确保开发团队和客户对软件系统的需求达成共识。

它需要明确软件系统的功能需求、性能需求和约束条件,以便后续的设计和开发工作能够按照这些需求进行。

5. 什么是软件设计?软件设计是在需求分析的基础上,根据系统需求和约束条件,将系统划分为模块,确定模块之间的接口和关系,设计出满足系统需求的软件结构和算法的过程。

6. 软件设计的原则有哪些?常见的软件设计原则包括单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、依赖倒置原则(DIP)、接口隔离原则(ISP)和迪米特法则(LoD)等。

7. 什么是软件测试?软件测试是为了评估系统的质量和功能是否满足需求的过程。

它通过设计和执行测试用例,检查系统的输出是否符合预期,并发现潜在的错误和缺陷。

8. 软件测试的分类有哪些?软件测试可以分为单元测试、集成测试、系统测试和验收测试等不同的层次。

单元测试用于测试软件的最小功能单元,集成测试用于测试不同模块之间的交互,系统测试则测试整个系统的功能和性能,验收测试是由客户进行的测试,以确认系统是否达到了合同中规定的要求。

9. 什么是软件维护?软件维护是在软件交付给客户后,为了保证其正常运行和适应环境变化而进行的一系列活动。

维护包括错误修复、性能优化、功能扩展等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

全国2010年10月四、简答题1. 简述软件危机产生的原因。

答案:软件危机产生的原因有:(每点1分)(1)软件的规模越来越大,结构越来越复杂。

(2)软件开发的管理困难。

由于软件规模大,结构复杂,又具有无形性,导致管理困难,进度控制困难,质量控制困难,可靠性无法保证。

(3)软件开发费用不断增加。

软件生产是一种智力劳动,它是资金密集、人力密集的产业,大型软件投入人力多,周期长,费用上升很快。

(4)软件开发技术、开发工具落后,生产率提高缓慢。

(5)生产方式落后。

软件仍然采用个体手工方式开发。

2. 简述需求分析的概念及需求分析的基本任务。

答案:需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

(3分)需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。

(2分)3. 简述数据流图的分类及每一类的特点。

答案:数据流图有两类:变换型数据流图和事务型数据流图。

(1分)变换型数据流图是由输入、处理和输出三部分组成,(1分)因此变化型数据流图是一个顺序结构。

(1分)事务型数据流图特征:事务处理中心将它的输入流分离成许多发散的数据流,形成许多加工路径,(1分)并根据输入的值选择其中一个路径来执行。

(1分)4. 简述建立对象模型的过程。

答案:建立对象模型的步骤如下:(每点1分)(1)确定类:标出来自问题域的相关对象类。

(2)准备数据字典:为所有建模实体准备一个数据字典,准确描述各对象类的精确含义,描述当前问题中的类的围,包括对类的成员、用法方面的假设或限制;(3)确定关联:确定二个或多个类之间的相互依赖;(4)确定属性:只考虑与具体应用直接相关的属性(5)使用继承来细化类:使用继承来共享公共结构,以此来重新组织类__全国2010年1月1.简述软件工程面临的问题。

答:容:①软件开发技术②软件开发管理面临的主要问题:①软件费用②软件可靠性③软件维护④软件生产率⑤软件重用2.简述可行性研究报告包含的主要容。

技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。

包括:开发的风险;资源的有效性;技术;开发人员在评估技术可行性时,一旦估计错误,将会出现灾难性后果。

经济可行性:包括成本――效果分析、公司经营长期策略、开发所需的成本和资源、潜在的市场前景。

社会可行性包括:合同、责任、侵权、用户组织的管理模式及规,其他一些技术人员常常不了解的陷阱等。

3.简述软件结构设计的优化准则。

答:(1)模块独立性准则,即尽量高聚,低耦合,保持模块相对的独立性,并以此原则优化软件结构;(2)控制围与作用围之间的准则,一个模块的作用围应在其控制围之,且条件判断所在的模块应与受其影响的模块在层次上尽量靠近;(3)软件结构的形态特征准则,软件结构的深度、宽度。

扇入、扇出应适当;(4)模块的大小准则,模块的大小最好控制在50~150条语句左右,以便于阅读研究;(5)模块的接口准则,模块的接口要简单。

清晰及含义明确,以便于理解、实现、测试和维护。

4.简述快速原型的开发步骤。

答:快速原型开发步骤可划分下列阶段:(1)快速分析:迅速确定基本需求、集中力量确定需求说明。

(2)快速构造原型:在快速分析基础上,在强有力的软件工具支持下,快速构造所需原型。

(3)运行原型:在开发者指导下,用户参与原型的运行,各类人员在共同运行原型中进一步加深对系统的了解及相互间的理解,以发现各种问题。

(4)评价原型;在运行基础上,根据原型目标,考核原型的特性,分析原型效果是否满足用户需求,提出修改意见。

(5)修改原型:在评价基础上进行修改。

若不满足需求说明,则根据明确的需求修改原型。

若不满足用户需求,则先修改并明确用户需求,再重新构造原型。

2008年10月1. 软件生存周期可以分为几个阶段,每个阶段的提交物是什么?答案:(1)可行性研究和项目开发计划,提交项目开发计划和可行性分析报告;(2)需求分析,提交软件需求说明书;(3)概要设计,提交概要设计说明书;(4)详细设计,提交详细设计说明书;(5)编码,提交源程序清单;(6)测试,提交测试报告;(7)维护,提交维护报告。

(1点1分,答对5点以上可得满分)2. 结构化分析的描述工具有哪些?简述结构化分析的步骤。

答案:结构化分析的描述工具有:(1)数据流图,(2)数据字典,(3)描述加工逻辑的结构化语言、判定表、判定树。

(1分)(1)了解当前系统的工作流程,获取当前系统的物理模型;(1分)(2)抽象出当前系统的逻辑模型;(1分)(3)建立目标系统的逻辑模型;(1分)(4)作进一步补充和优化。

(1分)3. 什么是黑盒测试法?常用的黑盒测试方法有哪些?答案:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的部结构和处理过程。

(1分)黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性。

黑盒测试又称为功能测试。

(2分)常用的黑盒测试方法有等价类划分、边界值分析、错误推测、因果图。

(2分,每答对两个1分)4. 简述面向对象的特征。

答案:(1)对象唯一性:每个对象都有自身唯一的标识,通过这种标识,可以找到相应的对象。

(1分)(2)分类性:分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。

(1分)(3)继承性:继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。

(1分)(4)多态性:多态性是指相同的操作或函数、过程作用于多种类型的对象上并获得不同的结果。

不同的对象收到同一消息可以产生不同的结果。

(2分)2007年10月1. 简述软件工程过程的含义、目的以及包含的子过程。

答案:软件工程过程规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。

(1分)其目的是为各种人员提供一个公共的框架,以便用相同的语言进行交流。

(1分)软件工程过程包含七个子过程:(3分)(1)获取过程;(2)供应过程;(3)开发过程;(4)操作过程;(5)维护过程;(6)管理过程;(7)支持过程。

2. 数据字典的作用是什么,它有哪些条目?答案:数据字典是用来定义数据流图中的各个成分的具体含义的,它以一种准确的、无二义性的说明方式,为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。

它和数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。

(3分)[JP3]数据字典包含以下几个条目:数据流条目、数据存储条目、数据项条目、加工条目。

(2分)3. 简述结构化程序设计方法的基本要点。

答案:(1)采用自顶向下、逐步求精的程序设计方法:在需求分析、概要设计中,都采用了自顶向下、逐层细化的方法。

(1分)(2)使用三种基本控制结构构造程序,分别是顺序、选择和循环,这三种基本结构的共同点是单入口、单出口,为自顶向下、逐步求精的设计方法提供了具体的实施手段。

(2分)(3)采用主程序员组的组织形式:指开发程序的人员组织方式应用由一个主程序员、一个后备程序员和一个程序管理员三人为核心,再加上一些专家、其他技术人员组成小组。

(2分)4. 简述原型的开发步骤。

答案:(1)快速分析:在分析人员与用户紧密配合下,迅速确定系统的基本需求,根据原型所要体现的特征描述基本需求以满足开发原型的需要;(1分)(2)构造原型:在快速分析的基础上,根据基本需求说明尽快实现一个可运行的系统;(1分)(3)运行原型:这是发现问题、消除误解、开发者与用户充分协调的一个步骤;(1分)(4)评价原型:在运行的基础上,考核评价原型的特性,分析运行效果是否满足用户的愿望,纠正过去交互中的误解与分析中的错误,增添新的要求;(1分)(5)修改:根据评价原型的活动结果进行修改。

(1分)2006年10月1. 增量构造模型有什么特点?答案:增量构造模型是部分阶段进行增量开发,即在该模型中,需求分析阶段和设计阶段与瀑布模型一样,按照瀑布模型方式进行开发,(1分)而编码和测试阶段不采用瀑布模型方式,而采用增量方式开发,(1分)即先对部分功能进行编码,进行测试,将这部分功能提交用户,然后再对另一部分功能进行编码,测试提交用户,直到把全部功能按这种方式开发完毕,(1分)在这种模型中,用户可以及早看到部分软件功能,及早发现问题,以便在其它软件功能开发时及时解决。

(2分)2. 软件测试要经过哪些步骤?简述这些测试的基本任务。

答案:(1)单元测试、集成测试、确认测试、系统测试。

(1分)(2)单元测试:对源程序中的每个程序单元进行测试,检查各模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。

(1分)(3)集成测试:检查与设计相关的软件结构的有关问题。

(1分)(4)确认测试:主要检查已实现的软件是否满足需求规格说明书中确定了的各种需求。

(1分)(5)系统测试:把已确认的软件与其它系统元素结合在一起进行测试。

(1分)3. 简述需求分析方法应遵循的基本原则。

答案:应遵循的基本原则:(1)必须能够表达和理解问题的数据域和功能域;(2分)(2)可以把一个复杂问题按功能进行分解并可逐层细化;(2分)(3)建模。

(1分)4. 模块间的耦合性包括哪些类型?答案:模块的耦合性包括:(1)无直接耦合;(2)数据耦合;(3)标记耦合;(4)控制耦合;(5)公共耦合;(6)容耦合。

(少一点扣1分)2005年10月1. 软件工程面临的主要问题有哪些?答案:(1)软件费用;(1分)(2)软件可靠性;(1分)(3)软件可维护;(1分)(4)软件生产率;(1分)(5)软件重用。

(1分)2. 软件配置管理的作用及其主要目标是什么?答案:软件配置管理用于整个软件工程过程。

其目的是协调整个软件的开发,使得混乱减少到最小程度,使得变更所产生的错误达到最小并最有效地提高生产率。

(3分)它的主要目标是:标识变更;控制变更;确保变更的正确实现;报告有关变更。

(2分)3. 简述SA步骤。

答案:SA分析的主要步骤:(1)了解当前系统的工作流程,获得当前系统的物理模型;(2)抽象出当前系统的逻辑模型;(3)建立目标系统的逻辑模型;(4)作进一步补充和优化。

(第一点2分,其他点1分)4. 软件复杂性主要体现在哪些方面?减少软件复杂性有哪些优点?答案:软件复杂性主要表现在程序复杂性,而程序的复杂性主要指模块程序的复杂性。

它直接关联到软件开发费用的多少、开发周期长短和软件潜伏错误的多少。

(3分)减少程序的复杂性,可提高软件的简单性和可理解性,并使软件开发费用减少,开发周期缩短,软件部潜伏错误减少。

相关文档
最新文档