软件开发应知应会题库(软件开发应知应会百度文库)

软件开发 1872
今天给各位分享软件开发应知应会题库的知识,其中也会对软件开发应知应会百度文库进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、软件工程试题!帮忙啊!急急急急急!

今天给各位分享软件开发应知应会题库的知识,其中也会对软件开发应知应会百度文库进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

软件工程试题!帮忙啊!急急急急急!

一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.“软件工程的概念是为解决软件危机而提出的”这句话的意思是( )A.强调软件工程成功解决了软件危机的问题B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理C.说明软件工程这门学科的形成是软件发展的需要D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题2.瀑布模型的主要特点是( )A.将开发过程严格地划分为一系列有序的活动B.将开发过程分解为阶段C.提供了有效的管理模式D.缺乏灵活性3.在软件工程的需求分析阶段,不属于问题识别内容的是( )A.功能需求B.性能需求C.环境需求D.输入/输出需求4.画某系统的数据流图时,顶层图有( )A.0张B.1张C.2张D.3张及其以上5.软件模块内聚性最强的是( )A.功能内聚B.通信内聚C.偶然内聚D.逻辑内聚6.最早提出软件系统维护问题的阶段是( )A.可行性分析B.需求分析C.概要设计D.详细设计7.SD(结构化设计)方法设计的结果是( )A.模块B.模块结构图C.模块的算法D.数据流图8.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试( )A.单元测试B.系统测试C.集成测试D.确认测试9.软件详细设计阶段的任务是( )A.算法与数据结构设计B.功能设计C.调用关系设计D.输入/输出设计10.下列属于静态测试方法的是( )A.黑盒法B.路径覆盖C.白盒法D.人工检测11.Fortran语言主要作为以下哪个方面的语言( )A.科学工程计算B.系统软件C.事务处理D.人工智能12.用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是( )A.顺序结构B.选择结构C.嵌套结构D.重复结构l3.可维护软件的主要特性包括( )A.可理解性、可修改性、可移植性B.可使用性C.可维护性、可使用性、可靠性D.可测试性14.程序设计语言不具有的特性是( )A.心理特性B.工程特性C.应用特性D.技术特性15.下列不属于项目进度安排主要方法的是( )A.工程网络图B.Gantt图C.进度结构图D.任务资源表16.下列不属于通常冗余技术的是( )A.结构冗余B.信息冗余C.时间冗余D.代码冗余17.下列工具中,属于需求追踪工具的是( )A.在DBMS上的应用运行工具B.追踪和状态报告C.访问和版本控制机构D.文件和修改管理18.关于软件测试的目的,下面观点错误的是( )A.为了发现错误而执行程序的过程B.一个好的测试用例能够发现至今尚未发现的错误C.证明程序是正确、没有错误的D.一个成功的测试用例是发现了至今尚未发现的错误的测试19.在制定项目开发计划文档时,不包含的内容是( )A.项目概述B.实施计划C.测试计划D.交付期限20.面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位( )A.Booch方法B.Coad方法C.UML语言D.OMT方法二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。21.可行性研究从技术可行性、经济可行性、________三方面进行分析。22.IDEF0方法用来描述系统的功能活动及其联系,建立系统的_______模型。23.结构化方法总的指导思想是_______逐层分解。24.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为________。25.软件部件的内部实现与外部可访问性分离,这是指软件的______。26.用来模拟被测模块的上级调用模块的模块称为_______。27.软件复杂性度量的参数很多,主要有规模、_______、结构、智能度。28.软件开发环境中最主要的组成部分是______。29.软件工程管理的具体内容包括对开发人员、组织机构、用户和______等方面的管理。30.增量模型根据增量方式和形式的不同,分为_____和原型模型。三、名词解释题(本大题共5小题,每小题3分,共15分)31.过程设计语言(PDL)32.可移植性33.渐增式测试34.详细设计35.条件覆盖四、简答题(本大题共4小题,每小题5分,共20分)36.软件生存周期可以分为几个阶段,每个阶段的提交物是什么?37.结构化分析的描述工具有哪些?简述结构化分析的步骤。38.什么是黑盒测试法?常用的黑盒测试方法有哪些?39.简述面向对象的特征。五、应用题(本大题共2小题,第40小题10分,第41小题15分,共25分) 40.某个学生成绩管理系统的部分功能如下:(1)基本信息管理:教务管理人员输入或修改学期教学执行计划、学生名单和教师名单;(2)学生选课:学生根据教学执行计划进行选课;(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师;(4)成绩管理:每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。 一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将其号码填在题后的括号内。每小题1分,共20分) 1. “软件危机”是指( ) A. 计算机病毒的出现 B. 利用计算机进行经济犯罪活动 C. 软件开发和维护中出现的一系列问题 D. 人们过分迷恋计算机系统 2. DFD中的每个加工至少需要( ) A. 一个输入流 B. 一个输出流 C. 一个输入或输出流 D. 一个输入流和一个输出流 3. 为了提高模块的独立性,模块之间最好是( ) A. 控制耦合 B. 公共耦合 C. 内容耦合 D. 数据耦合 4. 下面关于PDL语言不正确的说法是( ) A. PDL是描述处理过程怎么做 B. PDL是只描述加工做什么 C. PDL也称为伪码 D. PDL的外层语法应符合一般程序设计语言常用的语法规则 5. 详细设计与概要设计衔接的图形工具是( ) A. DFD图 B. 程序图 C. PAD图 D. SC图 6. 不适合作为数据处理与数据库应用的语言是( ) A. SQL B. Cobol C. 4GL D. Lisp 7. 下列关于功能性注释不正确的说法是( ) A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B. 注释用来说明程序段,需要在每一行都要加注释 C. 可使用空行或缩进,以便很容易区分注释和程序 D. 修改程序也应修改注释 8. 下列关于效率的说法不正确的是( ) A. 效率是一个性能要求,其目标应该在需求分析时给出 B. 提高程序效率的根本途径在于选择良好的设计方法,数据结构与算法 C. 效率主要指处理机时间和存储器容量两个方面 D. 程序的效率与程序的简单性无关 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. 用户很难适应这种系统开发方法 B. 该方法的成功率很低 C. 缺乏丰富而强有力的软件工具和开发环境 D. 缺乏对开发过程中的问题和错误具有应付变化的机制 15. 下列有关软件工程的标准,属于行业标准的是( ) A. GB B. DIN C. ISO D. IEEE 16. 下列文档与维护人员有关的有( ) A. 软件需求说明书 B. 项目开发计划 C. 概要设计说明书 D. 操作手册 17. 在屏蔽软件错误的冗错技术中,冗余附加件的构成包括( ) A. 关键程序和数据的冗余存储和调用 B. 为检测或纠正信息在运算或传输中的错误须外加的一部分信息 C. 检测、表决、切换、重构、纠错和复算的实现 D. 实现错误检测和错误恢复的程序 18. ( )是为了确保每个开发过程的质量,防止把软件差错传递到下一个过程而进行的工作。 A. 质量检测 B. 软件容错 C. 软件维护 D. 系统容错 19. 表示对象相互行为的模型是( )模型。 A. 动态模型 B. 功能模型 C. 对象模型 D. 静态模型 20. CASE工具的表示集成是指CASE工具提供相同的( ) A. 编程环境 B. 用户界面 C. 过程模型 D. 硬件/操作系统 二、填空题(每空2分,共20分) 1. 作为计算机科学技术领域中的一门新兴学科,软件工程主要是为了解决________问题。 2. 投资回收期就是使________等于最初的投资费用所需时间。 3. 在IDEF0方法的一个活动图形中控制活动是指________。 4. 划分模块时尽量做到________,保持模块的独立性。 5. PAD图是一种________展开的二维树形结构。 6. 对校正性维护应该从________的严重性开始。 7. 类的实例化是________。 8. 人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可靠性的两个指标是________和________。 9. 将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,将得到软件的总开发量。这种成本估算方法称为________。 三、名词解释(每小题3分,共15分) 1. 需求分析 2. 耦合性 3. 结构化程序设计 4. 状态图 5. 软件配置管理 四、简答题(每小题5分,共20分) 1. 简述演绎法调试的具体步骤。 2. 简述增量模型和瀑布模型的本质区别。 3. 简述设计一个容错系统的步骤。 4. 简述在项目开发时,选择程序设计语言应考虑因素。 五、应用题(第1题6分,第2小题8分,第3小题11分,共25分) 1. 某部门要处理大批单据所组成的事务文件,单据分为进货单和发货单两种,每种 单据由多行组成,每行包括零件号、零件名称、数量三个数据项。 要求:用Jackson方法表示事务文件的数据结构。(6分) 2. 根据以下被测试的流程图,选择相应的答案。(8分) (1) A=2, B=0, X=4 (2)A=2, B=1, X=1 (3)A=2, B=0, X=1 A=1, B=1, X=1 A=3, B=0, X=3 A=1, B=1, X=2 ①在1-3的答案中满足判定覆盖的测试用例是________ (2分) ②在1-3的答案中满足条件覆盖的测试用例是________ (2分) ③在1-3的答案中满足判定/条件覆盖的测试用例是________ (2分) (4)A=2, B=0, X=4 (5)A=2, B=0, X=4 (6)A=2, B=0, X=4 A=2, B=1,X=1 A=2, B=2, X=1 A=1, B=1, X=1 A=1, B=0,X A=1, B=0, X=3 A=1, B=1, X=4 A=1, B=1,X=1 A=1, B=2, X=2 A=3, B=0, X=3 ④在4-6的答案中满足条件组合覆盖的测试用例是________(1分) ⑤在4-6的答案中满足路径覆盖的测试用例是________(1分) 3. 某电视购物公司采用面向对象技术实现商品销售计算机系统,基本需求如下: (1)公司提供多种类商品,每种商品通过委托订单来进行征订。 (2)公司下属多个分公司,每个分公司负责本地区委托订单的收录,打印收款凭证单。 (3)公司负责分类、统计各分公司送来的委托单,进行分类统计。 要求:按照上述模型建立对象模型。(11分) 一、

1.C 2.D 3.D 4.B 5.D 6.D 7.B 8.D 9.D 10.D 11.C 12.B 13.A 14.C 15.D 16.C 17.D 18.A 19.A 20.B

二、

1.如何建立一个软件系统

2.积累的经济效益

3.所受到的约束条件

4.高内聚低耦合

5.有左往右

6.评价错误

7.对象

8.MTTF MTBF

9.自底向上估算方法

三、

1. 需求分析是指,开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈

述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

2. 耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。

3. 结构化程序设计是实现该目标的关键技术之一,它指导人们用良好的思想方法开发易于理解、易于验证的程序。 结构化程序设计方法的基本要点是: 1)采用自顶向下、逐步求精的程序设计方法

2)使用三种基本控制结构构造程序 3)主程序员组的组织形式。

4. 状态图是一个标准的计算机概念,它是有限自动机的图形表示,它反映了状态与事件的关系,状态图确定了由事件序列引起的状态序列。

5. 软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更;控制变更;确保变更正确地实现;报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。

四、

1.演绎法调试步骤:列出所有可能的错误原因的假设;排除不适当的假设;精化余于的假设;证明余于的假设。

2.瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节。而增量模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早的产生工作软件。 3.(1)按设计任务要求进行常会设计,尽量保证设计的正确

(2)对可能出现的错误分类,确定实现容错的范围

(3)按照“成本—效率”最优原则,选用某种冗余手段(结构,信息,时间)来实现对各类错误的屏蔽

(4)分析或验证上述冗余结构的容错效果

4.(1)项目的应用领域;(2)软件开发的方法 (3)软件执行的环境(4)算法和数据结构的复杂性(5)软件开发人员的知识(选自不倒翁的博客)

软件开发专业的常识性问题

这里大多数问题的答案都没有对错之分!

你可以把我的这些问题作为引子,展开讨论。例如下面有个问题是使用静态方法或是单例的缘由。如果那个面试的就此展开长篇大论,那他很有可能是个聪明能干的家伙!如果他一脸茫然的看着你,发出这种声音,很明显这就是只狒狒了。同样,想知道一个数是不是2的乘方也有很多方法,不过要是面试的人想用mod运算符,嗯……你知道我的意思吧。(你不知道也没关系,来根香蕉?)

需求

你能给出一些非功能性(或者质量)需求的例子么?

如果客户需要高性能、使用极其方便而又高度安全,你会给他什么建议?

你能给出一些用来描述需求的不同技术么?它们各自适用于什么场景?

需求跟踪是什么意思?什么是向前追溯,什么是向后追溯?

你喜欢用什么工具跟踪需求?

你怎么看待需求变化?它是好是坏?给出你的理由。

你怎样研究需求,发现需求?有哪些资源可以用到?

你怎么给需求制定优先级?有哪些技术?

在需求过程中,用户、客户、开发人员各自的职责是什么?

你怎么对待不完整或是令人费解的需求?

功能设计

在功能设计中有哪些隐喻?给出几个成功的例子。

如果有些功能的执行时间很长,怎么能让用户感觉不到太长的等待?

如果用户必须要在一个很小的区域内,从一个常常的列表中选择多个条目,你会用什么控件?

有哪些方法可以保证数据项的完整?

建立系统原型有哪些技术?

应用程序怎样建立对用户行为的预期?给出一些例子。

如何入手设计一组数量庞大而又复杂的特性,你能举出一些设计思路吗?

有一个列表,其中有10个元素,每个元素都有20个字段可以编辑,你怎样设计这种情况?如果是1000个元素,每个元素有3个字段呢?

用不同的颜色对一段文本中的文字标记高亮,这种做法有什么问题?

Web环境和Windows环境各有些什么限制?

技术设计

什么是低耦合和高聚合?封装原则又是什么意思?

在Web应用中,你怎样避免几个人编辑同一段数据所造成的冲突?

你知道设计模式吗?你用过哪些设计模式?在什么场合下用的?

是否了解什么是无状态的业务层?长事务如何与之相适应?

在搭建一个架构,或是技术设计时,你用过几种图?

在N层架构中都有哪些层?它们各自的职责是什么?

有哪些方法可以确保架构中数据的正确和健壮?

面向对象设计和面向组件设计有哪些不同之处?

怎样在数据库中对用户授权、用户配置、权限管理这几项功能建模?

怎样按照等级制度给动物王国(包括各种物种和各自的行为)建模?

程序设计

你怎样保证你的代码可以处理各种错误事件?

解释一下什么是测试驱动开发,举出极限编程中的一些原则。

看别人代码的时候,你最关心什么地方?

什么时候使用抽象类,什么时候使用接口?

除了IDE以外,你还喜欢哪些必不可少的工具?

你怎么保证代码执行速度快,而又不出问题?

什么时候用多态,什么时候用委派?

什么时候使用带有静态成员的类,什么时候使用单例?

你在代码里面怎么提前处理需求的变化?给一些例子。

描述一下实现一段代码的过程,从需求到最终交付。

算法

怎样知道一个数字是不是2的乘方?怎样判断一个数是不是奇数?

怎样找出链表中间的元素?

怎样改变10,000个静态HTML页面中所有电话号码的格式?

举出一个你所用过的递归的例子。

在散列表和排序后的列表中找一个元素,哪个查找速度最快?

不管是书、杂志还是网络,你从中所学到的最后一点算法知识是什么?

怎样把字符串反转?你能不用临时的字符串么?

你愿意用什么类型的语言来编写复杂的算法?

有一个数组,里面是从1到1,000,000的整数,其中有一个数字出现了两次,你怎么找出那个重复的数字?

你知道“旅行商问题(Traveling Salesman Problem)”么?

数据结构

怎样在内存中实现伦敦地铁的结构?

怎样以最有效的方式在数据库中存储颜色值?

队列和堆栈区别是什么?

用堆或者栈存储数据的区别是什么?

怎样在数据库中存储N维向量?

你倾向于用哪种类型的语言编写复杂的数据结构?

21的二进制值是什么?十六制值呢?

不管是书、杂志还是网络,你从中所学到的最后一点数据结构的知识是什么?

怎样在XML文档中存储足球比赛结果(包括队伍和比分)?

有哪些文本格式可以保存Unicode字符?

从事软件开发工作必须具备哪些知识?

1.首先热爱这个专业。只有这样,才会从抽象的理论中找到实实在在的快乐。如果

不热爱她,或者只因为这是个热门专业,那么极力要求放弃这个专业,因为计算机是一把双刃剑,学好了会飞黄腾达,学不好毕业后会极其痛苦,高不成低不就,没有发展潜力,如同学英语专业的人到了美国一样。

2.不要用功利眼光对待这个学科,这绝对不是点点鼠标就能挣钱的专业。不要去想做网站挣钱,不要想靠点击率增加广告,这个在4年前已经过时,如果现在仍然这么想,千万别说出来,因为会觉得很土。计算级专业的成就感总是伴随着身体上的痛苦而来,肩周炎,颈椎病,眼睛干涩,掉头发,腰椎间盘突出,关节炎

3.搞明白计算机“科学”与“技术”的含义。做网页,做图片,做flash,玩游戏,上网,听歌,录mp3,搞电影字幕,装windows,改注册表,为软件皮肤??这通通不叫计算机科学与技术,如果是计算机的学生,会做以上事情,那是应该的,不会做,也没什么丢人的,需要的不是让别人称作“高手”。

4.明确最终的专业方向是软件还是硬件。方向是网络?网络不是专业方向。网络是最优秀的软件工程师、最优秀的硬件工程师与最优秀的通信工程师的智慧结晶。如果是软件方向,请在学精一揽子数学、数据结构、算法设计、数值分析、汇编语言、操作系统、编译原理、数据库原理、软件工程之类课程后,仔细的听一听硬件课程,软件工程绝对不是背背就能过的课,计算机理论可能是一个人就能研究出来,软件工程是成千万网软件工程师几十年来失败的教训凝结成的结晶,请认真听课。不要问应该学什么语言,计算机专业的人必须具备任何语言1小时上手的能力,最起码要在10分钟把"helloworld"做出来。如果说有必须学的两种语言,那他们是c++与java,学他们不是在学语言,而是在学thinkinginc++,thinkinginjava,一个是软件的基础理论,一个是面向对象。

软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。

1计划

对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。

2分析

软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。

3设计

软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。

4编码

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。

当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。

5测试

软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。

6维护

维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。

一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以使它扩展功能,提高性能,为用户带来明显的经济效益。然而遗憾的是,对软件维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维护的工作量和成本都要大得多。

在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。

《软件工程》试题

软件工程试题及答案免费下载

链接:

提取码:j3l1

软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作效率和生活效率 。

软件设计基础知识 高手帮下忙 要考试了

1.×

2.×

3.×

4.√

5.√

6.√

7.√

8.×

9.√

10.×

11.√

12.×

13.×

14.√

15.√

16.√

17.×

18.×

19.×

20.√

关于软件开发应知应会题库和软件开发应知应会百度文库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

扫码二维码