软件工程简答题专项训练

合集下载

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。

A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。

A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。

A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。

A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。

A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。

A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。

A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。

软件工程简答题及答案

软件工程简答题及答案

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

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

从逻辑模型出发,通过压缩旳设计,探索出若干种可供选择旳重要处理措施,对每种处理措施都要研究它旳可行性,可从如下三个方面分析研究每种处理措施旳可行性。

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

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

㈢社会可行性:要开发旳项目与否存在任何侵犯、阻碍等责任问题,要开发项目旳运行方式在顾客组织内与否行得通,既有管理制度、人员素质、操作方式与否可行。

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

一种模块旳控制范围指模块自身以及其所有下属模块(直接或间接附属于它旳模块)旳集合。

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

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

3、非渐增式测试与渐增式测试有什么区别?渐增式测试怎样组装模块?非渐增式测试与渐增式测试旳测试措施有如下区别:㈠非渐增式测试措施把单元测试和集成测试提成两个不一样旳阶段,前一阶段完毕模块旳单元测试,后一阶段完毕集成测试。

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

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

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

(完整word版)软件工程简答题必考

(完整word版)软件工程简答题必考

1、什么是软件工程?它目标和内容是什么?软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科.软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高.软件工程内容:包括开发技术和开发管理两个方面。

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

其中喷泉模型、统一软件过程适用于面向对象的软件开发.3、什么是结构分析方法?该方法使用什么描述工具?结构化分析:简称SA,面向数据流进行数据分析的方法.采用自顶向下逐层分解的分析策略.顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。

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

使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑.4、什么是软件概要设计?该阶段的基本任务是什么?把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。

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

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

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

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

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

(3)完善性维护。

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

(4)预防性维护。

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

6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系?软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试.单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。

软件工程常考简答题

软件工程常考简答题

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

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

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

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

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

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

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

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

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

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

软件⼯程_简答题复习题(带答案).. ..第⼀章1,与计算机硬件相⽐,计算机软件有哪些特点?软件的特点如下。

1)⽆法直接观察计算机软件的物理形态,只能通过观察它的实际运⾏情况来了解它的功能、特性和质量等。

2)⼈们在分析、设计、开发、测试软件产品,以及在软件开发项⽬的管理过程中,渗透了⼤量的脑⼒劳动。

3)不存在像硬件⼀样的磨损和⽼化现象,但存在着缺陷维护和技术更新的问题。

4)软件的开发和运⾏必须依赖于特定的计算机系统环境。

5)具有可复⽤性。

3,什么是软件危机?什么原因导致了软件危机?软件危机的现象如下。

1)经费超出预算,项⽬⼀再拖延。

2)不重视需求,开发的软件不能满⾜⽤户的要求,项⽬成功率低。

3)没有规的软件⼯程⽅法,软件可维护性差、软件质量差、可靠性差。

4)开发⼯具落后,⼿⼯⽅式,开发效率低。

所有导致软件危机的原因,都与软件本⾝的产品特点相关。

1)软件是⼀个复杂的逻辑产品。

如果没有解决复杂问题的有效⽅法,以及软件产品的结构、质量、可维护性得不到保障,开发与维护费⽤就会持续升⾼。

2)软件产品不能实现⼤规模复⽤,这导致了软硬件⽣产效率的不同。

3)软件⽣产是脑⼒劳动,它看不见、摸不着,开发成本、开发周期等都⽆法做到准确估算,⽣产过程不易控制。

4)软件成本主要是由研发成本构成;⽽硬件的⽣产成本主要是材料和制造成本,分摊的研发成本很少,即软件研发过程与硬件制造过程相⽐要复杂得多。

5,请简述软件⼯程研究的容。

软件⼯程研究的容包括软件开发⽅法、软件开发模型、软件⽀持过程和软件管理过程。

软件开发⽅法的容涵盖市场调研、正式⽴项、需求分析、项⽬策划、概要设计、详细设计、编程、测试、试运⾏、产品发布、⽤户培训、产品复制、销售、实施、系统维护、版本升级等。

常⽤的软件开发模型有瀑布模型、迭代模型、增量模型和原型模型等。

软件⽀持过程由所⽀持的CASE⼯具组成,常⽤的CASE⼯具有Power Designer和Rational Rose等。

软件工程(简答题)

软件工程(简答题)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

软件工程—简答题

软件工程—简答题

软件工程—简答题四、简答题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)。

简答题专项训练1.分阶段生命周期模型是如何辅助软件管理的?答:分阶段生命周期模型可以提高软件开发过程的可见性(1分),通过将阶段当作里程碑来更好地管理项目(2分);并且更加详细的阶段将会允许更加严密地监控进程(2分)。

2.根据瀑布模型为下列任务排序验收测试,项目计划,单元测试,需求复审,成本估计,总体设计,设计复审,市场调研,详细设计,系统测试,实现,编制需求规格说明书答:A,市场调研B,项目计划、成本估计、编制需求规格说明书(可同时进行)C,需求复审D,总体设计E,详细设计F,设计复审G,实现H,单元测试I,系统测试J,验收测试给分说明:A B正确,1分;A B C D正确,2分;A B C D E F正确,3分;A B C D E F G H正确,4分;A B C D E F G H I J正确,5分;3.常用的系统分析方法包括那些?答:功能分解法(1分),数据流方法(1分),信息建模方法(1分),面向对象方法(2分)4.请为C语言代码创建一个检查表(检查表即在复审过程中应当检查的项目列表)。

A,在结构体中所有的是否都初始化?(0.5分)B, 所有变量是否都声明了?(1分)C, “是否都有一个匹配的}” (1分)每一个{”“D, “每一个相等比较是否都有连个=”?(0.5分)E, “语句或if”“”条件语句都以;结束?(1分)任何while”“F, “”每一个类声明是否都以:结束?5.试简述一下软件开发的里程碑应具有的特征。

答:A,里程碑必须与软件开发过程中的进程先联系(2. 5分)B,当完成一个里程碑时必须是显而易见的。

6. 什么是软件体系结构问题。

答:简单来说,软件体系结构问题包括软件系统总体组织和全局控制(2分)、通信协议、同步、数据存取(1分),设计元素的功能分配和组织,规模和性能,以及在各设计方案间进行择等问题(2分)。

7. 模式和框架有什么不同之处?答:一般认为,模式和框架的不同之处在于。

1),设计模式比框架更加抽象。

框架可以在代码中体现,但在代码中只体现模式的实例。

(1分)2),设计模式是比框架小的结构元素。

一个典型的框架包括若干设计模式,但反之不能成立。

(2分)3),设计模式比框架有更广泛的意义,框架往往有一个特定的应用领域,而设计模式可用于几乎所有种类的应用之中。

(2分)8. 在软件开发环境中CASE工具的集成形式有哪几种?答:按照集成程度的高低,在软件开发环境中CASE工具的集成形式有以下几种:(1)信息交换(1分)(2)公共界面(1分)(3)公共信息管理与信息共享(2分)(4)高度集成(1分)9.软件生存周期分为那几个阶段?答:软件生存周期是指从提出软件的开发要求开始到软件报废为止的整个时期(2分)。

软件生存周期包括可行性分析和项目开发计划(1分)、需求分析、概要设计、详细设计(1分)、编码、测试、软件维护等阶段(1分)。

用户需要的矛盾,因而导致了计算机软件危机的出现(3分)。

10.软件危机产生的原因是什么?答:由于软件是一种特殊的逻辑产品,软件的生产有其特殊性。

软件生产经历了程序设计阶段,程序系统阶段,软件工程阶段,其中在软件生产的第二阶段主要采用小集团合作方式,当时由于计算机硬件技术的发展,计算机硬件价格降低,性能提高(2分),为计算机软件的应用和发展创造了条件。

一些建立大型,复杂的应用系统的需求不断提出,但是应用软件系统的开发技术,开发方法并不规范,同时由于程序员的技术素质不高,造成了应用软件系统的开发过程中出现了一些问题,导致了开发出的软件系统不能满足用户需要的矛盾,因而导致了计算机软件危机的出现(3分)。

11.软件危机的表现是什么?答::软件危机的具体表现是软件的开发计划难以制定。

进度难以控制(2分),开发出的软件系统不能满足用户的需求。

软件开发方法不规范,没有统一文档(1分)。

软件的可维护性差。

由于缺少软件的质量保证体系,缺少完整的测试机制,软件的可靠性差(2分)。

12.可行性分析阶段成果是什么?答:可行性分析和项目开发计划阶段主要是由用户提出软件开发的需求,系统分析员进行调查,明确软件开发的任务,边界,功能,规模后,进行可行性研究(3分),最终为用户提供软件项目可行性报告和项目开发计划,并将这些软件开发文档交用户进行讨论和审查。

(2分)13.数据字典的作用是什么?答:数据字典(DD)用于说明数据流图中各个元素含义的,对各个元素的说明是标准的,无二义性的(2分)。

数据字典是需求说明书的重要组成部分,数据字典和数据流图构成了系统的逻辑模型(2分)。

14.软件需求分析阶段的主要任务是什么?答,(1)收集来自用户各个方面对软件功能的要求,这些需求的表现形式是多样的,不系统的,有些甚至是不明确的。

(1分)(2)对得到的需求进行补充,完善和加工,利用软件开发的描述工具,如数据流图,数据字典表示出软件项目的逻辑结构。

(2分)(3)利用分析与综合的思想进行进一步的整理,形成软件需求说明书,以及其他相关的软件开发文档。

这些文档为后期的软件开发提供依据。

(2分)15.说明进行结构化分析的过程答:(1)分析当前系统的物理模型(1分)技术人员通过对当前系统的调查,分析出当前系统的实际工作过程。

(1.5分)(2)抽象出当前系统的逻辑模型(1分)在对当前系统进行分析后,区别出本质因素和非本质因素,得到系统的抽象工作16.JSP设计的过程是什么?答:JSP设计方法进行软件系统设计的步骤是分析和确定输入/输出数据的逻辑结构(1分),并用Jackson结构图表示出数据结构,得到输入/输出数据结构中对应关系的数据单元(1分),从输入/输出的数据结构中推导出程序结构,列出基本的操作和操作条件,用伪码编码(1分)。

17.软件详细设计阶段的任务是什么?答:(1)详细设计出模块的算法,将算法用有关设计工具如程序流程图,PAD图及过程设计语言描述出来。

(1分)(2)设计出模块内的数据结构(0.5分)(3)设计出数据库的结构和数据的存储模式(1分)(4)进行模块的编码设计,设计出模块的输入/输入出界面和人机对话接口。

(1分)(5)编写出详细设计的说明书(0.5分)(6)对详细设计阶段的工作进行评审。

(1分)18.如何提高软件程序的可移植性?答:软件的可移植性是指所设计的程序可以在不同的计算机环境中运行的容易程序。

在程序设计中,要提高程序的可移植性应当做到以下几点:(1分)A,选好程序设计语言,要选择标准的程序设计语言(1分)B,程序模块的算法与操作系统环境的联系不能十分密切。

(2分)C, 程序设计风格要规范。

(1分)19.如何具备良好的设计风格?答:为了保证整体程序风格的一致,在项目规划时注意做到一下几点:A,为了便于阅读和维护源程序,源程序中必须加上必要的注释,数据,变量也应当加说明。

(2分)B,程序的结构应当尽量简单(1分)C,所设计的输入输出应当尽量符合操作人员习惯(1分)D,应适当考虑程序运行的时间效率和空间效率。

(1分)20.黑盒法测试主要发现那些类型的错误?答:黑盒法测试主要发现的错误类型包括:检查是否有不正确或者遗漏的功能,(1.5分)能否正确接收数据并得到正确的输出,(1.5分)是否可以访问外部的信息,软件的性能是否满足设计的需要。

(2分)21.软件测试要经过那些步骤?答:软件测试要经过单元测试,集成测试,确认测试,系统测试四个阶段。

(1分)单元测试是对源程序中的每一个程序单元进行的测试,目的是发现模块中的错误。

(1分)集成测试是将各个模块组装起来进行的测试。

(1分)确认测试是检查已经实现的软件是否符合软件需求说明书的各种要求。

(1分)系统测试是对软件项目进行的综合测试。

(1分)22.非渐增式方法和渐增式方法的区别是什么?答:非渐增式方法和渐增式方法属于软件测试过程的集成测试(2分)。

非渐增式方法将所有经过测试的单元模块一起组装起来进行的测试(1分)。

渐增式方法采用逐步组装模块的方法,组装一部分测试一部分(1分)。

23.软件维护工作的特点是什么?答:在软件开发的过程中,如果各阶段没有严格的科学管理和规划,会给软件的维护带来一些困难。

不利于软件维护(1分)。

这主要是因为对于修改程序的人员来说,在原有基础上进行程序修改,读懂别人的程序比较困难(1分);在软件开发的过程中,文档与实际程序设计会存在一些差异。

软件开发与维护这两项工作在时间上,人员上存在差异,同时维护工作会遇到一些困难,因此软件的维护工作不是非常吸引人(3分)。

24.快速原型开发的过程是什么?答:快速原型开发方法可以按照快速分析(1分),构造原型(1分),运行原型(1分),评价原型(1分),修改原型的开发步骤进行(1分)。

25.说明对象设计的内容?答:对象设计包括设计对象,建立对象模型(1分),对象算法设计,优化设计(1分),实现对象控制(1分),调整对象继承(1分),设计对象关联关系(1分)。

26.说明建立对象模型的过程。

答:建立对象模型主要注意系统中对象的结构,对象的属性和对象的操作。

建立对象模型的过程是:A,首先确定对象和类,找到对象的属性,操作和方法(1分)B,确定类之间的关联关系和对象间的链。

(1分)C,确定类的层次结构(1分)D,形成对象模型(1分)E,说明对象设计的内容。

(1分)27.瀑布模型的局限性?答:软件开发的瀑布模型是一种线性的顺序模型,这种模型在软件的各个开发阶段存在着顺序性和依赖性,其中前一个阶段的工作是后一个阶段工作的基础(1分)。

同时这种模型强调预先定义需求的重要性。

但是,在实际的开发工作中,在软件开发的需求阶段,由于用户提出的需求本身是模糊的,这给软件开发的技术人员理解用户的需求带来了困难,软件开发的后期,用户可能会提出新的要求,因此软件需求是不断在变化的(3分)。

按照瀑布模型的规范,瀑布模型不能适合用户需求的改变。

由于这个问题的出现,使得软件开发的技术人员和用户之间难以沟通,软件的开发遇到了困难。

(1分)28.如何保证软件维护工作的进行?29.软件质量与软件质量保证的含义是什么?答:由于软件维护的工作周期长,费用高,因此维护工作也有可能产生一些副作用。

(2分)为了保证软件维护工作的顺利进行,软件维护应按照一定的工作流程进行,包括制定维护申请报告,审查并批准维护申请,进行维护并做详细记录,复查等工作。

(3分)30.为什么要做好软件工程的管理工作?答:由于软件本身的特点,为了避免软件危机的出现,所以软件项目采用软件工程化的思想进行软件开发(1分)。

由于软件工程是一项复杂的工作,所以需要相应的管理策略(1分)。

软件工程的管理工作非常重要,由于管理的失误造成项目的开发进度难以达到预期的要求,进度和资金的投入失控,这样对于软件的质量就难以把握了,所以应当切实做好软件工程的管理工作(3分)。

相关文档
最新文档