软件工程简答-郑州轻工业学院.docx_第1页
软件工程简答-郑州轻工业学院.docx_第2页
软件工程简答-郑州轻工业学院.docx_第3页
软件工程简答-郑州轻工业学院.docx_第4页
软件工程简答-郑州轻工业学院.docx_第5页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、简答题(6*5分,原题13选6)1. 什么是软件工程,其目标是什么?答:软件工程是指导软件开发和维护的工程性学科,他以计算机科学理论和其他相关学科的理论为指导,采用工程化的概念、原理、技术、和方法进行软件的开发和维护,把经过时间考验且证明正确的管理技术和当前得到的最好的技术方法结合起来,以较少的代价获得高质量的软件并维护它。目标:运用先进的软件开发技术和管理方法来提高软件的质量和生产率。2. 什么是软件生存期,主要有那些阶段组成,每一个阶段的主要工作是什么?答:软件生存期:软件孕育、诞生、成长、成熟、衰亡的生存过程;主要由软件定义、软件开发、运行维护三个时期完成;又可分为五个阶段:1) 问题的定义与可行性的研究:确定工程的总目标和可行性导出实现工程目标应使用的策略及系统必须完成的功能。2) 需求分析:对要解决的问题进行详细的分析,制定设计软件需求规格说明书;3) 软件设计:从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案;4) 程序编码和单元测试:根据所做的设计,运用编程语言实现功能,并对软件中的最小可测试单元进行检查和验证;5) 集成测试和系统测试:将已测试过的模块按照设计规格说明的顺序组装过程中检查模块连接中的问题;根据规格说明要求,对必须实现的各项需求进行逐项确认;6) 软件运行和维护:软件再运行中可能由于多方面的原因需要对他进行修改。3. 什么是软件工程方法学,软件工程方法学三要素各代表什么?答:软件开发生命周期全过程中使用的一整套技术的集合称为软件工程方法学:三要素:1) 方法:为建造软件提供技术上的方法;2) 工具:为方法的运行提供自动或半自动的软件支撑环境;3) 过程:规定了完成各项任务的工作步骤。4. 在软件生存期模型中,瀑布模型的优缺点,快速原型模型的优点,增量模型的优点?答:瀑布模型优点:(一步步执行,较为规范的文档)1) 可强迫开发人员采用规范化的方法;2) 严格的规定了每个阶段必须提交的文档;3) 要求每个阶段交出的所有产品都必须经过验证的。瀑布模型的缺点:(过度依赖文档)1) 由于完全依赖书面的规格说明,一旦规格说明与用户之间需求有差异,就会导致最终开发出与用户需求不一致的软件产品;2) 瀑布模型只适用于项目开始时项目已经确定的情况下。快速原型模型优点:(快速出原型增加UI界面不易出错)1) 有助于满足用户真实需求;2) 开发过程基本按线性顺序进行;3) 因规格说明文档已正确描述用户需求,后续开发阶段不会因发现规格说明文档有错而进行较大的返工;4) “快速”,尽快建造出原型系统,加快软件开发过程,节约软件开发成本5) 所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下;6) 使用这个模型的前提是要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。螺旋模型优点:1) 利于软件的重用;2) 减少或多测试或测试不足带来的风险;3) 在螺旋模型中维护的只是模型的另一个周期,因而在维护和开发之间并没有本质区别。螺旋模型缺点:风险不易发现,必须要求开发人员具有丰富的风险评估经验和专业知识。5. 什么是结构化分析模型?各部分的含义?答:结构化建模方法是一种建模技术,主要包括:数据字典:包括在目标系统中使用和生成的所有数据对象;数据流图(DFD):描述数据在系统中如何被传送或变换,以及描述如何对数据流进行变换的功能(子功能),用于功能建模;实体-关系图(ER图):描述数据以及数据对象之间的关系;状态-迁移图(STD):描述系统对外部事件如何响应、如何动作,用于行为建模。6. 结构化设计和结构化分析两者之间的关系?答:简单来说,结构化分析是结构化设计的基础。7. 结构化设计分为哪两个阶段,每个阶段的主要工作是什么?答:分4个阶段:1) 体系结构设计:定义软件模块及其之间的关系;2)接口设计:包括外部接口(系同内部与外部之间)和内部接口(系统内部各元素之间)。3) 数据接口:根据ER图来确定软件涉及的文件系统及数据库的表结构。4) 过程设计:确定软件各个组成部分内的算法及内部数据结构,并选定某种表达形式来描述各种算法。8. 软件设计原则都有哪些?答:有五个原则:1)分而治之:将大型复杂问题分解成许多容易解决的小问题,使之易于解决;2)模块独立性:指软件中每个模块只涉及软件要求的具体的子功能,而与软件系统中其他模块的接口是简单的;3)提高抽象层次:忽视一个主题中与当前目标无关的方面,以便更充分地注意与当前目标有关的方面;4)复用性设计:同一事件不做修改或稍加修改就可以多次重复使用;5)灵活性设计:使功能信息隐藏起来,利于更加灵活的使用。9. 什么是内聚,什么是耦合?为了保证模块独立性,在划分模块时应该遵循什么原则?答:内聚:模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量耦合:模块之间的相互独立性(相互连接的紧密程度)的度量。10. 面向对象分析的三个模型各是什么?答:三个模型分别是:1) 用例模型:由用例和场景表示的功能模型;2) 对象模型:由类和对象表示的静态模型;3) 交互模型:由状态图、顺序图等表示的动态模型。11. 请对下面代码的布局进行改进,使其符合规范其更容易理解。修改后代码如下:int i, j, t, n = 0, temp;int a = null;for (i=1; i=n-1; i+) for (i = 1; i = n - 1; i+) t=i; t = i;for (j=i+1; j=n; j+) for (j = i + 1; j = n; j+)if (ajat) t=j; if (aj 7个(3)首字符京(4)非“京”(5)第2个字符字母(6)非字母(7)第3-7个字符数字(8)非数字(9)测试用例如下:1) 京H87774(1)(4)(6)(8)2) 京H8777(2)3) 京H877745 (3)4) 冀H87774(5)5) 京987774(7)6) 京BA7774(9)2、根据白盒测试,给出这段代码的语句覆盖测试用例?判定覆盖测试用例?条件覆盖测试用例?条件组合测试用例? 1)输入a,b,x;2)If (a2 and b=1)x=x/a;elsex=x+1;3)If (a=4 or x4)x=x+2;4) 输出 a,b,x.(参考235页的例子),画出流程图,给路径、条件标号、设计测试用例。(1) 语句覆盖(4,1,4),(4,1,3)(1,0,1),(1,0,2)(2) 判定覆盖(4,1,4),(4,1,3)(1,0,1),(1,0,2)(3) 条件覆盖(4,1,16),(4,1,6)(1,0,1),(1,0,2)(4) 多条件组合覆盖(4,1,16),(4,1,6)(4,0,1),(4,0,4)(1,1,4),(1,1,7)(1,0,1),(1,0,2)3、招生系统需求描述: 学校首先公布招生条件,考生根据自己的条件报名,之后系统进行资格审查,并给出资格审查信息; 对于资格审查合格的考生可以参加答卷,系统根据学校提供的试题及答案进行自动判卷,并给出分数及答题信息,供考生查询; 最后系统根据学校的录取分数线进行录取,并将录取信息发送给考生。(1)给出该招生系统的顶层数据流图。(43页图3-7)(2)给出该招生系统的1层数据流图。(44页图3-8)4、某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。划分等价类:输入数据有效等价类无效等价类职称(1)教授(5)四种职称之外的任意一种(2)副教授(3)讲师职称兼工龄(4)助教兼工龄大于2年(6)助教兼工龄等于2年(7)助教兼工龄小于2年测试用例如下:输入数据预期结果覆盖范围教授输入有效,进行工资调整(1)副教授输入有效,进行工资调整(2)讲师输入有效,进行工资调整(3)助教3输入有效,进行工资调整(4)助教2输入有效,不进行工资调整(6)助教1输入有效,不进行工资调整(7)工程师输入无效(5)5、分析如下数据流图,指出其中有哪些错误? 图1 分层数据流图(1) 父图的处理1没有输入流(2) 子图的数据流B应为C(3) 子图的数据流F多余6、选课系统。(140页例6.1) 在每个学期选课开始之前,系统管理员需要对系统中的教师信息、课程信息和学生信息进行维护。学期结束后,将本学期成绩归档到学籍档案系统。 学生登录系统后会得到一份本学期将要开设的课程目录。每门课程包含的信息有开课系别、教师、上课时间、教室、容纳的学生数量和学生选择课程的先决条件。 当学生选择了一门课程后,系统需访问学籍档案系统,查询是否符合选课的先决

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论