软件工程基础知识题库1-0-8

合集下载

软件工程基础习题集答案

软件工程基础习题集答案

《软件工程基础》习题集答案第一章概述1.什么是软件危机,它有哪些典型表现?所谓“软件危机”就是,在计算机软件的开发和维护过程中所遇到的一系列严重的问题,概括起来归纳为:如何开发软件,以满足日益增长、日趋复杂的需要;如何维护数量不断膨胀的已有软件。

软件危机的典型表现主要有:a. 开发成本和进度不能准确估计b. 开发出来的软件不能满足用户的要求c. 软件的可维护性差d. 软件质量不可靠e. 软件成本在系统中的比重逐年上升f. 软件开发生产率的提高速度不够2.简述产生软件危机的原因和解决的思路。

软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。

解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。

即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。

3.什么是软件工程?它有哪些本质特性?软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开发和维护的学科。

其实质就是用工程的概念、原理、技术和方法,结合有效的管理方法和先进的开发技术,开发与维护软件,以解决软件危机。

4.软件工程是如何用来消除软件危机的?软件工程是从技术和管理两个方面来研究如何更好地开发和维护计算机软件,从源头上消除软件危机。

6.简述软件的定义。

软件 = 程序 + 数据 + 文档7.软件工程的目的是什么?为高质量的软件开发提供一个科学的体系框架。

8.什么是软件工程方法学?软件工程是一种什么样的技术?包括哪三大要素?分为哪三个分支?软件工程方法学就是指在软件生命周期全过程中使用的一整套管理和开发技术方法的集合。

目前,使用最广泛的软件工程方法学分别是传统方法学和面向对象方法学。

软件工程作为一种层次化的技术,有方法、工具和过程三大要素,并由于其涉及学科内容的极为广泛,而分为三个分支:软件开发技术、软件项目管理技术、软件质量管理技术。

9.简述软件工程的基本原理。

软件工程基础知识考试

软件工程基础知识考试

软件工程基础知识考试(答案见尾页)一、选择题1. 软件工程的基本原理是什么?A. 线性顺序开发B.迭代和增量开发C. 自顶向下,逐步求精D. 需求驱动和变更管理2. 软件开发过程中,需求分析的目的是什么?A. 确定软件开发的具体功能需求B. 编写需求规格说明书C. 评估项目可行性D. 规划如何构建和维护软件3. 软件设计的主要阶段有哪些?A. 概念设计B. 详细设计C. 结构设计D. 过程设计4. 在敏捷开发方法中,迭代周期通常有多长?A. 1-2周B. 4-6周C. 3-4个月D. 2-4周5. 软件测试的目的是什么?A. 保证软件质量B. 提高软件效率C. 降低维护成本D. 提高用户满意度6. 数据库设计通常遵循哪些基本原则?A. 数据完整性B. 数据安全性C. 数据一致性D. 数据及时性7. 在软件开发中,版本控制工具的主要作用是什么?A. 整理源代码文件B. 跟踪代码变更历史C. 版本控制项目管理D. 提供协作开发环境8. 软件维护主要包括哪些活动?A. 修复缺陷B. 更新文档C. 性能优化D. 安全性增强9. 面向对象编程(OOP)的四个基本特性是什么?A. 封装B. 多态C. 继承D. 抽象10. 什么是敏捷开发,它与其他开发方法的区别是什么?A. 敏捷开发是一种软件开发方法,它强调团队合作和快速响应变化。

B. 敏捷开发与其他开发方法的区别在于它采用了迭代和增量的开发方式,而不是瀑布模型。

C. 敏捷开发强调的是文档的重要性。

D. 敏捷开发是一种运动,而不是一种软件开发方法。

11. 软件工程的基本概念是什么?A. 软件工程是一门技术学科,它涉及到软件的开发、维护和管理。

B. 软件工程是应用计算机科学、数学及管理科学等原理来开发软件的学科。

C. 软件工程注重软件的可靠性、可用性和可维护性。

D. 软件工程的目标是生产高质量的软件产品。

12. 软件开发过程中通常遇到的三种风险是什么?A. 技术风险B. 经济风险C. 过程风险D. 人员风险13. 软件生命周期通常包括哪几个阶段?A. 需求分析B. 设计C. 编码D. 测试E. 部署和维护14. 在软件开发中,需求分析的目的是什么?A. 确定软件系统的功能和性能要求。

软件工程考试题及答案

软件工程考试题及答案

软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。

答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。

答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。

答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。

它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。

2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。

通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。

3. 请简述软件开发生命周期中的各个阶段。

答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。

- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。

- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。

- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。

- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。

- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。

软件工程基础考试

软件工程基础考试

软件工程基础考试(答案见尾页)一、选择题1. 软件工程的基础是什么?A. 程序设计B. 数据结构C. 计算机科学D. 需求分析2. 软件开发过程中,需求分析和系统设计的关系是什么?A. 需求分析是系统设计的依据B. 需求分析和系统设计同时进行C. 需求分析在系统设计之后进行D. 需求分析和系统设计没有必然联系3. 软件工程的三个层次及其在软件开发过程中的作用是什么?A. 应用层、系统层、理论层B. 物理层、数据层、逻辑层C. 需求层、设计层、实施层D. 开发层、测试层、维护层4. 软件开发生命周期(SDLC)的概念是什么?它包括哪几个阶段?A. 软件开发生命周期是指软件的开发过程B. SDLC包括需求分析、设计、编码、测试和维护C. SDLC是一个线性的过程D. SDLC各阶段按顺序进行,不具备迭代性5. 什么是敏捷开发方法?它与其他开发方法的区别是什么?A. 敏捷开发是一种快速开发的软件开发方法B. 敏捷开发强调团队合作和客户参与C. 敏捷开发适合大规模软件项目D. 敏捷开发与其他开发方法的区别在于流程管理6. 什么是面向对象编程(OOP)?请列举OOP的三个基本特征。

A. 封装、继承、多态B. 封装、继承、抽象C. 封装、多态、接口D. 继承、多态、接口7. 数据库管理系统(DBMS)在软件开发中的作用是什么?A. 存储和管理数据B. 提供数据查询和修改功能C. 数据库管理员(DBA)负责DBMS的管理和维护D. 所有选项都正确8. 什么是版本控制?请简述版本控制的两种主要策略。

A. 版本控制是一种软件配置管理技术B. 版本控制可以跟踪软件项目的变更C. 版本控制的主要策略有Git和SVND. 版本控制确保软件代码的安全性9. 什么是软件测试?它的目的和基本原则是什么?A. 软件测试是在软件投入运行后进行的活动B. 软件测试是为了发现软件中的错误和缺陷C. 软件测试的原则包括早期测试、缺陷倾向分布等D. 软件测试的目的是提高软件的质量和可靠性10. 什么是配置管理?它在软件开发中的作用是什么?A. 配置管理是指对软件配置项进行管理和控制的过程B. 配置管理可以确保软件配置的一致性和可追溯性C. 配置管理的主要活动包括配置标识、配置控制、配置审核等D. 配置管理有助于解决软件生命周期中的版本冲突问题11. 软件开发过程中,需求分析的主要任务是?A. 确定软件开发的功能B. 编写需求规格说明书C. 进行系统设计D. 进行程序设计12. 在软件开发中,迭代过程是为了更好地适应变化,它主要包括哪几个阶段?A. 需求分析B. 设计C. 编码D. 测试13. 软件工程中的“软件”指的是什么?A. 程序和数据B. 程序、数据和文档C. 程序和数据,可运行D. 程序、数据和用户手册14. 软件工程的发展历程中,第一个正式发布的软件开发标准是?A. ISO 9000B. CMMIC. PMBOKD.软件开发生命周期(SDLC)15. 在软件工程中,测试的目的是什么?A. 证明软件的正确性B. 找出软件中的错误C. 提高软件的质量D. 规范软件的开发过程16. 软件工程中的“软件生命周期”通常包括哪几个阶段?A. 开发B. 运行C. 维护17. 软件工程中,版本控制的主要作用是什么?A. 监控软件的修改历史B. 管理软件的版本C. 确保软件的一致性D. 保证软件的可靠性18. 软件工程中,敏捷开发方法是一种以人为核心、迭代、循序渐进的开发方法,它的核心价值包括:A. 个体和互动跨功能团队B. 可用的软件客户合作C. 响应变化随时间进化D. 面向结果19. 在软件工程中,UML(统一建模语言)是一种用于描述、构造和编写软件系统的图形化语言,它通常用于以下哪个阶段?A. 需求分析B. 设计C. 编码D. 测试20. 软件工程的定义是什么?A. 软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。

软件工程基础考试题及答案多套(K12教育文档)

软件工程基础考试题及答案多套(K12教育文档)

软件工程基础考试题及答案多套(word版可编辑修改)编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(软件工程基础考试题及答案多套(word版可编辑修改))的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为软件工程基础考试题及答案多套(word版可编辑修改)的全部内容。

《软件工程基础》考核题该门课程不用现场笔试考试(网上预约考试时间为虚设),请预约该门课程考试的学生将答案手写A4答题纸上,于规定时间内交到学习中心,哈站交到班主任处。

未预约的学生提交的内容作废处理,预约后不按规定时间提交按旷考处理。

(答题纸附在第二页,所有答案必须写在答题纸上,标清题号)一、选择题(每小题3分,共30 分)1、准确地解决“软件系统必须做什么”是( )阶段的任务.A.可行性研究 B。

需求分析C。

软件设计 D. 程序编码2、软件生存期中时间最长的是()阶段.A. 需求分析 B。

软件设计C。

软件测试 D. 软件运行/维护3、在结构化分析方法中用状态―迁移图表达系统或对象的行为。

在状态―迁移图中,由一个状态和一个事件所决定的下一状态可能会有( )个。

供选择的答案:A。

1 B。

2C. 多个 D。

不确定4、软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需求分析文档以及()。

A.总结B.阶段性报告C。

需求分析评审 D.以上答案都不正确5、在软件生存周期的瀑布模型中一般包括计划、()、设计、编码、测试、维护等阶段。

A 可行性分析B 需求采集C 需求分析D 问题定义6、软件工程包括三个要素:方法、工具和()。

A 过程B 软件系统C 硬件环境D 人员7、需求分析最终结果是产生( )。

软件工程题库 多选

软件工程题库 多选

软件工程题库多选软件工程题库
一、软件工程概述
1.1 软件工程的定义
1.2 软件工程的历史和发展
1.3 软件工程的重要性和作用
1.4 软件工程的基本原则和方法
二、需求分析
2.1 需求分析的目的和任务
2.2 需求获取的方法
2.3 需求分析的基本步骤
2.4 需求规格说明的编写方法
2.5 需求变更管理
三、软件设计
3.1 软件设计的基本概念
3.2 结构化设计方法
3.3 面向对象设计方法
3.4 软件设计的工具和技术
四、软件开发
4.1 软件开发模型
4.2 需求开发
4.3 概要设计和详细设计
4.4 编码和单元测试
4.5 软件集成测试和系统测试
4.6 软件发布和部署
五、软件质量保证
5.1 软件质量的定义和标准5.2 质量保证的方法和技术5.3 质量控制的方法和技术5.4 测试的方法和技术
5.5 缺陷管理和缺陷修复
5.6 配置管理
六、软件项目管理
6.1 项目管理的基本概念
6.2 项目计划和进度管理
6.3 项目资源管理
6.4 项目风险管理
6.5 项目沟通和协作
附件:
附件1:需求规格说明书范例
法律名词及注释:
1:版权:对作品(包括软件)的著作权进行保护的权利。

2:商标:标识企业、商品或服务来源的标记,用于区分同类商品和服务。

3:专利:针对技术发明或创新的独占权。

4:许可证:授予他人使用特定软件的权利的文件。

5:合同:双方或多方达成的法律文件,规定了各方之间的权利和义务。

软件工程试题1--附带答案

软件工程试题1--附带答案

1.软件生存周期中,准确地确定软件系统必须做什么的阶段是(B)(P6)A.可行性分析和项目开发计划B.需求分析C.概要设计D.详细设计2.把瀑布模型和一起的软件生存周期专家系统结合在模型是(B)(P9)A.增量模型B.基于知识的模型(智能模型)C.螺旋模型D.喷泉模型3.以下不.属于项目开发计划主要内容的是(C)(P20)A.实施计划B.交付期限C.测试用例D.人员组织及分工4.使用数据流图来表示系统逻辑模型的是(D)(P24)A.Jackson B.VDMC.OOA D.SA5.用于描述结构化分析中数据流加工逻辑的是(A)(P34)A.判定树B.ER图C.状态图D.用例图6.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入,则该模块的内聚性类型是(C)(P47)A.时间内聚B.偶然内聚C.顺序内聚D.功能内聚7.下列几种耦合类型,耦合性最高的是(A)(P45)A.公共耦合B.控制耦合C.标记耦合D.数据耦合8.程序流程图的优点不包括...( B )(P63)A.历史最悠久,使用最广泛B.容易表示逐步求精的过程C.支持程序的三种基本控制结构D.直观清晰,易于使用9.数据字典和数据流程图共同构成了系统的(B)(P30)A.物理模型B.逻辑模型C.原型D.目标模型10.确认测试也称为(A)(P99)A.有效性测试B.无效性测试C.静态测试D.动态测试11.黑盒测试技术不包括...(B)(P93)A.等价类划分B.路径覆盖C.边界值分析D.错误推测12.为了增加软件功能和性能、提高软件运行效率而进行的维护活动称为(C)(P104)A.校正性维护B.适应性维护C.完善性维护D.预防性维护13.在软件设计中详细描述处理过程常用的三种工具是(D)(P62)14.A.SA,SD,SP B.程序流程图,IPO,PADC.SA,SC,SDD.图形,表格,语言14.关于软件测试的目的,下面观点错误的是( C )(P82)A.为了发现错误而执行程序的过程B.一个好的测试用例能够发现至今尚未发现的错误C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试15.IDEF0是IDEF方法的一部分,用于建立系统的( A )(P36)A.功能模型B.信息模型C.动态模型D.关系模型16.结构化设计是以哪个阶段产生的DFD图为基础,按一定的步骤映射成软件结构?(B)(答案见目录) A.可行性分析B.需求分析C.概要设计D.详细设计17.数据字典是用来定义_________中的各个成份的具体含义的。

软件工程基础考试试题

软件工程基础考试试题

软件工程基础考试试题一、单选题(每题2分,共20分)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. PERT/CPMC. UMLD. 敏捷开发8. 在软件测试中,下列哪种测试方法是通过测试人员的随机操作来检验软件系统的可靠性:A. 黑盒测试B. 白盒测试C. 灰盒测试D. 增量测试9. 软件工程的核心原则包括:A. 模块化B. 重用C. 抽象D. 以上答案都正确10. 软件工程的关键技术包括:A. 需求分析和规格说明B. 概要设计和详细设计C. 编码和调试D. 以上答案都正确二、填空题(每题2分,共20分)1. 软件开发生命周期包括需求分析、设计、编码、测试、____和维护。

2. 软件需求分析的目标是明确软件的功能、性能和____。

3. 软件测试的基本原则之一是:测试应该完全独立于____。

4. 软件工程中常用的项目管理方法之一是____,用于确定最短的完成项目所需时间。

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

软件工程基础知识题
库1-0-8
问题:
[单选]程序员需要用文档来表述自己的思想。

文档设计的要点不包括()。

A.文档制作应先做规划,列出纲目,内容的逻辑性要强,并不断改进
B.选择最适合表达某种算法的形式(文本、表格、图)
C.尽量保持文档与程序的一致性,文档上下文的4致性
D.采用文档模板以减少以后随软件版本的升级而更新文档的工作量
文档编制要求具有针对性、精确性、清晰性、完整性、灵活性、可追溯性。

问题:
[单选]以下关于子类和父类的叙述中,正确的是()。

A.代码中使用父类对象的地方,都可以使用子类对象替换
B.代码中使用子类对象的地方,都可以使用父类对象替换
C.父类定义的对象与子类定义的对象在属性和方法上一定相同
D.父类定义的对象与子类定义的对象在属性和方法上一定不同
一个子类可以继承其父类(或祖先类)中的属性和操作,这些属性和操作在子类中不必定义,子类中还可以定义自己的属性和操作。

问题:
[单选]以下关于类和对象的叙述中,正确的是()。

A.由类生成的对象数目可以是0,1,2,…
B.由类生成的对象数目一定是1
C.由类生成的对象数目一定不少于1
D.由类生成的对象数目一定不少于2
静态类可以不生成对象,而直接使用属性方法,但是一般的类要创建对象才可以调用属性和方法。

出处:飞禽走兽老虎机 https:///;
问题:
[单选]以下关于面向对象分析与设计叙述中,正确的是()。

A.面向对象分析的结果适合采用C++语言表达
B.面向对象分析的结果适合采用汇编语言表达
C.面向对象设计的结果适合采用UML(UnifiedModelingLanguagE.表达
D.面向对象设计的结果适合采用DFD(DataFlowDiagram)表达
20世纪80年代以后相继出现了多种面向对象分析和设计的方法,较为流行的有Booch方法、Coad和Yourdon方法、Jocobson方法。

20世纪90年代出现了统一建模语言(UnifiedModelingLanguage,UML),以其简单、统一,又能够表达软件设计中的动态和静态信息,成为可视化建模语言事实上的工业标准。

问题:
[单选]面向对象分析与设计中,设计的主要任务不包括()。

A.描述系统如何解决问题
B.构建软件系统的设计模型
C.描述用户的需求
D.对最终的分析模型进一步精化
描述用户需求是面向对象分析阶段的主要任务。

问题:
[单选]下列软件开发过程模型中()不属于迭代开发模型。

A.RUP
B.XP
C.螺旋模型
D.瀑布模型
瀑布模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品,投入使用。

瀑布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。

问题:
[单选]欲开发一款系统,如果客户不能完整描述他们的需求,则开发过程最适宜采用()。

A.原型模型
B.瀑布模型
C.V模型
D.螺旋模型
螺旋模型将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。

螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。

问题:
[单选]McCall软件质量模型中,()属于产品转移方面的质量特性。

A.可测试性
B.正确性
C.可移植性
D.易使用性
McCall给出了一个三层模型框架,第一层是质量特性,第二层是评价准则,第三层适度量指标,如图7-3所示。

 。

相关文档
最新文档