软件系统开发技术答案

合集下载

软件工程(软件需求)习题与答案

软件工程(软件需求)习题与答案

软件工程(软件需求)习题与答案软件工程(软件需求)习题与答案1. 引言在软件工程领域,软件需求是项目成功的关键之一。

对于开发者来说,了解和熟悉软件需求的基本概念和流程是至关重要的。

本文将针对软件工程中的软件需求进行习题和答案的探讨,帮助读者更好地理解和应用相关知识。

2. 习题集2.1 习题一:什么是软件需求?为什么软件需求很重要?答案:软件需求是指软件开发过程中,对于所要开发的软件系统的功能、性能以及其他特点的描述和规定。

软件需求的编写和理解对于项目的成败具有决定性的作用。

准确的软件需求能够指导开发团队进行开发工作,并确保最终的软件产品符合用户的期望。

2.2 习题二:软件需求的分类是什么?答案:软件需求可以分为功能需求和非功能需求两类。

功能需求描述了软件系统应具备的功能和行为,非功能需求则描述了软件系统的性能、可靠性、安全性等方面的需求。

2.3 习题三:请列举几个软件需求的常见问题。

答案:常见的软件需求问题包括:- 不完整的需求描述:缺少必要的细节和规范,导致开发团队无法准确理解用户需求。

- 冲突的需求:不同的用户提出了矛盾的要求,导致开发过程复杂化。

- 模糊的需求:需求描述含糊不清,无法量化和验证。

- 可测量性问题:需求无法被准确地测量和评估。

- 可行性问题:需求不符合项目的可行性要求,无法被合理地实施。

3. 答案解析3.1 习题一解析软件需求是对软件系统功能、性能和其他特点的描述和规定。

软件需求的重要性在于它能够指导开发团队进行开发工作,并确保最终产品符合用户期望。

缺乏准确的软件需求往往导致项目失败或产品无法满足用户需求。

3.2 习题二解析软件需求可以分为功能需求和非功能需求两类。

功能需求描述了软件系统应具备的功能和行为,如注册、登录等;非功能需求描述了软件系统的性能、可靠性、安全性等方面的需求,如响应时间、可扩展性等。

3.3 习题三解析常见的软件需求问题包括需求描述不完整、冲突的需求、模糊的需求、可测量性问题以及可行性问题。

软件技术考试试题答案

软件技术考试试题答案

软件技术考试试题答案一、选择题1. 在软件开发中,面向对象编程的核心概念不包括以下哪一项?A. 类B. 对象C. 继承D. 函数2. 下列关于数据库管理系统的描述,哪一项是错误的?A. 数据库管理系统是一种软件,用于管理数据库。

B. 数据库管理系统可以提高数据的安全性和完整性。

C. 数据库管理系统能够减少数据冗余。

D. 数据库管理系统无法实现数据的远程访问。

3. 网络协议TCP/IP中的“IP”指的是什么?A. 互联网协议B. 内部个人网络C. 因特网服务提供商D. 信息处理4. 以下哪种软件不是系统软件?A. 操作系统B. 数据库软件C. 编译器D. 办公软件5. 在HTML中,用于创建超链接的标签是:A. <a>B. <img>C. <p>D. <table>二、填空题1. 在面向对象编程中,______ 是用来描述对象特征的一段代码,它定义了属性和方法。

2. 数据库设计通常分为三个阶段:概念设计、逻辑设计和______设计。

3. 网络安全中,______ 是一种通过加密和解密来确保信息安全传输的技术。

4. 软件开发生命周期包括需求分析、设计、编码、测试和______。

5. 在JavaScript中,______ 语句用于判断条件是否满足,并根据条件执行不同的代码块。

三、简答题1. 请简述软件测试的目的和基本方法。

2. 描述软件开发中的需求分析阶段,并说明其重要性。

3. 什么是网络安全?列举至少两种常见的网络安全威胁。

4. 解释什么是数据库规范化,并简述其作用。

5. 讨论开源软件的优势和可能的劣势。

四、论述题1. 论述云计算技术对现代企业信息技术基础设施的影响。

2. 分析人工智能在软件开发中的应用及其对未来软件开发的潜在影响。

3. 探讨大数据技术在提升企业决策能力方面的作用。

4. 论述移动应用开发的趋势及其对日常生活的影响。

5. 分析物联网技术在智能家居领域的应用及其带来的挑战。

软件开发考试题目及答案

软件开发考试题目及答案

软件开发考试题目及答案一、选择题(每题2分,共20分)1. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 确定软件的最终用户界面B. 确定软件的功能需求和性能需求C. 编写软件的详细设计文档D. 开始编写代码答案:B2. 面向对象编程中的“封装”指的是什么?A. 将数据和操作数据的方法组合在一起B. 将不同的数据类型组合在一起C. 将数据和控制数据的方法组合在一起D. 将不同的方法组合在一起答案:A3. 在敏捷软件开发中,以下哪个不是敏捷宣言的四个价值观之一?A. 个体和交互B. 可工作的软件C. 详尽的文档D. 响应变化答案:C4. 在软件测试中,黑盒测试和白盒测试的区别是什么?A. 黑盒测试关注软件的内部结构,白盒测试关注软件的功能B. 黑盒测试关注软件的功能,白盒测试关注软件的内部结构C. 两者都关注软件的功能D. 两者都关注软件的内部结构答案:B5. 软件项目管理的主要目标是什么?A. 确保软件按时发布B. 确保软件在预算内完成C. 确保软件满足所有需求D. 所有以上选项答案:D二、简答题(每题10分,共30分)1. 请简述软件开发生命周期(SDLC)的主要阶段。

答案:软件开发生命周期(SDLC)的主要阶段包括:需求收集、需求分析、系统设计、编码、测试、部署、维护和退役。

2. 解释什么是软件重构,并给出一个重构的例子。

答案:软件重构是指在不改变软件外部行为的前提下,对软件的内部结构进行调整以提高其可读性、可维护性和性能。

一个常见的重构例子是将一个过长的函数拆分成几个更小的、功能单一的函数。

3. 描述单元测试和集成测试的区别。

答案:单元测试是针对软件中的最小可测试部分(通常是单个函数或模块)进行的测试,以确保它们按预期工作。

集成测试则是在多个模块或组件已经单独测试后,将它们组合在一起进行测试,以确保它们能够协同工作。

三、应用题(每题25分,共50分)1. 假设你是一个软件开发团队的负责人,你的团队正在开发一个电子商务平台。

软件系统分析与设计复习资料参考答案

软件系统分析与设计复习资料参考答案

参考答案选择题1.D2.C3.D4.C5.B6.D7.C8.B9.D10.A11.B12.A13.B14.D15.A16.B17.A18.D19.C20.A21.D22.B23.B24.D25.D26.B27.B28.A29.A30.C31.A32.B33.A34.B35.B36.A37.B38.A39.A40.C41.A42.C43.C44.D45.A46.B47.D48.C49.D50.C51.C52.A53.D54.B55.A56.A57.D58.A59.D60.A61.B62.D63.C64.A65.A66.C67.C68.A69.D70.A71.D72.A73.C74.A75.D判断改错题1.(√)2.(×)有“泳道”概念的是活动图。

3.(×)题目中描述的是CORBA。

4.(×)水平坐标表示一组对象,垂直坐标表示时间顺序。

5.(√)6.(×)UML是建模语言,不是方法论。

7.(√)8.(√)9.(×)两者没有明显分界,需要反复迭代的进行。

10.(×)OOCASE通过外部接口可以方便的调用其它工具软件。

11.(×)定义不同。

12.(√)13.(√)14.(×)完成使命的对象可以被销毁。

15.(×)由图和文字描述组成。

16.(√)17.(×)描述的是白盒复用。

18.(√)19.(F)它不能直接调用EJB构件,而是通过使用代理来调用。

20.(F)不能有嵌套的动作或递归的动作表达式。

21.(T)22.(F)需求模型也是可复用的软件制品。

23.(F)构件图主要用于建立系统的静态实现模型。

24.(F)OOCASE通过外部接口可以方便的调用其它工具软件。

25.(F)“对象+消息”的程序设计模式。

26.(F)通过频繁使用设计样式来设计更大更复杂的系统。

27.(T)28.(T)29.(T)30.(F)协作图强调对象之间的关系,而时序图强调一组对象之间错作调用的时间顺序。

软件开发技术考试复习题及参考答案

软件开发技术考试复习题及参考答案

软件开发技术一、填空题1、软件工程学的内容可包括()、结构、()、()、环境、管理、规范等。

2、软件生存周期一般可分为问题定义、()、()、设计、()、测试、运行与维护阶段。

3、系统流程图是()的传统工具。

4、结构化语言是介于自然语言和()之间的一种半形式语言。

5、数据字典的内容包括六项:()、()、()、数据存储、处理逻辑、外部实体。

6、UML的定义包括()和()两个部分。

7、按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和()。

8、瀑布模型是以文档为驱动、适合于()的软件项目的模型。

9、对象具有标识唯一性、分类性、多态性、( ) 和( )等基本特性。

10、消息关联指的是对象()的一种依赖关系。

11、对象的规格说明包括对对象()的说明及对对象()的说明。

12、在需求分析阶段常用的图形工具有()、()、()。

13、模块独立的概念是()、()、()和局部化概念的直接结果。

14、基于计算机系统的系统元素包括:软件、硬件、人、()、()和过程等几个部分。

15、软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、()、可使用性和效率。

16、为了便于对照检查,测试用例应由输入数据和预期的()两部分组成。

17、在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、()。

18、需求分析的基本任务是准确的回答()。

19、常用的系统分析方法有四类,包括:()、数据流方法、信息造型方法以及()。

20、面向对象设计中,主要存在两种耦合,交互耦合和()。

21、UML是一种标准的图形化(即可视化)建模语言,它由()和()组成。

其中,前者是UML的表示法(语法),而后者给出前者的含义,是UML的语义。

二、选择题1、下列关于瀑布模型的描述正确的是()。

A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。

B. 瀑布模型具有良好的灵活性。

C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。

软件工程开发学考题(带答案)

软件工程开发学考题(带答案)

一.选择题:1.软件危机出现于___,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。

(C、B )A.50年代末B.60年代初C.60年代末D.70年代初A.运筹学B.工程学C.软件学D.软件学E.数字2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作__B_。

A.软件投机B.软件危机C.软件工程D.软件产生3.产生软件危机的原因有如下几点,除了___D__。

A、软件开发过程未经审查B、软件开发不分阶段,开发人员没有明确的分工C、所开发的软件,除了程序清单外,没有其他文档D、采用工程设计的方法开发软件,不符合软件本身的特点4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是__B_。

A.引入新技术提高空间利用率B.用较少的投资获得高质量的软件C.缩短研制周期扩大软件功能D.硬软件结合使系统面向应用5.一个软件项目是否进行开发的结论是在___B__文档中作出的。

A、软件开发计划B、可行性报告C、需求分析说明书D、测试报告6 .变换型和事务型是程序结构的标准形式。

从某处获得数据,再对这些数据作处理,然后将结果送出是属于_A__。

A.变换型 B 事务型7 .需求分析说明书不能作为___A__。

A、可行性研究的依据B、用户和开发人员之间的合同C、系统概要设计的依据D、软件验收测试的依据8 .结构化分析方法以数据流图、_D__和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

A.DFD图B.PAD图C.IPO图D.数据字典9 .系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的工作是在____B_阶段进行的。

A、需求分析B、总体设计C、详细设计D、编码阶段10.下列___D不是模块化设计的目的。

A、可采用结构化设计方法B、降低复杂度C、有利于信息隐蔽D、描述系统的功能与性能11.某个模块的作用域是指___D__。

全国软件计算机技术与软件专业技术资格考试

全国软件计算机技术与软件专业技术资格考试

选择题
在软件开发生命周期中,哪个阶段主要负责确定软件系统的功能和性能要求?
A. 需求分析
B. 系统设计
C. 编码实现
D. 测试验收(正确答案)
下列哪种算法常用于解决最短路径问题?
A. 冒泡排序
B. 二分查找
C. 迪杰斯特拉算法(正确答案)
D. 快速排序
在面向对象编程中,封装性主要体现在哪个方面?
A. 将数据和方法分开
B. 将数据和操作数据的函数绑定在一起(正确答案)
C. 类的继承关系
D. 多态性
下列哪项不是软件项目风险管理的主要目标?
A. 识别风险
B. 量化风险
C. 消除所有风险(正确答案)
D. 制定风险应对策略
在数据库设计中,实体-关系图(ER图)主要用于表示什么?
A. 数据流图
B. 数据结构
C. 实体、属性和实体之间的关系(正确答案)
D. 程序控制流
在软件测试中,黑盒测试主要关注什么?
A. 程序的内部结构和逻辑
B. 程序的功能是否符合需求规格说明(正确答案)
C. 程序的执行效率
D. 程序的代码质量
在敏捷开发方法中,哪个实践强调团队成员之间的面对面交流和协作?
A. 持续集成
B. 站立会议(正确答案)
C. 迭代开发
D. 用户故事估算。

软件开发试题及答案

软件开发试题及答案

软件开发试题及答案一、选择题(每题2分,共10分)1. 下列关于软件开发生命周期的描述中,错误的是:A. 需求分析阶段是软件开发的第一步B. 设计阶段需要确定软件的内部结构C. 编码阶段是将设计转换为代码D. 测试阶段是软件开发的最后阶段答案:D2. 在软件开发过程中,需求分析阶段的主要任务是什么?A. 编写代码B. 确定软件的功能和性能C. 进行软件测试D. 部署软件答案:B3. 敏捷开发方法的核心理念是:A. 过程和工具B. 文档和规范C. 个人和交互D. 客户合作答案:C4. 在面向对象编程中,封装的目的是:A. 提高代码的可读性B. 隐藏对象的实现细节C. 提高代码的执行效率D. 增加代码的复杂性答案:B5. 下列关于软件测试的描述中,正确的是:A. 测试是为了证明软件无错误B. 测试是为了发现软件的错误C. 测试可以提高软件的性能D. 测试是软件开发的可选步骤答案:B二、填空题(每题2分,共10分)1. 在软件开发过程中,需求分析阶段的主要任务是确定软件的________和________。

答案:功能;性能2. 敏捷开发方法强调的是________和________。

答案:迭代;增量3. 在面向对象编程中,继承的目的是________。

答案:代码重用4. 软件测试的主要目的是________。

答案:发现错误5. 在软件开发中,维护阶段包括________和________。

答案:纠错;改进三、简答题(每题5分,共20分)1. 请简述软件开发生命周期的主要阶段。

答案:需求分析、系统设计、实现、测试、部署、维护。

2. 敏捷开发方法与传统开发方法相比有哪些优势?答案:敏捷开发方法具有更高的灵活性和适应性,能够更快地响应变化,强调团队合作和客户参与,以及持续交付价值。

3. 面向对象编程的三大特性是什么?答案:封装、继承、多态。

4. 软件测试的目的是什么?答案:软件测试的目的是确保软件的质量,通过发现和修复错误来提高软件的可靠性和性能。

软件技术考试试题及答案

软件技术考试试题及答案

软件技术考试试题及答案一、选择题(每题2分,共60分)1.下列哪个不属于面向对象编程的基本特征?A. 封装B. 继承C. 多态D. 循环2.在Java语言中,以下哪个关键字不属于访问修饰符?A. publicB. privateC. protectedD. static3.以下哪种设计模式用于创建对象的复杂过程和创建过程的表现分离?A. 单例模式B. 工厂模式C. 代理模式D. 观察者模式4.在数据库中,以下哪个命令用于查询数据表的记录?A. INSERTB. UPDATEC. DELETED. SELECT5.以下哪个不属于网络通信协议?A. TCPB. IPC. HTTPD. JVM二、填空题(每题3分,共30分)1.JVM是指______________。

2.Java中集成的GUI框架是______________。

3.数据库操作语言的缩写是______________。

4.在Java语言中,异常处理机制使用的关键字是______________。

5.在面向对象编程中,重写父类方法时使用的关键字是______________。

三、简答题(每题10分,共40分)1.请简要解释面向对象编程的特点和优势。

2.请列举并简要解释至少三种常用的关系型数据库类型。

3.请解释什么是MVC架构,并简要说明各个组成部分的作用。

4.请解释Java中线程同步的概念,并说明至少两种实现线程同步的方法。

四、编程题(共30分)实现一个简单的Java程序,接收用户输入的两个整数,计算并输出它们的和。

答案:一、选择题(每题2分,共60分)1. C2. D3. B4. D5. D二、填空题(每题3分,共30分)1. Java虚拟机(Java Virtual Machine)2. Swing3. SQL(Structured Query Language)4. try5. super三、简答题(每题10分,共40分)1. 面向对象编程的特点包括封装、继承、多态和抽象。

信息技术第6章 软件开发练习题库(附答案)

信息技术第6章 软件开发练习题库(附答案)

第六章软件开发一、单项选择1.给定如下所示的JAVA代码,则运行时,会产生哪种类型的异常()String s = null;s.concat( "追加的字符串");A. ArithmeticExceptionB. NullPointerExceptionC. IOExceptionD. ClassNotFoundException参考答案:B答案解析:空值的字符串变量无法进行追加字符串运算。

A选项为数学运算异常;C选项为输入输出异常;D选项为未找到类定义的异常。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第二节 Web熟悉开发 4.了解Java编程。

2.为使得开发人员对软件产品的各阶段都进行周密的思考,从而减少返工,所以编制下列哪个文件是很重要的()A.需求说明B.概要说明C.软件开发文档D.测试大纲参考答案:C试题解析:软件开发文档是软件开发使用和维护过程中的必备资料。

它能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,尤其在维护工作中,文档是不可或缺的资料。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第一节软件开发基础知识3.下列哪个文档属于软件开发人员为用户准备的有关该软件使用、操作、维护的资料()A.开发文档B.管理文档C.用户文档D.软件文档参考答案:C试题解析:用户文档可以帮助用户掌握相关软件的使用、操作及维护。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第一节软件开发基础知识4.关于中间件特点的描述,不正确的是()A.中间件可运行于多种硬件和操作系统平台上B.跨越网络、硬件、操作系统平台的应用或服务可通过中间件透明交互C.中间件运行于客户机/服务器的操作系统内核中,提高内核运行效率D 中间件应支持标准的协议和接口参考答案:C试题解析:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。

软件开发工具试题及答案

软件开发工具试题及答案

软件开发工具试题及答案一、选择题1. 下列哪个不是常见的软件开发工具?A. 编译器B. 集成开发环境(IDE)C. 虚拟机D. 数据库管理系统答案:C. 虚拟机2. 下列哪个是版本控制工具?A. PhotoshopB. GitC. EclipseD. JIRA答案:B. Git3. 下列哪个工具经常用于编写和运行Python代码?A. Visual Studio CodeB. XcodeC. Sublime TextD. Notepad++答案:A. Visual Studio Code4. 下列哪个工具是用于自动化构建和测试软件的?A. JenkinsB. PhotoshopC. VMwareD. Eclipse答案:A. Jenkins5. 下列哪个工具用于模拟移动设备?A. Android StudioB. PhotoshopC. XcodeD. Eclipse答案:A. Android Studio二、填空题1. 编译器是一种将源代码转换为_______的工具。

答案:机器码(可执行代码)2. 在版本控制系统中,_______是一个存储代码变更历史的数据库。

答案:仓库(repository)3. _______是一种用于测试用户界面的工具,可以记录和重放用户操作。

答案:Selenium4. _______是用于创建和运行虚拟机的开源工具。

答案:VirtualBox5. _______是一个使用Java编写的集成开发环境。

答案:Eclipse三、问答题1. 简要解释什么是集成开发环境(IDE)?答案:集成开发环境(IDE)是一种软件工具,提供了编码、调试、编译、构建和部署等开发任务所需的全部功能在一个统一的界面中。

它通常包含了代码编辑器、调试器、自动补全、版本控制集成和构建工具等功能,能够提高开发效率和代码质量。

2. 举例说明一个常见的集成开发环境(IDE)及其主要特点。

答案:一个常见的集成开发环境是Visual Studio。

软件开发应知应会-试题答案整理

软件开发应知应会-试题答案整理

软件开发应知应会-试题答案整理本页仅作为文档页封面,使用时可以删除This document is for reference only-rar21year.MarchABCD1、栈和队列的共同特点是()。

CA.都是先进先出B.都是先进后出C.只允许在端点处插入和删除D.没有共同点2、在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需要向后移动()个元素。

A.n-iB.n-i+1C.n-i-1D.i B3、在一棵二叉树中,度为0的节点个数是n0,度为2的节点个数是n2,则有n0=____。

CA.n2-1B.n2C.n2+1D.n2+21、以下是线性表的数据结构是()。

ABCDA.数组B.单链表C.双链表D.循环链表2、以下()是常用的哈希函数构造方法。

ABCDA.直接寻址法B.除留余数法C.随机数法D.平方取中法1、 ()最主要的目的是将文件的内容与显示分隔开来。

BA.HTMLB.CSSC.JavaScriptD.MySql2、()是Android程序的呈现层,显示可视化的用户界面,并接收与用户交互所产生的界面事件AA. activityB.serviceC.content providerD.以上都不是3、设计规范应该被()使用。

AA.系统所有产品开发人员B.仅产品经理C.仅UE工程师需求人员D.仅UI工程师1、以下哪些是语义化标签?CDA.divB.spanC.articleD.header2、 CSS的定位常用属性有以下几个值()。

ABCDA.staticB.relativeC.fixedD.aBsolute1、 SQL语句中删除一个表中记录,使用的关键字是()。

CA.selectB.insertC.deleteD.update2、 C#中导入某一命名空间的关键字是()。

AingeC.importD.include3、以下哪个是SQL中用来统计数量的函数()。

AA.count()B.max()C.min()D.now()1、以下哪些是Scala语言的特点()。

软件工程部分课后练习题答案

软件工程部分课后练习题答案

第一章1.计算机系统是由计算机硬件系统和软件系统这两个密不可分的部分组成的。

2.计算机软件系统通过运行程序来实现各种不同应用,包括用户为自己的特定目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序运行的系统程序、管理和控制机器系统资源的程序等。

3.在软件工程学中,软件开发技术包括软件开发方法学、软件工具和软件工程环境。

4.在软件工程层次结构中,包括工具层、方法层、过程、技术层和质量保证层。

5.在面向对象概念中,消息传递是其与外部世界相互关联的唯一途径。

第三章1.软件需求分析,可以把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础.2.软件需求工作基本上包括收集用户、市场等方面对项目的需要,经过分析建立解题模型,细化模型,抽取需求。

3.结构化分析方法的基本步骤是采用由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,绘制数据词典和加工说明;最终写出软件需求和规格说明书.4.面向对象分析方法总是从理解系统的“使用实例”开始,基本步骤是:定义系统的用例,在领域分析的基础上建立问题域的类(对象模型),然后开始建立对象—-关系和对象——行为模型。

5.需求分析评审过程由以下5个步骤组成:规划、准备、召开审查大会、修改缺陷、重审。

第四章1.与软件需求分析一样,软件设计也有两种主要设计方法:以结构化设计为基础的结构化软件设计和面向对象方法指导的面向对象软件设计.2.传统的软件设计任务通常分两个阶段完成。

第一个阶段是概要设计,包括体系结构设计和接口设计,并编写概要设计文档;第二阶段是详细设计,其任务是确定各个软件的数据结构和操作,产生描述各软件组件的详细设计文档.3.结构化的软件设计方法是一种面向数据流的设计方法,在面向数据流的方法中,数据流是考虑一切问题的出发点。

4.在数据流图中所代表的结构化设计模型中,所有系统均可纳入两种典型的形式,因此系统结构图也有两种类型:变换型系统结构图,事务型系统结构图.5.Jackson表示法包括图形描述(Jackson图)和文本描述(Jackson伪代码)两种形式。

软件开发工具试题大题答案)

软件开发工具试题大题答案)

(一)三、简答题(本大题共5小题,每小题5分,共25分)1. 什么是过程化程序设计语言?答案:第三代程序设计语言一般都是过程化语言,即需要由编写程序的人一步一步地安排好机器的执行次序,虽然不是一对一地指挥到机器指令,但是还必须在人的头脑中安排好实际的执行过程。

2. 代码生成器依据哪些资料工作?答案:代码生成器生成代码时依据三方面的资料:(1)信息库里已有的有关资料。

(2)各种标准模块的框架和构件。

(3)使用者通过屏幕前的操作送入的信息。

3. 什么是数据字典?答案:数据字典是一种描述数据内容的概念模式。

它用表格的形式列出数据的基本属性以及相互关系。

4. 简述信息库这一概念提出的背景。

答案:信息库是针对软件开发或信息系统开发中的大量信息管理工作提出来的。

早在手工进行系统分析的阶段人们已经发现,许多问题出在信息交流中的误解与损失。

按照传统的生命周期法,每一阶段都是用相应的文档实现过渡的,在信息传递中,误解与丢失十分严重。

另外,软件的修改与版本更新也引起一些问题,有时不得不从头收集基础信息,不但浪费很大,而且会引起用户的厌烦。

随着数据库技术的发展,人们很自然地想到用计算机来办这件事。

这就是信息库这个概念提出的背景。

5. 为自己所用而开发软件开发工具时,应注意哪些事项?答案:为自己所用而开发软件开发工具时,应注意以下事项:(1)从实际出发,设定现实的、有限的目标。

(2)坚持短小实用,逐步积累,避免期望过高,贪大求全。

(3)注意文档的齐全和资料的积累。

四、论述题(本大题共1小题,共10分)1. 承担大型软件开发任务的程序员,必须遵守哪些规定?答案:保证严格地在本模块范围内操作,决不使用可能干扰其他模块的命令或函数。

原则上讲,有一定经验的程序员是可以通过某些命令直接影响机器内部信息的。

对于单人工作的程序员来说,这常常是发挥技巧、提高效率的手段,但是对于项目组的成员来说,这必然会导致混乱,应当严格禁止。

(2)严格按总体设计的要求和理解去传递参数值,决不随意修改其内容或含义。

软件系统开发技术答案1-3

软件系统开发技术答案1-3

软件系统开发技术试题(一)一、单项选择题(本大题共10小题,每小题1分,共10分)1. 设计软件结构一般不.确定( D )A.模块之间的接口B.模块间的调用关系C.模块的功能D.模块内的局部数据2. 软件结构化设计中,好的软件结构应该力求做到( B )A.顶层扇出较少,中间扇出较高,底层模块低扇入B.顶层扇出较高,中间扇出较少,底层模块高扇入C.顶层扇入较少,中间扇出较高,底层模块高扇入D.顶层扇入较少,中间扇入较高,底层模块低扇入3. 两个模块都使用同一张数据表,模块间的这种耦合称为( A )A.公共耦合B.内容耦合C.数据耦合D.控制耦合4. 划分模块时,下列说法正确的是( A )A.作用范围应在其控制范围之内B.控制范围应在其作用范围之内C.作用范围与控制范围互不包含D.作用范围与控制范围不受限制5. 重用率高的模块在软件结构图中的特征是( B )A.扇出数大B.扇入数大C.扇出数小D.内聚性高6. 面向对象建模得到的三个模型,其中核心的模型是( A )A.对象模型B.功能模型C.逻辑模型D.动态模型7. 从结构化的瀑布模型看,在软件生存周期的几个阶段中,对软件的影响最大是( C )A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段8.对UML的叙述不正确...的是( D )A.UML统一了Booch方法、OMT方法、OOSE方法的表示方法。

B.UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。

C.UML融入了软件工程领域的新思想、新方法和新技术。

D.UML仅限于支持面向对象的分析与设计,不支持其它的软件开发过程。

9.以下哪个软件生存周期模型是一种风险驱动的模型( C )A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型10.以下哪一项对模块耦合性没有..影响( D )A.模块间接口的复杂程度B.调用模块的方式C.通过接口的信息D.模块内部各个元素彼此之间的紧密结合程度二、填空题(本大题共10小题,每空2分,共20分)11.数据流图描绘数据在系统中___流动和处理_______的过程。

“软件技术基础”考题(含答案)

“软件技术基础”考题(含答案)

第三十二次一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 在程序设计中,常用一维数组来表示线性表的顺序存储空间。

( 1 )2. 软件测试的目的是为用户提供没有错误的程序。

(2 )3. 栈顶的位置只能进行进栈操作不能进行退栈操作。

( 3 )4. 处于等待状态的进程,若其等待的事件已发生,就立即转入运行状态。

( 4 )5. 线性表若采用链式存储表示时其结点之间的存储单元地址可以不连续。

( 5 )6. 在进行插入排序时,其数据比较次数与数据的初始排列有关。

( 6 )7. 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。

( 7 )8. 在操作系统中,进程最基本的特征是静态性和并发性。

( 8 )9. 软件危机是由于软件产品过多而产生的。

( 9 )10.面向过程系统需求分析使用的主要工具是数据流图和数据字典。

( 10 )参考答案:ABBBA AABBA二、选择题(每小题1分,共5分)1. 进程从运行状态进入就绪状态的原因可能是( 11 )。

11 (A)时间片用完 (B) 等待某一事件(C) 等待的事件已发生 (D) 被选中占有处理机2. 需求分析中开发人员主要从用户那里了解( 12 )。

12 (A) 软件怎样做(B)软件做什么(C) 输入的信息 (D) 软件的测试3. 队列的操作原则是( 13 )。

13 (A) 先进后出(B)先进先出(C) 只进不出 (D) 只出不进4. 在需要经常查找结点的前驱后后继的情况下,使用( 14 )比较合适。

14 (A) 单链表 (B) 循环链表(C)双链表 (D) 顺序表5. 任何两个并发进程之间( 15 )。

15 (A) 一定存在互斥关系 (B) 一定存在同步关系(C) 一定彼此独立无关(D)可能存在同步或互斥关系参考答案:ABBCD第三十一次一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 数据在计算机内存中的表示是指数据的存储结构。

软件开发工程师考试试题含答案

软件开发工程师考试试题含答案

软件开发工程师考试试题含答案2016年软件开发工程师考试试题(含答案)一.选择题1、系统测试使用( C )技术, 主要测试被测应用的高级互操作性需求, 而无需考虑被测试应用的内部结构。

A、单元测试B、集成测试C、黑盒测试D、白盒测试2、单元测试主要的测试技术不包括(B )。

A、白盒测试B、功能测试C、静态测试D、以上都不是3、(A )的目的是对最终软件系统进行全面的测试,确保最终软件系统满足产品需求并且遵循系统设计。

A、系统测试B、集成测试C、单元测试D、功能测试4、如果一个产品中次严重的缺陷基本完成修正并通过复测,这个阶段的成品是( A )。

A、 Alpha版B、Beta版C、正版D、以上都不是5、自底向上法需要写(A )。

A、驱动程序B、桩程序C、驱动程序和桩程序D、 .以上都不是6、测试ATM取款功能,已知取款数只能输入正整数,每次取款数要求是100的倍数且不能大于500,下面哪个是正确的无效等价类(C)A、(0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);B、(500,+∞)C、(500,+∞)、任意大于0小于500的非100倍数的整数;D、(-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);7、因果图/判定表工程方法在以下那种情况下不适用(C)A、输入输出明确,或输入输出因果关系明确的情况下B、被分析的特性或功能点复杂,输入项目很多的情况下C、系统输入之间相互约束多,需要做大范围的组合测试情况下D、系统输入之间基本没有相互联系8、以下说法不正确的是(D)A、测试原始需要明确了产品将要实现了什么B、产品测试规格明确了测试设计内容C、测试用例明确了测试实现内容D、以上说法均不正确9、可测试性中,有关系统可观察性的理解,下面说法那个是错误的( B)A、系统所有的输出结果可观察,错误输出易于识别;B、系统运行状态和内部处理的过程信息可观察;C、系统内部变量名及其取值可观察;D、系统内部重要对象的状态和属性可观察;E、系统内部重要的操作的处理时间可观察;F、系统内部重要的资源的占用情况及单个资源的创建、保持、释放过程可观察10、测试脚本的编写规范强调:(ABCD )A、可读行B、可重用性C、可维护性D、可移植性11、当继承某个特性是,通常会从哪些角度对该特性进行测试分析?(AC )A、失效影响度B、成熟度C、继承方式D、用户原始需求12、从下列关于软件测试的叙述中,选出正确的叙述(CD)A、用黑盒法测试时,测试用例是根据程序内部逻辑设计的B、测试的目的是验证该软件已正确的实现了用户的要求C、发现错误多的程序块,残留在模块中的错误也多D、测试设计时,应充分考虑异常的输入情况13、软件验收测试的合格通过准则是:(ABCD)A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

本科软件开发工程师面试问题汇总

本科软件开发工程师面试问题汇总

本科软件开发工程师面试问题汇总
一、在软件开发过程中,下列哪项活动通常不属于需求分析阶段?
A. 与客户沟通,明确需求
B. 制定项目计划
C. 编写需求规格说明书
D. 对需求进行评审
(答案)B
二、对于一名本科软件开发工程师而言,下列哪种编程语言是其必须熟练掌握的?
A. HTML
B. SQL
C. MATLAB
D. 所有编程语言
(答案)B
三、在软件设计中,下列哪项原则不是设计模式所强调的?
A. 高内聚,低耦合
B. 开闭原则
C. 复杂即美
D. 单一职责原则
(答案)C
四、下列哪项不是软件测试中常见的测试类型?
A. 单元测试
B. 集成测试
C. 美观测试
D. 系统测试
(答案)C
五、在软件开发过程中,版本控制的主要目的是什么?
A. 提高开发效率
B. 管理代码变更
C. 减少测试工作量
D. 优化软件性能
(答案)B
六、对于一名软件开发工程师来说,下列哪项技能不是其必须具备的软技能?
A. 团队协作能力
B. 沟通能力
C. 快速学习能力
D. 高超的编程技巧
(答案)D
七、在敏捷开发方法中,下列哪个会议是团队每日进行的,用于同步进度和解决问题?
A. 项目启动会
B. 迭代评审会
C. 每日站会
D. 回顾会
(答案)C
八、下列哪项不是软件工程师在解决技术难题时常用的方法?
A. 查阅技术文档
B. 向同事请教
C. 猜测和尝试
D. 使用搜索引擎查找解决方案
(答案)C。

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

软件系统开发技术试题(一)一、单项选择题(本大题共10小题,每小题1分,共10分)1. 设计软件结构一般不.确定(D )A. 模块之间的接口B.模块间的调用关系C.模块的功能D.模块内的局部数据2. 软件结构化设计中,好的软件结构应该力求做到(B )A. 顶层扇出较少,中间扇出较高,底层模块低扇入B. 顶层扇出较高,中间扇出较少,底层模块高扇入C. 顶层扇入较少,中间扇出较高,底层模块高扇入D. 顶层扇入较少,中间扇入较高,底层模块低扇入3. 两个模块都使用同一张数据表,模块间的这种耦合称为(A )A. 公共耦合B.内容耦合C.数据耦合D.控制耦合4. 划分模块时,下列说法正确的是(A )A. 作用范围应在其控制范围之内B. 控制范围应在其作用范围之内C. 作用范围与控制范围互不包含D. 作用范围与控制范围不受限制5. 重用率高的模块在软件结构图中的特征是(B )A.扇出数大B.扇入数大C.扇出数小D.内聚性高6. 面向对象建模得到的三个模型,其中核心的模型是(A )A.对象模型B.功能模型C.逻辑模型D.动态模型7. 从结构化的瀑布模型看,在软件生存周期的几个阶段中,对软件的影响最大是(C )A.详细设计阶段B.概要设计阶段C.需求分析阶段D.测试和运行阶段&对UML的叙述不正确的是(D )A. UML统一了Booch方法、OMT方法、OOSE方法的表示方法。

B. UML是—种定义良好、易于表达、功能强大且普遍适用的建模语言。

C. UML融入了软件工程领域的新思想、新方法和新技术。

D. UML仅限于支持面向对象的分析与设计,不支持其它的软件开发过程。

9•以下哪个软件生存周期模型是一种风险驱动的模型( C )A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型10.以下哪一项对模块耦合性没有..影响(D )A. 模块间接口的复杂程度B. 调用模块的方式C. 通过接口的信息D. 模块内部各个元素彼此之间的紧密结合程度二、填空题(本大题共10小题,每空2分,共20分)1数据流图描绘数据在系统中 —流动和处理__ 的过程。

P40 2•为了便于对照检查,测试用例应由输入数据和预期的 —输出结果(输出数据)__ 两部分组成。

3•面向对象分析的目的是对 ______ 目标系统 _______ 进行建模。

4. 结构化方法总的指导思想是一自顶向下__ 逐层分解。

5. 在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称 为—偶然内聚。

6. 用来模拟被测模块的上级调用模块的模块称为 _驱动模块_ _7•—个模块的作用域指受该模块内一个 —判定____影响的所有模块的集合。

8. 在用况图中,关联是参与者和用况(USE CASE 之间的唯一关系。

9. RUP 的突出特点是一种以用况(Use Case )为驱动的、以体系结构为中心的、迭代增量式开发。

10. 在RUP 中,规定了四个开发阶段:初始阶段、精化阶段、构造阶段和移交阶段。

三、 名词解释题(本大题共 6小题,每小题3分,共18分) 1 •软件生存周期模型答:从概念上来讲,软件生存周期模型是一个包括软件产品开发、运行和维护中有关过程、活动和任务的 框架,覆盖了从该系统的需求定义到系统的使用终止。

从应用的角度来说,软件生存周期模型为组织软件开发活动提供了有意义的指导。

2. 系统模型答:简单地说,模型是任一抽象,其中包括所有的基本能力、特性或一些方面,而没有任何冗余的细节。

进一步地说,模型是在特定意图下所确定的角度和抽象层次上对物理系统的描述,通常包含对该系统边界 的描述,给出系统内个模型元素以及它们之间的语义关系。

3. 白盒测试法答:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过 程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际 的运行状态与预期的状态是否一致。

白盒法也不可能进行穷举测试。

4. 信息隐蔽答:信息隐蔽是指在每个模块中所包含的信息(包括具有特定语义的数据和处理过程)不允许其他不需要 这些信息的模块访问。

5. 测试用例答:为了发现程序中的故障而专门设计的一组或多组测试数据。

6. 类答:类是一组具有相同属性、操作、关系和语义的对象的描述。

四、 简答题(本大题共 5小题,每小题6分,共30分)1. 简述演化模型以及可适应的情况,为什么? 答:简述演化模型如图所示:'集成一演化模型主要是针对事先不能完整定义需求的软件开发。

在用户提出待开发系统的核心需求的基础上,软 件开发人员按照这一需求,首先开发一个核心系统,并投入运行,以便用户能够有效地提出反馈,接P162核心系统开发第二次迭代着,软件开发人员根据用户的反馈,实施开发的迭代过程。

2. 结构化分析方法为了表达系统模型,给出了几个基本概念?它们是如何表示的?答:结构化分析方法给出了5个术语:数据流:加工,数据存储、数据源、数据潭,数据流是数据的流动,数据流表示为--------加工是对数据进行变换的单元,即它接受输入的数据,对其进行处理,并产生输出。

数据存储是数据的静态结构。

数据源是数据流的起点;数据潭是数据流的归宿地。

数据源和数据潭是系统之外的实体,可以是人、物或其他软件系统。

■表示。

3. 简述衡量模块独立性的两个标准及其含义。

答:衡量模块的独立性的标准是两个定性的度量标准:耦合性和内聚性。

(1)耦合性。

也称块间联系。

指软件系统结构中各模块间相互联系紧密程度的一种度量。

模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。

模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。

⑵内聚性。

又称块内联系。

指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。

若一个模块内各元素(语句之间、程序段之间)的联系越紧密,则它的内聚性就越高。

耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。

4. 说明用况之间有哪几种关系,说明每种关系的含义。

答:用况之间可以具有三种关系,即泛化、扩展和包含。

泛化:泛化是用况之间的一般/特殊关系。

USE CASE A到USE CASE B的泛化,指出A是B的特殊情况。

扩展:记为《extend》,USE CASE A到USE CASE B勺一个扩展关系,指出了USE CASE B的一个实例可以由A 说明的行为予以扩展(根据该扩展所说明的特定条件),并依据该扩展点定义的位置,A说明的行为被插入到B中。

包含:记为《in elude》,USE CASE A到USE CASE B勺一个包含,指出A的一个实例将包含B说明的行为,即这一行为将包含在A定义的那部分中。

5. 结构化设计中总体设计和详细设计的目标和任务是什么?答:结构化设计分为总体设计和详细设计。

总体设计的目标是:建立系统的模块结构,即系统实现所需要的软件模块一系统中可标识的软件成分,以及这些模块之间的调用关系。

总体设计的具体任务是:将DFD转化为MSD详细设计的目标是将总体设计阶段所产生的系统高层结构,映射为以这些术语所表达的低层结构,也是系统的最终结构。

详细设计的主要任务是:给出软件模块结构中各个模块的内部过程描述,也就是模块内部的算法设计。

五、应用题(本大题共2小题,第1小题10分,第2小题12分,共22分)1 •根据下列变换型的数据流图,设计出初始软件结构图。

答:主模块2.下列是某程序的N-S图SI S3(1)请将其转换成PAD图(2)请将其转换成伪码表示。

答:(1) PAD图(2)伪码表示:beginif L1 thenBeg in S1;while L2 dobegin S2;if L3 then S3 else S4;endendelse S5;en d;软件系统开发技术试题(二)一、单项选择题(本大题共 10小题,每小题1分,共10分) 1 •以下哪个软件生存周期模型是一种风险驱动的模型(C )A .瀑布模型 C.螺旋模型2.结构化分析建立功能模型的工具是(BA . DFDC . DDB.增量模型 D.喷泉模型 )B.判定树/判定表D.结构化语言3•模块中所有成分结合起来完成一项任务,该模块的内聚性是(A )A.功能内聚 B .顺序内聚 C.通信内聚D.逻辑内聚4.以下哪一项对模块耦合性没有 影响(D )A. 模块间接口的复杂程度B. 调用模块的方式C. 通过接口的信息5. 检查软件产品是否符合需求定义的过程称为A .确认测试 C.系统测试6. 下面关于详细设计的叙述中,错误..的是(A .程序流程图可以描述结构化程序 C. NS 图描述的程序一定是结构化的7.集成测试是为了发现(A )A .接口错误C.性能、质量不合要求 &结构化程序设计,主要强调的是(A .程序的执行效率 C.程序的可理解性9.下面关于文档的叙述,错误 的是(A. 文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节B. 文档是软件产品的一部分,没有文档的软件就不成为软件C. 高质量文档对于转让、变更、修改、扩充和使用有重要的意义D. 软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量D.模块内部各个元素彼此之间的紧密结合程度A )B.集成测试 D.单元测试 B )B.程序流程图不能描述结构化程序 D. PAD 图描述的程序一定是结构化的 B.编码错误 D.功能错误C )B.模块的内聚 D.模块的耦合 A )10 .面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是( C )A . Booch 方法 B. Coad 方法C . UML语言 D. OMT方法二、填空题(本大题共10小题,每小题2分,共20分)1 .为了克服软件危机,1968年北大西洋公约组织的工作会议上首先提出了软件工程的概念。

2. 变换型数据流图是由输入、_________________ __变换(或处理)—、数据加工仲心变换)和输出三部分组成的。

3 •软件产品在交付使用之前一般要经过_________ 单元测试、集成测试、确认测试和系统测试。

4•子类自动共享父类数据结构和方法的机制是继承性_ _,这是类之间的一种关系。

5. G J • Myers提出:软件测试是为了发现—程序错误而执行程序的过程。

6. 状态图反映了状态与事件与状态_ ___________ 的关系。

7. 两个或两个以上的模块共同引用一个全局数据项,这种耦合被称为公共耦 _______8. 用况之间可以具有三种关系,即泛化、扩展和包含。

泛化是用况之间的一般/特殊关系。

相关文档
最新文档