(软考软件设计师)软件工程习题200题

合集下载

软件工程练习题

软件工程练习题

软件工程选择题:(B)1.“软件危机”产生的主要原因是。

A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件(D)2.软件工程学的一个重要目标是。

A.提高程序的执行效率B.降低程序对存储空间的要求C.提高软件的可理解性D.提高软件的可维护性(D)3.编写程序的工作量通常占用软件开发总工作量的。

A.80%B.60%C.40%D.20%(A)4.数据字典是对数据定义信息的集合,它所定义的对象都包含于A.数据流图B.程序框图C.软件结构D.方框图(B)5.可行性分析是在系统开发的早期所做的一项重要的开发的决策依据,因此必须给出的回答。

A.确定B.行或不行C.正确D.无二义(C)6.需求分析阶段最重要的技术文档之一是。

A.项目开发计划B.设计说明书C.需求规格说明书D.可行性分析报告(C)7.为了提高模块的独立性,模块内部最好是( )。

A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚(D)8.需求分析阶段的任务是确定。

A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能(D)9.一个成功的测试可以。

A.表明程序没有错误B.发现所有错误C.提高软件可靠性D.发现尚未发现的错误(A)10.关联是建立之间关系的一种手段。

A.类B.对象C.角色D.属性(A)11.软件详细设计的主要任务是确定每个模块的。

A.算法和使用的数据结构B.外部接口C.功能D.编程(B)12.程序的三种基本控制结构是( )。

A.过程、子程序积分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移(D)13.软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试。

A.结构合理性B.软件外部功能C.程序正确性D.程序内部逻辑(B)14.在软件开发和维护的过程中,为了定量地评价软件质量,必须对软件特性进行A.测试B.度量C.评审D.维护(A)15.在软件工程学中,我们把一组具有相同数据结构和相同操作的对象的集合定义为,此定义包括一组数据属性和在数据上的一组合法操作。

软件工程师考试题及答案

软件工程师考试题及答案

软件工程师考试题及答案1. 以下哪个选项是面向对象编程的核心概念?A. 函数B. 过程C. 封装D. 模块化答案:C2. 在数据库设计中,为了提高数据的一致性和减少数据冗余,通常采用哪种范式?A. 第一范式(1NF)B. 第二范式(2NF)C. 第三范式(3NF)D. BCNF范式答案:C3. 在软件开发过程中,哪种测试是在软件开发周期的早期阶段进行的,目的是验证软件需求?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:D4. 以下哪个算法是用于解决图论中的最短路径问题?A. 快速排序B. 深度优先搜索C. 迪杰斯特拉算法D. 堆排序答案:C5. 在敏捷开发方法中,以下哪个实践是用于促进团队成员之间的沟通和协作?A. 持续集成B. 代码审查C. 每日站立会议D. 功能驱动开发答案:C6. 在编程语言中,多态性允许什么?A. 一个类继承多个父类B. 一个方法有多个不同的实现C. 一个变量可以存储不同类型的数据D. 一个接口有多个不同的实现答案:B7. 在软件工程中,软件维护的哪个阶段涉及到对现有代码的改进,以提高性能或增加新功能?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:C8. 在关系数据库中,哪个SQL命令用于从数据库中检索数据?A. INSERTB. UPDATEC. DELETED. SELECT答案:D9. 在软件开发中,设计模式是什么?A. 一组最佳实践B. 一组预先定义的软件架构解决方案C. 一组编程语言的集合D. 一组软件测试工具答案:B10. 在Web开发中,以下哪个技术用于在客户端和服务器端之间进行数据交换?A. AJAXB. SOAPC. RESTD. 以上都是答案:D。

《软件工程》经典考试例题题,重点的知识点(含答案)

《软件工程》经典考试例题题,重点的知识点(含答案)

1.某旅馆的电话服务如下:可以拨分机号和外线号码。

分机号是从7201至7299。

外线号码先拨9,然后是市话号码或长话号码。

长话号码是以区号和市话号码组成。

区号是从100到300中任意的数字串。

市话号码是以局号和分局号组成。

局号可以是455,466,888,552中任意一个号码。

分局号是任意长度为4的数字串。

要求:写出在数据字典中,电话号码的数据流条目的定义即组成。

电话号码=[分机号|外线号码]分机号=7201 (7299)外线号码=9+[市话号码|长话号码]长话号码=区号+市话号码区号=100 (300)市话号码=局号+分局号局号=[455|466|888|552]分局号=4{数字}4数字=[0|1|2|3|4|5|6|7|8|9]2.为以下程序流程图分别设计语句覆盖和判定覆盖测试用例,并标明程序执行路径。

(1)语句覆盖测试用例令x=2,y=0,z=4作为测试数据,程序执行路径为abcde。

(2)判定覆盖可以设计如下两组数据以满足判定覆盖:x=3,y=0,z=1(1分)(通过路径abce);x=2,y=1,z=2(1分)(通过路径acde)。

或者x=2,y=1,z=1;覆盖路径acdex=1,y=1,z=1;覆盖路径acex=3,y=0,z=1;覆盖路径abce(注意:本题也还可以有其他答案)3.请用判定表画出以下问题的行为逻辑。

人们往往根据天气情况决定出门时的行装。

天气可能下雨,也可能不下雨;下雨或不下雨天气可能变冷,也可能不变冷。

如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。

4.对下列子程序进行调试:procedure example(y,z: real; var x: real)beginif (y>1)and (z=0) then x:=x/y;if (y=2) or (x>l) then x:=x+l;end.该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、单项选择题(每题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. 软件工程的目标是开发出零缺陷的软件。

2024年软件工程开发等专业技能知识考试题库附含答案

2024年软件工程开发等专业技能知识考试题库附含答案

2024年软件工程开发等专业技能知识考试题库(附含答案)一、单选题1.数据流图是进行软件需求分析的常用图形工具,其基本图形符号是( )。

A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D.变换、数据存储、加工和数据流参考答案:C2.集成测试的主要方法有两个,一个是()一个是()。

A.白盒测试方法、黑盒测试方法B.等价类划分方法、边缘值分析方法C.渐增式测试方法、非渐增式测试方法D.因果图方法、错误推测方法参考答案:C3.软件文档是软件工程实施的重要成分,它不仅是软件开发各阶段的重要依据,而且也影响软件的( )。

A.可用性B.可维护性C.可扩展性D.可移植性参考答案:B4.面向对象设计阶段的主要任务是系统设计和( )。

A.结构化设计B.数据设计C.面向对象程序设计D.对象设计参考答案:D5.包含风险分析的软件工程模型是( )。

A.喷泉模型B.瀑布模型C.增量模型D.螺旋模型参考答案:D6.Jackson方法根据()来导出程序结构。

A.数据流图B.数据间的控制结构C.数据结构D.IPO图参考答案:C7.需求工程的主要目的是( )。

A.系统开发的具体方案B.进一步确定用户的需求C.解决系统是“做什么的问题”D.解决系统是“如何做的问题”参考答案:C8.只有类的共有界面的成员才能成为使用类的操作,这是软件设计的( )原则。

A.过程抽象B.信息隐藏C.功能抽象D.共享性参考答案:B9.下列哪项不是风险管理的过程?( )。

A.风险规划B.风险识别C.风险评估D.风险收集参考答案:D10.在分层体系结构中,( )实现与实体对象相关的业务逻辑。

A.表示层B.持久层C.实体层D.控制层参考答案:D11.下列选项中不属于CI管道的是()。

A.构建B.模拟C.单元测试D.集成测试参考答案:B12.应该在( ),确定对象类中应有的服务。

A.建立对象模型之时B.建立动态模型和功能模型之后C.建立功能模型之后D.建立动态模型之后参考答案:B13.需求分析的主要方法有( )。

2023年软件设计师真题

2023年软件设计师真题

1.一般在软件旳( )活动中无需顾客参与。

A. 需求分析B. 维护C. 编码D. 测试参照答案:C2.( )详细描述软件旳功能、性能和顾客界面,以使顾客理解怎样使用软件。

A. 概要设计阐明书B. 详细设计阐明书计C. 顾客手册D. 顾客需求阐明书参照答案:C3.下述任务中,不属于软件工程需求分析阶段旳是( )。

A.分析软件系统旳数据规定B.确定软件系统旳功能需求C.确定软件系统旳性能规定D.确定软件系统旳运行平台参照答案:D4.在开发信息系统时,用于系统开发人员与项目管理人员沟通旳重要文档是( )。

A. 系统开发协议B. 系统设计阐明书C. 系统开发计划D. 系统测试汇报参照答案:B5.系统测试人员与系统开发人员需要通过文档进行沟通,系统测试人员应根据一系列文档对系统进行测试,然后将工作成果撰写成( ),交给系统开发人员。

A. 系统开发协议B. 系统设计阐明书C. 测试计划D. 系统测试汇报参照答案:D6.常见旳软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。

其中( )模型合用于需求明确或很少变更旳项目,( )模型重要用来描述面向对象旳软件开发过程。

A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型参照答案:A、D7.在开发一种系统时,假如顾客对系统旳目旳是不很清晰,难以定义需求,这时最佳使用( )。

A.原型法瀑布模型C.V-模型D.螺旋模型参照答案:A8.采用瀑布模型进行系统开发旳过程中,每个阶段都会产生不一样旳文档。

如下有关产生这些文档旳描述中,对旳旳是( )。

A.外部设计评审汇报在概要设计阶段产生。

B.集成测评计划在程序设计阶段产生。

C.系记录划和需求阐明在详细设计阶段产生。

D.在进行编码旳同步,独立旳设计单元测试计划参照答案:D9.( )是一种面向数据流旳开发措施,其基本思想是软件功能旳分解和抽象。

A.构造化开发措施B.Jackson系统开发措施C.Booch措施D.UML(统一建模语言)参照答案:A10.软件开发中旳瀑布模型经典地刻画了软件生存周期旳阶段划分,与其最相适应旳软件开发措施是( )。

软件工程试题及答案

软件工程试题及答案

4. 面向对象的分析方法主要是建立三类模型,即( D )。

A) 系统模型、ER模型、应用模型B) 对象模型、动态模型、应用模型C) E-R模型、对象模型、功能模型D) 对象模型、动态模型、功能模型5. 在E-R模型中,包含以下基本成分( )。

A) 数据、对象、实体B) 控制、联系、对象C) 实体、联系、属性D) 实体、属性、操作9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是( c )A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法10、详细设计的基本任务是确定每个模块的( d )A.功能B.调用关系C.输入输出数据 D.算法11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。

对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( a )A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据13.面向数据流的设计方法把( D )映射成软件结构。

A.数据流B.系统结构C.控制结构D.信息流14.内聚程度最低的是( A.偶然 )内聚A.偶然 B.过程 C.顺序 D.时间15.确定测试计划是在( D )阶段制定的.A.总体设计 B.详细设计 C.编码 D.测试16.需求分析的产品是( D )A.数据流程图案B.数据字典C.判定表D.需求规格说明书17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C )A.数据库设计B.数据通信C.数据定义D.数据维护18.( D )引入了“风险驱动”的思想,适用于大规模的内部开发项目。

A.增量模型B.喷泉模型C.原型模型D.螺旋模型(×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。

(完整word版)软件工程题库(word文档良心出品)

(完整word版)软件工程题库(word文档良心出品)

1. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C )A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。

A.技术可行性B.经济可行性C.社会可行性D.法律可行性3.IDEF0图不反映出系统( B )A.系统做什么B.系统功能如何实现C.系统由谁来做D.系统实现的约束条件4. 模块的内聚性最高的是( D )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚5.在SD方法中全面指导模块划分的最重要的原则是( D )A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性6. 软件详细设计主要采用的方法是( D )A.模块设计B.结构化设计C.PDL语言D.结构化程序设计7.下列关于JSP方法不正确的说法是( D )A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。

因此它只适用于详细设计阶段8.不适合作为科学工程计算的语言是( D ) A. Pascal B. C C. Fortran D. Prolog9.黑盒测试在设计测试用例时,主要需要研究( A )A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明10. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。

设计这组测试用例的方法是( C )A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法11. 下列属于维护阶段的文档是( C )A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告12. 快速原型模型的主要特点之一是( D )A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件13. 因计算机硬件和软件环境的变化而做出的修改软件的过程称为( B )A.较正性维护B.适应性维护C.完善性维D.预防性维护14. 类库这种机制是( D )级别的信息共享。

软考软件设计师题库

软考软件设计师题库

选择题1. 在软件开发生命周期中,哪个阶段主要负责确定软件系统的功能、性能及运行环境等?A. 需求分析(正确答案)B. 系统设计C. 编码实现D. 测试与维护2. 下列关于模块化设计的说法中,不正确的是:A. 模块化有助于提高软件的可维护性B. 模块之间的耦合度越低越好C. 模块的内聚度越高,模块独立性越强(正确答案)D. 模块化设计不利于软件的复用3. 在数据库设计中,ER图(实体-关系图)主要用于表示:A. 数据流图B. 数据结构C. 实体、属性及实体间的关系(正确答案)D. 程序控制流程4. 下列哪种算法常用于解决图中的最短路径问题?A. 冒泡排序B. Dijkstra算法(正确答案)C. 快速排序D. 二分查找5. 关于面向对象编程(OOP),下列哪项不是其基本特征?A. 封装B. 继承C. 多态D. 过程化编程(正确答案)6. 在软件质量管理中,CMMI(Capability Maturity Model Integration)主要用于评估:A. 软件过程成熟度(正确答案)B. 软件代码质量C. 软件测试覆盖率D. 软件开发成本7. 下列关于UML(统一建模语言)的说法中,正确的是:A. UML只用于面向对象编程B. UML不能为数据库建模C. UML提供了一套标准的建模符号和工具,用于软件开发各阶段的可视化建模(正确答案)D. UML仅适用于大型软件项目8. 在软件测试中,黑盒测试主要关注:A. 程序内部结构B. 程序外部行为和功能(正确答案)C. 代码覆盖率D. 性能测试指标9. 关于敏捷开发,以下哪项不是其核心原则?A. 以人为本,团队协作B. 快速响应变化,拥抱需求变更C. 强调详细的前期规划和文档编写(正确答案)D. 持续交付,持续改进。

2024软考软件设计师题库

2024软考软件设计师题库

一、选择题1.在软件设计过程中,以下哪一项不是模块化设计的主要目的?A.提高软件的可维护性B.降低软件的复杂性C.减少软件的开发成本(正确答案)D.促进软件的重用2.关于软件架构,以下哪一项描述是正确的?A.软件架构只关注软件的高层结构,不涉及具体实现细节(正确答案)B.软件架构是软件开发过程中的最后一步C.软件架构与软件的需求分析无关D.软件架构一旦确定,就不能在开发过程中进行修改3.在面向对象的设计中,以下哪一项不是类的主要特征?A.封装性B.继承性C.多态性D.功能性(正确答案)4.关于设计模式,以下哪一项描述是错误的?A.设计模式是在软件工程中反复出现的问题的解决方案B.设计模式可以提高代码的可重用性、可读性和可维护性C.设计模式包括创建型、结构型和行为型三大类D.设计模式可以解决所有软件设计问题(正确答案)5.在软件设计中,以下哪一项不是常用的结构化设计方法?A.面向数据流的设计方法B.面向数据结构的设计方法C.面向对象的设计方法(正确答案)D.面向控制结构的设计方法6.关于软件设计的原则,以下哪一项描述是正确的?A.软件设计应遵循“高内聚,低耦合”的原则(正确答案)B.软件设计应追求功能的复杂性C.软件设计不需要考虑未来的可扩展性D.软件设计应尽可能减少模块之间的交互7.在软件设计中,以下哪一项不是提高模块独立性的主要方法?A.尽可能减少模块之间的调用关系B.设计功能单一的模块C.增加模块之间的公共变量和公共数据结构(正确答案)D.限制模块的功能范围8.关于软件设计的评审,以下哪一项描述是错误的?A.软件设计评审是一种质量保证活动B.软件设计评审应在设计完成后进行C.软件设计评审的目的是发现设计中的错误和缺陷D.软件设计评审应由独立的评审团队进行(正确答案,因为设计评审可以在设计过程中进行,不仅限于设计完成后,且可以由开发团队内部或外部人员进行)。

软件工程试题题库含答案

软件工程试题题库含答案

软件工程试题题库含答案一、软件开发过程1. 软件工程的定义是什么?答:软件工程是一门学科,研究并应用以系统化的方法开发和维护软件的原则、概念、方法和工具。

2. 请列举并解释软件开发过程的基本活动。

答:软件开发过程包括以下基本活动:- 需求分析与说明:收集和分析用户需求,并将其明确、清晰地记录下来。

- 软件设计:将需求转化为软件架构和设计规范,确定技术方案和实施计划。

- 编码和单元测试:根据设计规范进行编码,并进行单元测试以确保代码的正确性。

- 综合与测试:将各个模块进行综合,进行系统级测试以验证软件的正确性和稳定性。

- 软件发布与维护:发布软件版本,并对软件进行后续的维护和更新。

3. 请解释敏捷开发方法的基本原则。

答:敏捷开发方法的基本原则包括: - 个体和互动高于流程和工具:注重团队成员的沟通和合作,更加关注人与人之间的交互。

- 可工作的软件高于详尽的文档:重视软件的实际可用性和功能,减少过多的文档记录。

- 客户合作高于合同协商:与客户保持紧密的合作,及时获取反馈并调整软件开发进程。

- 相应变化高于遵循计划:灵活应对需求变化,允许在开发过程中根据实际需要进行调整。

二、需求工程1. 需求工程的目的是什么?答:需求工程的目的是准确、清晰地确定、分析和记录用户对软件系统的需求。

2. 请解释需求工程的关键活动。

答:需求工程的关键活动包括以下几项: - 需求获取:通过与用户交流和研究,确定用户的需求,并进行系统化的收集。

- 需求分析:对收集到的需求进行分析,确定需求的可行性和优先级,并拆解出软件需求规格说明。

- 需求规格说明:编写清晰、明确的需求规格文档,对软件需求进行详细描述和说明。

- 需求验证:与用户进行需求验证,确保需求规格与用户的期望一致,并能够满足用户的需求。

3. 请解释用户需求和系统需求的区别。

答:用户需求是用户对软件系统的需求和期望,通常表达为用户对系统功能和性能的描述。

而系统需求是对用户需求的进一步细化和明确化,包括对系统功能、性能、界面、输入输出等方面的具体要求。

软件工程习题附答案

软件工程习题附答案

软件工程习题附答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。

以下是一些软件工程的习题及答案,希望能帮助您更好地理解这门学科。

一、选择题1、软件生命周期中所花费用最多的阶段是()A 详细设计B 软件编码C 软件测试D 软件维护答案:D解析:软件维护阶段需要对软件进行修改、优化和修复,由于软件在使用过程中可能会遇到各种问题和需求变更,所以维护阶段通常会花费大量的时间和资源。

2、下面不属于软件工程的 3 个要素的是()A 工具B 过程C 方法D 环境答案:D解析:软件工程的三要素是方法、工具和过程。

方法为软件开发提供了“如何做”的技术;工具为方法的运用提供了自动的或半自动的软件支撑环境;过程是将方法和工具结合起来,以达到合理、及时地进行软件开发的目的。

3、软件可行性研究实质上是要进行一次()需求分析和设计过程。

A 简化、压缩的B 详细的C 彻底的D 深入的答案:A解析:可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决,其实质是进行一次简化、压缩的需求分析和设计过程。

4、软件测试的目的是()A 证明软件的正确性B 找出软件中的所有错误C 尽可能多地发现软件中的错误D 调试程序答案:C解析:软件测试的目的是尽可能多地发现软件中的错误,而不是证明软件的正确性,也不可能找出软件中的所有错误。

5、下面描述中,不符合结构化程序设计风格的是()A 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B 自顶向下C 注重提高程序的执行效率D 限制使用 goto 语句答案:C解析:结构化程序设计强调清晰的结构和良好的可读性,注重程序的可理解性和可维护性,而不是过于追求执行效率。

二、填空题1、软件生存周期一般可分为问题定义、可行性研究、()、设计、()、测试、运行与维护阶段。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。

A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 软件工程的三要素包括()。

A. 方法、工具和过程B. 方法、工具和人员C. 方法、过程和人员D. 工具、过程和人员答案:C3. 软件需求分析阶段的主要任务是()。

A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:A4. 软件设计阶段的主要任务是()。

A. 制定软件开发计划B. 确定软件的体系结构C. 编写软件详细设计文档D. 进行软件测试答案:B5. 软件测试的目的是()。

A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是无错误的D. 证明软件是可维护的答案:B6. 软件维护不包括以下哪项活动()。

A. 改正性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D7. 软件项目管理的主要任务不包括()。

A. 进度管理B. 质量管理C. 风险管理D. 软件编码答案:D8. 面向对象方法中,对象的基本特性不包括()。

A. 抽象B. 封装C. 继承D. 多态答案:D9. UML(统一建模语言)是一种()。

A. 程序设计语言B. 数据库查询语言C. 建模语言D. 脚本语言答案:C10. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。

A. 客户的需求不明确B. 项目范围的扩大C. 技术实现的困难D. 软件已经完成答案:D二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。

A. 抽象B. 模块化C. 逐步求精D. 迭代开发答案:ABC12. 软件需求分析阶段的输出包括()。

A. 需求规格说明书B. 用户手册C. 系统架构图D. 测试计划答案:A13. 软件设计阶段的主要文档包括()。

A. 架构设计文档B. 详细设计文档C. 用户手册D. 测试计划答案:AB14. 软件测试的类型包括()。

软件设计师试题试卷及答案

软件设计师试题试卷及答案

软件设计师试题试卷及答案一、选择题(每题2分,共40分)1. 下面哪个不是面向对象程序设计的主要特征?A. 封装B. 继承C. 多态D. 过程化答案:D2. 在软件工程中,下列哪个不属于软件开发阶段的任务?A. 需求分析B. 设计C. 编码D. 测试答案:A3. 下列哪种设计模式属于结构型模式?A. 单例模式B. 观察者模式C. 装饰者模式D. 状态模式答案:C4. 下列关于软件架构的描述,哪项是正确的?A. 软件架构关注系统的整体结构B. 软件架构关注系统的具体实现C. 软件架构关注系统的性能优化D. 软件架构关注系统的详细设计答案:A5. 以下哪个不是软件测试的级别?A. 单元测试B. 集成测试C. 系统测试D. 优化测试答案:D6. 下列关于软件需求的描述,哪项是正确的?A. 软件需求是软件开发的基础B. 软件需求是软件开发的关键C. 软件需求是软件开发的瓶颈D. 软件需求是软件开发的目的7. 下列关于设计模式的应用,哪项是正确的?A. 设计模式可以解决所有软件设计问题B. 设计模式可以提高代码的可复用性C. 设计模式可以减少代码的复杂度D. 设计模式可以替代编程语言答案:B8. 在软件开发过程中,下列哪个阶段最可能出现需求变更?A. 需求分析阶段B. 设计阶段C. 编码阶段D. 测试阶段答案:A9. 以下哪个不是软件项目管理的主要目标?A. 确保项目按时完成B. 确保项目在预算内完成C. 提高软件质量D. 提高软件的可维护性10. 以下哪个不是软件工程的分支?A. 软件开发B. 软件维护C. 软件项目管理D. 计算机科学答案:D二、填空题(每题2分,共20分)11. 软件设计的主要目的是实现软件的______。

答案:可维护性12. 设计模式分为______、______和______三种类型。

答案:创建型、结构型、行为型13. 在软件测试中,白盒测试主要关注软件的______,黑盒测试主要关注软件的______。

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

软件设计:软件工程习题200题之二我的软件工程笔记99年末的一段,是当时几乎所有软件工程书籍的习题。

这里整理出来,希望对大家学习软件工程有益。

1、什么是软件危机?产生软件危机的原因?怎样消除?2、什么是软件工程?包括哪些内容?3、软件生存周期包含哪些内容?4、软件开发模型有几种?各有什么特点?5、软件技术审查和管理复审的作用是什么?6、软件开发与写程序有什么不同?7、在软件开发的早期阶段,为什么要进行可行性研究?应该从哪些方面研究目标系统的可行性?8、一个软件开发系统的可行性研究报告应如何编写?9、数据流图有哪几种基本符号?10、画数据流图原则是什么?11、数据流图在软件分析中的作用是什么?12、数据字典的作用?13、什么是数据字典?有几个定义?各自特点是什么?14、有几种效益的分析方法?15、需求分析的任务是什么?16、需求分析通常采用哪些分析技术?17、什么是结构化分析?他的结构化体现在哪里?18、简述面向对象分析技术的主要步骤?19、原型开发技术的目的,特点是什么?20、简述总体设计的一般过程?21、什么叫软件结构?什么叫软件工程?二者之间关系?22、解释深度、宽度、扇出、扇入对软件的影响。

23、什么叫模块化?M代表的含义是什么?24、模块化的三个重要特征是什么?阐明各自的作用。

25、举例说明各种耦合情况和各种内聚情况。

26、简述设计准则的内容。

27、简述层次方框图与软件结构图的异同点。

28、事物型软件结构图有什么特点?原因是什么?29、详细设计的任务是什么?30、什么是结构化程序设计?用N-S图表示三种基本结构。

31、简述Jackson程序设计方法的主要内容。

32、简述Wariner程序设计方法的主要内容。

33、McaHei(Muahe,笔记有些模糊,未校正)方法的核心是什么?有何用途?34、简述程序设计语言两次本质性变化的内容及意义。

35、C语言属于第几代语言?第四代语言特点是什么?36、简述高级语言的应用特点和内在特点。

37、试分析程序设计语言特点及软件可靠性、可理解性、可修改性、可测试性及成本的关系。

38、选择一种语言的实用标准是什么?39、简述开发环境、计算机体系结构、软件设计方法、软件开发过程与程序设计语言之间的促进和制约作用。

40、程序的编码风格主要体现在哪几个方面?41、软件测试的基本任务是什么?测试与调试区别是什么?42、软件测试的目标是什么?43、软件测试分几个步骤进行?每个步骤解决什么问题?44、软件测试有几种方法?每种方法的特点是什么?45、软件出错有几种类型?验证其程序正确性有几种方法?46、什么是单元测试和集成测试?他们各有什么特点?47、简述渐增式测试方法与非渐增式测试方法的优劣。

48、简述存根程序驱动程序的作用。

49、编最大、最小公倍数程序,并为它设计测试用例。

50、测试的具体任务是什么?为什么说调试是软件开发过程中最艰巨的任务?51、举出几种常用的测试工具,说明他们的用法。

52、MTTF的含义是什么?如何计算Et值?53、假设有一个由1000行Pascal语句构成的程序(编译后约有5000条机器指令),请估算对它进行测试期间将发现多少错误。

为什么?54、什么叫软件维护?软件维护的基本内容是什么?55、软件维护分几类?每类的基本内容是什么?占软件维护总工作量的百分比是多少?56、软件维护有哪些特点?57、简述软件的维护过程。

58、软件的可维护性与哪些因素有关?在软件开发过程中应采取哪些措施才能提高软件产品的可维护性?59、什么是软件工程的文档?分哪两大类?每类内容是什么?60、计算软件价格时,应不应该把维护费用计入成本?为什么?61、软件项目分几类?划分依据是什么?62、简述软件项目的特点和项目中人员的特点对软件管理的影响。

63、软件职能管理的具体内容是什么?64、为什么说“时间和人员不能交换”?试说明其原因。

65、变动分两类,阐述每类特点及二者之间的区别。

66、谈谈你对软件现代技术的理解,预测一下软件发展方向。

67、计算机技术已不再是单一学科的发展,它是许多相关学科的融合和渗透。

举例说明你所熟悉的这方面的技术、方法和应用。

68、何为软件?软件可分哪几种类?69、软件危机主要有哪些表现?70、什么是软件工程?试说明软件工程是如何克服软件危机的。

71、面向对象生存期模型与传统的生存期模型有什么区别?72、列出两种以上的软件开发过程模型。

并说明各自的特点。

73、分析员职责是什么?分析员应具备什么条件?74、分析员应采取哪些方法来明确需求?75、建立系统模型有什么作用?76、建立良好的规格说明的原则有哪些?77、为什么要进行规格说明评审?78、数据流图作用是什么?79、数据字典的作用是什么?数据字典中包含了哪些信息?80、何为结构化分析方法?他在发展过程中得到了哪些扩充?81、什么是面向数据流的设计?数据流包括哪几种?82、怎样完成从数据流图到程序结构图的转换?83、面向数据流的设计方法包含那些步骤?84、Jackson结构化编程方法是以控制技术为中心还是以数据结构为中心?为什么?85、Jsp方法包括那些步骤?86、如何表示数据的顺序结构、选择结构、重复结构?87、回溯用于解决Jsp方法遇到了什么问题?为什么Jsp往往会面临这种问题而别的方法往往不会?88、为什么Jsp方法会遇到结构冲突问题?如何解决?89、DSSD方法包括那些步骤?90、DSSD方法中,逻辑输出结构和逻辑过程结构的导出各起到什么作用?91、什么是原型?原型应具有什么特点?92、什么是原型开发?原型开发包括那几类?93、原型开发由哪几个步骤组成?94、用户界面原型开发方法有哪几种?与传统的用户界面开发方法相比具有哪些优点?95、面向对象语言必须支持那些概念?96、面向对象编程语言分几大类?97、试说明面向对象编程语言用哪些机制支持面向对象方法的基本概念?98、什么是实时系统?实时设计与其他系统设计有什么区别?99、实时系统设计有哪些要素?100、实时系统在进行任务同步时通常采取哪几种方法?我的软件工程笔记99年末的一段,是当时几乎所有软件工程书籍的习题。

这里整理出来,希望对大家学习软件工程有益。

1、Statemate方法是如何解决实时设计的特殊问题的?2、什么是规格说明语言?它具有什么性质?3、什么是设计语言?它具有什么性质?4、CASE环境语言提出了什么要求?如何实现?5、什么是原型开发语言?它具有什么性质?6、如何使原型开发语言可执行?7、编程语言从心里工程角度看各具有什么特性?8、评价选择可用编程语言的准则是什么?9、举例说明编程语言对软件工程的各个步骤的影响。

10、编程语言中的基础有哪些方面?11、第一代至第四代语言是如何划分的?各具有什么特点?包括那些语言?12、程序中与编程风格有关的因素有哪些?为建立良好的编程风格应遵循什么原则?13、提高编程效率应从哪些方面着手?14、人机界面设计包括哪些方面?15、在人机界面设计中应如何考虑用户的使用要求?16、人机界面的设计应遵循什么原则?17、人机交互方式分哪几种?18、如何采用结构化的分析方法和面向对象分析方法来明确人机界面设计的任务?19、在进行人机界面设计的初期(概要设计阶段)必须解决那些问题?20、人机界面的开发主要采用那些模型?21、界面设计有哪些一般准则?22、何为智能人机界面?智能人机界面由哪几部分构成?各部分之间存在什么关系?23、多媒体技术可用于解决人机界面设计中的什么问题?24、为什么在CASE中需要有数据库的支持?25、软件工程中有哪些数据需要管理?26、数据模型的评价准则有哪十个方面?他们对CASE有什么意义?27、CASE需要什么样的数据库支持?28、为什么说软件设计十分重要?29、完成良好的软件设计应遵循哪些原则?30、抽象有哪几种形式?他们各起什么作用?31、如何理解模块独立性?用什么指标来衡量模块独立性?32、为什么数据设计是设计活动中十分重要的一项?进行数据设计应遵循什么原则?33、何为体系结构设计?进行体系结构设计应遵循什么原则?34、什么是结构化设计?他在软件发展史上具有什么地位?35、过程设计语言具有哪些特征?36、什么是对象?对象有哪几种形式?37、什么是类?类与对象间是什么关系?38、面向对象方法特征有哪些?39、面向对象方法基本要点是什么?40、面向对象设计涉及那几个主要活动?面向对象设计如何体现三个主要的软件设计概念:抽象信息、隐藏和模块化?41、面向对象分析涉及那几个主要活动?如何应用系统建模?42、Booch方法中运用了那几类图表?他们各有什么作用?43、Booch方法包括那些开发步骤?44、Petri网是与分析与设计哪类系统?它是通过什么方式来反映系统动态行为的?45、运用Petri网进行系统建模与性能分析的具体步骤是什么?46、Petri网客分析系统哪些行为特征?这些特征含义是什么?47、Petri网的性能分析方法有哪几种?其原理各是什么?48、软件开发工具分哪几类?各完成什么工作?49、软件开发环境一般用来解决哪几类问题?50、何为CASE,Z-CASE含义是什么?51、环境集成包括那三个方面的集成?52、集成方式分哪几种?那种方式使集成思想得到充分体现?如何体现的?53、软件质量的含义是什么?54、影响软件质量的因素分哪两大类?55、Boehm和McCall等人从哪些方面来确定软件质量?他们有什么异同?56、ISO1985提出的关于软件质量度量模型有哪三个层次组成?它有哪些特点?57、软件质量的各种特性怎样度量?58、什么是软件质量保证的策略?现代软件质量保证的策略是什么?59、软件质量保证活动有哪七个主要方面?如缺少一两个方面行不行?是否还有没有考虑到的方面?60、为什么说软件正是技术评审是软件质量保证的一个最基本的活动?61、为什么在软件进行技术评审中要有一张预先设定的评审检查表?62、软件的缺陷为什么在软件开发和维护过程中会扩大?硬件会产生这样的问题吗?63、什么是Halstead软件科学度量?这种方法的实质是什么?它可以用来进行软件质量哪些方面的度量?它有哪些优缺点?64、什么是McCabe复杂性度量?这种方法的实质是什么?它可以用来进行软件质量哪些方面的度量?它有哪些优点?65、什么是软件可靠性和软件可用性?他们能否定量计算?66、什么是软件安全性?软件安全性与软件可靠性有什么不同?为什么有了软件可靠性还要考虑软件安全性?软件安全性应从哪些方面去考虑?67、为什么说软件质量保证中最重要的两个方面是:对软件质量保证活动和软件配置的审计;软件质量保证计划的制定和标准的采用?68、为什么说软件测试是软件开发中不可缺少的重要的遗患,但不是软件质量保证的“安全网”?69、为什么把软件测试的目标定义为只是发现错误?70、软件测试应当遵循什么原则?为什么要遵循这些原则?71、单元(模块)测试、组装测试和确认测试各自主要的目标是什么?他们之间有哪些不同?相互有什么关系?72、什么是黑盒子测试和白盒子测试?他们都适应哪些测试?73、单元测试时,为什么需要另外开发驱动程序和连接程序?74、比较在组装测试中,自顶向下与自底向上、先深度后宽度与先宽度后深度结合的优缺点。

相关文档
最新文档