版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、简答题20061. 什么是 软件工程 ?软件工程 和 电脑科学 有何区别?答:软件工程 是指导软件开发和维护的工程性学科; 电脑科学 着重于原理和理论, 软件工程 与电脑科学不同, 软件工程着重于如何建造软件系统, 软件是电脑中看不见摸不着的逻辑部 分,以程序、数据和文档的形式出现。2. 面向对象方法 和 结构化方法 有何区别与联系?答:区别 :面向对象从所处理的数据入手, 以数据为中心来描述系统, 其根本思想是尽可能模 拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界的方法与过程, 根本原那么为:对象 +类+ 继承+消息通信; 结构化方法首先关心的是功能,强调以模块为中 心
2、,其根本思想是自顶向下, 逐步求精, 单入口,单出口,根本原那么为: 抽象与功能的分解。 联 系:软件开发过程中, 在需求分析和规格说明阶段采用结构化方法, 在设计和实现阶段采用 面向对象方法。3. 什么是 模块的作用域 和 模块的控制域 ?为何要求模块的控制域必须在作用域内? 答:模块的作用域是指模块中判定的作用范围, 它是指所有受这个判定范围影响的模块; 模 块的控制域是指模块本身及其直接或间接调用的模块; 如果模块的作用域不在控制域内, 那么 会增加数据间的传递量,使模块间出现控制耦合 .4. 什么是 设计模式 ?试举例说明 组合设计模式 的应用。 答:设计模式是指系统命名,解释和评价某
3、一重要的,可复用的面向对象的设计方案。 组合 设计模式:使用迭代器模式来遍历组合结构。5 什么是 依赖倒置原那么 ?它和 开闭原那么 有何联系? 答:依赖倒置是类设计原那么的一种, 它要求高层不应依赖于底层, 抽象不应依赖于细节;依 赖倒置原 那么的本质其实就是通过抽象抽象类或接口使各个类或模块的实现彼此独立, 不相互影响,实现模块间的松耦合,如果没有实现这个原那么,那么开闭原那么也无法实现。6. 软件生存期过程 和软件生存期模型 有何联系? 瀑布模型 有何特点? 答:软件生存期过程没有规定一个特定的生存周期模型, 各软件开发机构可视其工程的需要 选择一种软件生存周期模型, 并将软件生存期过程
4、所含过程、 活动和任务映射到选定的软件 生存周期模型中。软件生存期模型是软件生存期过程所含过程、活动和任务的映射。 瀑布模型特点:各阶段相互依赖;每阶段都进行评审;强调需求分析和设计。20071、瀑布 模型是软件工程中应用最广泛的过程模型,试述采用瀑布模型进行软件开发的根本 过程, 该过程有何特点 ? 答:瀑布模型规定了各项软件工程活动,包括需求分析、规格说明、设计、编码、测试和维 护,并规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级而下。瀑布模型的 特点是: 阶段间具有顺序性和依赖性; 清楚区分逻辑设计和物理设计, 尽可能推迟程序的物 理实现;每个阶段都必须完成规定文档,且每阶段
5、结束前需要对完成的文档进行评审。2 、什么是 软件配置管理 ?软件配置管理和软件维护有何不同?答:软件配置管理是在软件生命周期内管理变化的一组活动, 用来:标识变化、 控制变化、 确保适当地实现了变化、向相关人员报告变化. 软件配置管理和软件维护的区别是:软件配置管理是一组追踪和控制活动, 在软件工程启动时就开始, 并一直持续到软件被淘汰后才终 止;软件维护是一组软件工程活动,发生于软件交付给用户并投入运行之后。3、试举例说明聚集关系中 共享聚集 和 组合聚集 有何不同。 答:如果在聚集关系中局部对象可同时参与多个整体对象的构成,那么该聚集称为共享聚集。 例如, 一个课题组包含许多成员, 每个
6、成员又可以是另一个课题组的成员, 那么课题组和成员 之间是一种共享聚集的关系。 如果局部对象完全隶属于整体对象,并与整体对象共存,那么 该聚集称为组合聚集。例如,在屏幕上一个窗口由文本框、列表框、按钮和菜单等构成,且 一旦关闭了窗口, 那么各组成局部也消失, 那么窗口和它的组成局部之的关系为组合聚集关系。20221. 非渐增式测试 与 渐增式测试 有何区别?答:非渐增式测试, 一般应先经过单元测试, 然后再把所有模块一次性组装在一起进行测试, 最终得到要求的软件系统; 而渐增式测试那么采用逐步参加模块或功能簇的方式进行, 在参加 过程中边连接边测试,比拟容易定位和修正错误,且接口也可以更容易进
7、行彻底地测试功能性需求 ,什么是 非功能性需求 ?为何非功能性需求往往比功能性需求还要重要? 答:功能性需求是说有具体的完成内容的需求。 例如:比方客户登录、 邮箱网站的收发邮件、 论坛网站的发帖留言等。 非功能性需求是指软件产品为满足用户业务需求而必须具有且除功 能需求以外的特性, 包括系统的性能、可靠性、可维护性、可扩充性和对技术和对业务的适 应性等。例如:性能要求:要求系统能满足 100 个人同时使用,页面反响时间不能超过 6 秒;非功 能性需求往往比功能性需求还要重要是因为非功能性需求描述的是软件的质量属性, 直接影 响着用户体验,因此非功能性需求在决定系统成败的因素中起更重要的作用。
8、3.层次图 和 层次方框图 有何区别?答:不同: 1,层次图描绘软件的 层次结构 .层次方框图描绘的是 数据结构 。2, 层次图的 方框 表 示模块或子模块 。层次方框图 的方框表示数据结构整体或其子集 。3,层次图 的连线表示调用 关系, 层次方框图 表示 组成关系 。4. 快速原型模型 有几种?各有何特点?答:快速原形模型根据原型的不同作用,有三类原型模型:(1) 探索型原型 :把原型用于开发的需求分析阶段, 目的是要弄清用户的需求, 确定所期望的 特性, 并探索各种方案的可行性。 它主要针对开发目标模糊, 用户与开发者对工程都缺乏经 验的情况,通过对原型的开发来明确用户的需求。(2) 实
9、验型原型 :主要用于设计阶段,考核实现方安是否适宜,能否实现。对于一个大型系 统,假设对设计方案心中没有把握时,可通过这种原型的开发来证实设计方案的正确性。(3) 演化型原型 :它将原型思想扩展到软件开发的全过程,就是及早向用户提交一个原型系 统,在得到用户认可后,将原型系统不断扩充演化为最终的软件系统。20221.试简要说明面向对象方法与结构化方法相比有何优越性,至少列出三点。答:(1) 强调从现实世界中客观存在的事物对象出发来认识问题域和构造系统,这就使系统开发者大大减少了对问题域的理解难度,从而使系统能更准确地反映问题域。(2) 运用人类日常的思维方法和原那么表达于 OO 方法的抽象、分
10、类、继承、封装、消息通 讯等根本原那么 进行系统开发, 有益于发挥人类的思维能力, 并有效地控制了系统复杂性。(3) 对象的概念贯穿于开发过程的终,使各个开发阶段的系统成分具良好的对应,从而显著 地提高了系统的开发效率与质量,并大大降低系统维护的难度。(4) 对象概念的一致性,使参与系统开发的各类人员在开发的各所段具有共同语言,有效地 改善了人员之间的交流和协作。(5) 对象的相对稳定性和对易变因素隔离,增强了系统的应变能力。(6) 对象类之间的继承关系和对象的相对独立性,对软件复用提供了强有力的支持。2. 什么是模块的作用域?为何设计软件结构时要求模块的作用域必须在控制域之内? 答:所谓模块
11、的作用域是指 模块判定的影响范围 。作用域在控制域之内, 可使得软件修改时 代码局部化 。3. 什么是 动态测试 ?为何静态测试方法往往比动态测试方法效率高?答:动态测试是指 经运行程序代码而检查代码是否存在错误 。静态测试往往不是运行代码, 而在软件开发的早期进行, 而 早期错误发现要比错误晚发现付出的本钱少, 而静态测试往往 在发现错误后还可继续进行,但动态测试往往需要停下来改进后才能进一步测试。20221. 什么是模块的作用域?为何要求模块的作用域必须在控制域内?答:模块的作用域是指模块中判定的作用范围, 它是指所有受这个判定范围影响的模块; 模 块的控制域是指模块本身及其直接或间接调用
12、的模块; 如果模块的作用域不在控制域内, 那么 会增加数据间的传递量 ,使模块间出现 控制耦合 。MVC 框架 ?简要说明框架中的 类如何交互 。答: MVC 是指模型、视图和控制器三层框架模型,用户通过视图看到数据的情况,控制器 用来处理用户的操作, 进行业务逻辑处理并通过视图显示出来, 如果模型发生变化, 被注册 的视图也随之变化,模型是观察目标,视图是观察者,控制器作为两者的中介者, MVC 模 式结合了 观察者模式 和 中介者模式 。3.软件维护活动 有哪些类型?如何提高软件的可维护性?答:改正活动类型: 改正性维护由于开发时测试不彻底或不完全导致运行阶段出现的故障。 20% 适应性维
13、护运行环境的变化。 25% 完善性维护或增强用户对软 件提出新的功能或性能要求。 50% 预防性维护或再工程为提高软件的可维护性等,以 便将来进一步改进软件打根底。 5% 提高软件的可维护性:(1)建立明确的软件质量目标和优先级(2)使用提高软件质量的技术和工具 (3) 进行明确的质量保证审查 (4) 选择可维护的程序设计语言 (5)改进程序文档 (6) 开发室考虑到维护4. 简要说明瀑布模型的优缺点。(2)将逻辑设计与物理实施分开,答:优点: (1) 流水线生产比个人生产效率高,质量好; 防止无用功。减少本钱,能尽量推迟物理实施; (3) 文档驱动使得开发过程可视化,便于管 理和控制。缺点:
14、 (1) 当需求不明确时,流水线被阻塞,返流代价大;(2) 得不到用户的反响,开发过程得不到修正,导致有可能出现大的失误; (3) 最后将产品一次提交给用户,用户感到不适 应,本钱增加,市场风险加大。20221.什么是软件测试?测试和调试有何区别?答:软件测试 : 软件测试是确保软件质量和降低软件本钱的重要手段,设计软件的整个生 存周期; 软件测试是在软件投入运行前, 对软件需求分析、 设计规格说明和编码的复审, 是 为了发现错误,通过检查和提供客观证据说明软件已经满足规定的需求; 软件测试就是试 图以最少的代价发现软件分析、 设计和编码中存在的各种不同类型的错误, 从而提高软件质 量、降低软
15、件本钱。区别 :测试是查找错误病症的过程,调试那么是查找错误病症的原因并改正错误的过程。 联系:调试之后还应进一步进行测试和评价, 以确保错误真正被消除且没有引入新的错误2. 从软件工程的角度来看,软件包含哪些内容?各有何作用? 答:软件包括:程序、数据、描述程序与数据等与之相关的文档。作用: 程序代码是软件的主体, 用来完成软件相应的功能和操作; 数据是用来运行以及维护 系统的必要的成分, 系统的运行和测试都离不开数据; 文档的作用: (1) 提高软件开发过程 的能见度; (2)记录开发软件的有关信息便于使用与维护;(3) 作为软件开发人员阶段工作 成果和结束标志; (4) 提高开发效率;
16、(5)提供软件运行维护和培训有关资料; (6)便于用户 了解软件功能、性能。2022软件危机 ?产生软件危机的原因是什么? 答:软件危机是指在电脑软件的开发和维护过程中所遇到的一系列严重问题。 主要是两个问 题: (1)如何开发软件,怎样满足对软件的日益增长的需求;(2)如何维护数量不断膨胀的已有软件。软件危机的出现,究其原因,一方面是由软件本身的特点引起的, 如软件越来越复杂, 软件 故障难于检测, 工作量难以估计; 另一方面那么是因为软件开发和维护方法不当所造成的, 如 软件的个体化特征太强等。动态测试 ?为何静态测试方法可能比动态测试方法效率高? 答:动态测试是通过运行软件来检验其动态行
17、为和运行结果的正确性, 动态测试是实际运行 被测程序, 输入相应的测试用例,判定执行结果是否符合要求,从而检验程序的正确性、可 靠性和有效性, 静态测试是对被测程序进行特性分析的一些方法的总称, 这种方法的主要特 性是不利用电脑运行被测试的程序, 而是采用其他手段到达检测的目的。 因而在代码产生之 前便可对各种文档进行测试, 又由于软件质量主要取决于分析和设计阶段的质量, 所以静态 测试效率往往高于动态测试。3. 面向对象方法中, 类和对象有何联系与区别 ?举例说明。答:联系:类是一组相似对象的一般化描述,同一个类中的对象继承类的属性和方法。区别: 类是一个抽象的概念, 它不存在与现实中的时间
18、空间中, 类只是为所有的对象定义了 抽象的属性和行为; 类是一个静态的概念, 类本身不携带任何数据, 当没有为类创立任何对 象时,类本身不存在于内存空间中。对象是类的一个具体。它是一个实实在在存在的东西; 对象是一个动态的概念, 每一个对象都存在这有别于其它对象的属于自己的独特的属性和行 为。对象的属性可以随它自己的行为而发生改变。举例:三角形类 等腰三角形、等边三角形、直角三角形对象4. 本钱估计是软件费用管理的核心,通常工程本钱估计有哪些方法?答: 自顶向下本钱估计、自底向上本钱估计、基于经验模型的本钱估计20221.软件需求分析阶段的主要内容以及需求分析的描述工具有哪些? 答:主要内容:
19、可行性分析:操作可行性、技术可行性、经济可行性 需求收集: 信息需求、 功能需求、 性能需求、 运行需求、 未来需求 需求规格说明描述工具: 数据流建模、 实体关系建模、 系统行为建模、 IDEF0 功能建模、 IDEF1X 数据建模、 用例 建模、面向对象建模黑盒测试 ?黑盒测试 主要采用的技术 有哪些? 答:黑盒测试又称功能测试、数据驱动测试等,它将待测试对象看成是一个黑盒子,不考虑 程序内部的逻辑和特性,只依据规格说明书检查程序的功能是否能正常使用。3.软件成分的重用有哪三个级别?答:成分重用分为三个级别: (1) 代码重用; (2)设计结果重用 指的是重用某个软件系统的 设计模型,这个级别的重用有助于把一个应用系统移植到完全不同的软硬件平台上(3) 分析结果重用 这是一个高级别的重用, 即重用某个系统的分析模型, 这种重用特别适用 于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年智能变压器行业调研及投资前景分析报告
- 2026年药品包装材料相容性研究方案
- 财务成本控制与管理报告书
- 及时完成维修工作承诺书范文5篇
- 物流异常处理协商函(3篇范文)
- 企业危机应对与沟通模板
- 办公空间优化设计与布置方案
- 网络系统稳定服务保证承诺书3篇范文
- 国内纺织业研究报告
- 关于顾氏的研究报告
- 电梯困人救援培训
- 儿童抑郁情绪自评量表(DSRSC)
- 裁剪验片记录表
- 域虎7汽车使用说明书
- LY/T 2986-2018流动沙地沙障设置技术规程
- 发展经济学 马工程课件 3.第三章 中国特色社会主义经济发展理论
- GB/T 28202-2020家具工业术语
- GB/T 12672-2009丙烯腈-丁二烯-苯乙烯(ABS)树脂
- 2023年煤矿安全生产管理人员考试题库
- 工程硕士专业学位论文写作指导课件
- 中考古诗词复习专题之苏轼词专题课件
评论
0/150
提交评论