软件工程 简答题&综合题
软件工程—简答题

软件工程—简答题1. 什么是软件工程?软件工程是一门将工程学原理与方法应用于软件开发的学科。
它涉及对软件的设计、开发、测试、维护和管理等方面的技术和方法。
软件工程的目标是创建高质量和可靠的软件系统,以满足用户的需求。
通过使用软件工程的原则和技术,开发团队能够有效地管理和控制软件开发过程,并提供可维护和可扩展的软件解决方案。
2. 软件工程的基本原则有哪些?软件工程的基本原则包括:2.1 分阶段开发软件开发过程通常分为需求分析、设计、编码、测试和维护等阶段。
每个阶段都应该有明确的目标和任务,确保软件系统的稳定性和质量。
2.2 面向对象设计面向对象设计是一种将问题领域的概念与程序设计语言中的对象模型相匹配的方法。
通过将问题划分为一组相互关联的对象,可以更好地组织和管理软件系统的结构和功能。
2.3 模块化和组件化模块化和组件化是将软件系统划分为相互独立且可重用的模块或组件的过程。
这样可以提高软件系统的可维护性和可扩展性,并降低代码的重复性。
2.4 品质保证软件工程要求对软件系统进行全面的测试和验证,以确保其满足用户的需求和质量标准。
包括单元测试、集成测试、系统测试等各个层次的测试。
2.5 项目管理项目管理是软件工程中非常重要的一环,它涉及资源的分配、进度的控制、团队协作等方面。
通过合理的项目管理,能够提高软件开发的效率和质量。
3. 软件工程的开发模型有哪些?软件工程的开发模型有许多种,常见的包括:3.1 瀑布模型瀑布模型是最早提出的软件开发模型,它将软件开发过程划分为需求分析、系统设计、编码、测试和维护等连续的阶段。
每个阶段的输出作为下一个阶段的输入,依次进行。
3.2 增量模型增量模型将软件开发过程划分为多个独立的增量,每个增量都包含完整的开发过程。
每个增量都可以交付给客户使用或测试,这样可以更快地获取用户反馈并逐步完善系统。
3.3 原型模型原型模型通过快速开发一个原型来获取用户需求,并以此为基础进行详细设计和开发。
软件工程常考简答题

绪论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.什么是软件工程?简述软件工程的七条基本原理。
软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法来进行软件开发和维护的学科。
七条基本原理:用分阶段的生命周期计划严格管理;坚持进行阶段评审;实行严格的产品控制;采用现代程序设计技术;结果应能清楚地审查;开发小组的人员应该少而精;承认不断改进软件工程实践的必要性。
2.什么是软件生存周期模型?请至少列举四种主要的模型。
软件生存周期模型是软件开发全部过程、活动和任务的结构框架。
它能直观表达软件开发全过程,明确规定要完成的主要活动、任务和开发策略。
四种主要的模型:瀑布模型,演化模型,喷泉模型,螺旋模型、基于构件的开发模型3.为什么软件需要维护?简述软件维护的过程。
1)改正在特定使用条件下暴露出来的一些潜在程序错误或设计缺陷;2)因在软件使用过程中数据环境发生变化(如所要处理的数据发生变化)或处理环境发生变化(如硬件或软件操作系统等发生变化),需要修改软件,以适应这种变化;3)用户和数据处理人员在使用时常提出改进现有功能、增加新功能、以及改善总体性能的要求,为满足这些要求,需要修改软件。
软件维护的过程:首先建立维护的机构,申明提出维护申请报告的过程及评价的过程,为每一个维护申请规定标准的处理步骤,建立维护活动的记录保管,并规定复审的标准。
4.影响软件维护工作量的因素有哪些?1)系统大小。
系统越大,功能越复杂,理解掌握起来就越困难,需要的维护工作量越大。
2)程序设计语言。
使用功能强的程序设计语言可以控制程序的规模。
语言的功能越强,生成程序所需的指令数就越少;语言的功能越弱,实现同样功能所需的语句就越多,程序就越大,维护起来就越困难。
3)系统年龄。
老系统比新系统需要更多的维护工作量。
许多老系统在当初并未按照软件工程的要求进行开发,没有文档,或文档太少,或者在长期的维护中许多地方与程序不一致,维护起来困难较大。
4)数据库技术的应用。
使用数据库工具,可有效地管理和存储用户程序中的数据,可方便地修改、扩充报表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、1、简述软件的概念。
软件是计算机程序、数据结构和文档的有机结合。
2、什么是软件危机?落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。
这种现象早在20世纪60年代被定义为“软件危机”。
3、软件危机主要包含哪两方面的问题?一是如何开发软件,以满足对软件日益增长的需求;二是如何维护数量不断膨胀的已有软件。
4、简述软件危机产生的原因。
软件危机产生原因是由于软件产品本身的特点以及开发软件的方式,方法,技术和人员引起的:a)软件的规模越来越大,结构越来越复杂; b)软件开发的管理困难而复杂; c)软件开发费用不断增加; d)软件开发技术落后; e)生产方式落后;f)开发工具落后,生产率提高缓慢。
5、什么是软件工程?软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。
或软件工程是将系统性的、规范化的、可定量的方法应用于软件开发、运行和维护。
6、简述软件生存周期的概念。
软件生命周期由软件定义、软件开发、软件运行(维护)三个时期组成。
定义阶段的主要任务是解决“做什么”的问题。
通常被分为三个阶段:问题定义、可行性研究、需求分析。
开发阶段的任务是解决“如何做”的问题。
通常包括软件设计,实现,测试等工作。
维护阶段的主要任务是使软件保持用户满意的需要。
7、软件工程的目标和内容是什么?软件工程目标:软件工程旨在开发满足用户需要、及时交付、不超过预算和无故障的软件。
其主要内容如下:a)实现预期的软件功能,达到较好的软件性能,满足用户的需求;b)增强软件过程的可见性和可控性,保证软件的质量;c)提高所开发软件的可维护性,降低维护费用;d)提高软件开发生产率,及时交付使用;e)合理预算开发成本,付出较低的开发费用。
二、1、什么是项目?项目有哪两种常见形式?项目是在一定时间内满足一系列特定目标的多项相关任务的总称。
项目包括通用商业软件项目和定制软件项目。
2、简述项目的开发流程?答:招标、投标、合同签订、软件项目开发。
其中软件项目开发分成若干阶段,用软件生命周期表示,每个阶段包括规定的明确任务,建立里程碑,以及对里程碑进行验证。
3、简述软件生命周期各个阶段?项目计划阶段、需求分析阶段、系统设计阶段、编码测试阶段、综合测试阶段和运行维护阶段。
4、列举项目的主要角色?机构领导,项目经理,需求分析员,系统设计师、程序员、测试员、配置管理员、质量保证员和产品维护人员。
5、典型的项目组织方式有哪些?民主制程序员组、主程序员组和现代程序员组。
民主制程序员组:适合项目规模小,以2~8开发人员为宜组内多数成员经验丰富、技术熟练减少通信问题,容易制定小组的质量标准。
主程序员组:主程序员、后备程序员和编程秘书。
现代程序员组:技术负责人和行政负责人。
6、简述检查点、里程碑、基线三者的关系。
检查点比较细,里程碑比较粗,基线最粗;重要的检查点一般是里程碑,重要的里程碑一般就是基线。
在实际项目中,周例会时检查点的表现形式,高层的阶段汇报会是基线的表现形式。
7、软件生命周期计划阶段的主要任务?根据商业计划确定项目开发的总目标,估计项目需要的资源和软件项目成本,制定项目进度表等。
8、软件生命周期需求分析阶段的主要任务?确定系统“做什么”,即目标系统具备的功能需求及性能需求,通过充分有效地沟通,与用户达成一致,提交软件需求规格说明书和用户界面原型。
9、软件生命周期编码测试阶段的主要任务?包括编码和单元测试,按照编程规范,把设计结果写成正确的、容易理解和维护的代码,认真测试每一个模块。
三、1、可行性研究的要素包括哪些?经济,技术,社会,人和法律。
2、可行性研究的任务是什么?可行性研究的任务是对以后的行动方针提出建议。
如果问题没有可行的解,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费。
如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。
3、什么是系统流程图?系统流程图简称流程图或系统图,是概括地描绘物理系统的传统工具。
它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。
系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程。
4、可行性研究有哪些步骤及内容?(1)复查项目目标和规模:访问关键人员,仔细阅读分析材料,对问题定义阶段书写的规模目标报告书进一步复确认。
改正含糊或不准确,清晰描述对目标系统的一切限制和约束;(2)研究目前系统:了解现有系统基本功能,保证新开发系统的功能性。
了解现有系统缺点,保证新开发系统改善缺陷。
了解现有系统运行使用所需费用,新系统应增加收入或减少使用费用。
了解现有系统能做什么,无需了解他怎样做这些工作;(3)建立新系统的高层逻辑模型:系统流程图,数据流图和数据字典;(4)重新定义问题:分析员与用户以数据流图和数据字典为讨论基础,再次复查问题定义、工程规模和目标。
如对问题有误解,或遗漏要求,在此阶段改正。
5、简述软件质量的含义。
软件质量是“软件与明确地和隐含地和定义的需求相一致的一种程度”。
6、度量软件规模的常用技术主要有哪些?LOC(line of code,代码行)估算、FP(功能点)估算、DeLphi估算法和类比法。
7、简述成本估算的步骤。
(1)任务分解(2)估算每个任务的成本(3)直接估算成本(4)间接估算成本(5)项目总成本估算(6)项目总报价8、简述风险及风险管理的目标。
所有可能危害项目的因素都称之为风险,风险事件最终可能发生,也可能不发生,风险管理的目的是在风险产生危害之前识别它们,从而有计划地消除或削弱风险。
9、简述风险管理的主要过程。
风险识别,风险量化,风险应对计划制定和风险监控。
10、简述什么是CMM。
能力成熟度模型(capability maturity model,CMM)是用于评价软件机构的软件过程能力熟练度的模型。
分为初始级,可重复级,已定义级,已管理级和优化级5个等级。
CMM的策略是力图改进对软件过程的管理,而在技术方面的改进是其必然的结果。
11、简述工程网络图的绘制步骤。
(1)画工程网络图。
(2)计算事件的最早时刻。
(3)计算事件的最迟时刻。
(4)确定工程的关键路径。
(5)计算每个子任务的机动时间。
六、1、为什么要进行代码审查?代码审查是一种非常有效的程序验证技术,对于典型的程序来说,可以查出最多达70%的逻辑设计错误和编码错误。
2、简述代码审查的组织形式和内容?代码审查的形式主要有几种:同行评审;管理评审;单人评审;代码检查。
代码的审查内容主要有:代码的编写规范(注释的书写格式、命名规范、代码组织结构)、技术处理规范(异常处理、日志处理)、业务实现等。
3、代码审查的步骤?制定评审计划;评审准备;评审会议;对评审结果采取行动;评审结果跟踪;提交和归档。
七、1、进行软件测试的目的?目的是通过软件测试以最少的时间和人力找出软件中潜在的各种错误和缺陷。
2、简述什么是软件测试?软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。
执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。
3、简述什么是软件质量?软件质量就是“软件与明确的和隐含的定义的需求相一致的程度”。
具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。
4、简述什么是静态测试?不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。
5、简述什么是动态测试?通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能。
目前,动态测试是公司测试工作的主要方式。
6、软件测试原则有哪些?(1)尽早地和不间断地进行软件测试(2)测试用例应由测试输入数据和与之对应的预期输出结果两部分组成(3)程序员应避免检查自己的程序(4)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件(5)充分注意测试中的群集现象。
(6)严格执行测试计划,排除测试的随意性(7)应当对每一个测试结果做全面检查(8)妥善保管测试计划、测试用例、出错统计和最终分析报告,为维护提供方便八、1、什么是软件维护?软件维护主要是指根据需求变化或硬件环境的变化对应用程序进行部分或全部的修改,修改时应充分利用源程序。
修改后要填写程序修改登记表,并在程序变更通知书上写明新旧程序的不同之处。
2、什么是软件的可维护性?软件的可维护性可以定义为:软件能够被理解、改正、适应和完善以适应新的环境的难易程度。
3、软件维护的目标是什么?改正性维护:为了改正软件系统中的错误,使软件能够满足预期的正常运行状态的要求而进行的维护。
适应性维护:为了使软件适应内部或外部环境变化,而去修改软件的过程。
完善性维护:满足使用过程中用户提出增加新功能或修改已有功能的建议维护。
预防性维护:为了提高软件的可维护性、可靠性等,为以后进一步改进软件打下良好基础而修改软件的活动。
综合题1、学校有若干个系;每个系有若干教师和学生;每个教师可以讲授多门课程,每门课程可由多位教师讲授;一个项目由多个教师合作,且责任轻重有个排名,一个教师可以参与多个项目;每个学生可以同时选修多门课程,且有成绩;请画出此学校的教学管理系统的E-R图,并给出相应的关系模式。
各实体具有的属性如下:系:系号、系名、系主任;教师:教师号、教师名、职称;项目:项目号、项目名称、项目负责人;学生:学号、姓名、年龄、性别;课程:课程号、课程名、学分。
答案:关系提示:学生属于系,系管理教师,教师讲授课程,学生选修课程,教师参与项目关系模式如下:系(系号,系名,系主任)教师(教师号,教师名,职称,系号)项目(项目号,项目名称,项目负责人)学生(学号,姓名,年龄,性别,系号)课程(课程号,课程名,学分)选课关系(学号,课程号,成绩)项目组成(项目号,教师号,排名)授课关系(课程号,教师号)2、一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。
用库存量来表示某种零件在某个仓库中的数量。
一个仓库有多个职工,一个职工只能在一个仓库工作。
一个供应商可以供给若干项目多种零件,每个项目可以使用不同供应商供应的零件,每种零件可由不同供应商供给多个项目。
物资管理涉及的实体:仓库:属性有仓库号、面积、电话号码。
零件:属性有零件号、名称、规格、单价、描述。
供应商:属性有供应商号、姓名、地址、电话号码、账号。
项目:属性有项目号、项目名、预算、开工日期。
职工:属性有职工号、姓名、年龄、职务。
答案:关系提示:职工工作在仓库,仓库存放零件,供应商供应零件。