软件开发及项目管理课后练习答案

上传人:无*** 文档编号:101441702 上传时间:2022-06-05 格式:DOC 页数:18 大小:97KB
收藏 版权申诉 举报 下载
软件开发及项目管理课后练习答案_第1页
第1页 / 共18页
软件开发及项目管理课后练习答案_第2页
第2页 / 共18页
软件开发及项目管理课后练习答案_第3页
第3页 / 共18页
资源描述:

《软件开发及项目管理课后练习答案》由会员分享,可在线阅读,更多相关《软件开发及项目管理课后练习答案(18页珍藏版)》请在装配图网上搜索。

1、-软件开发与工程管理参考答案第一章软件开发模型和开发方法一知识回忆与思考1、 软件产品的特性是什么?软件是一种逻辑产品,具有无形性;软件产品的生产主要是研制;主要是脑力劳动;软件不存在磨损和老化问题,但存在退化问题;软件产品的本钱非常昂贵,其开发方式目前尚未完全摆脱手工生产方式;软件具有复杂性,其开发和运行常受到计算机系统的限制。2、 软件生产有几个阶段?各有何特征?程序设计时代:这个阶段生产方式是个体劳动,使用的生产工具是机器语言,汇编语言。程序系统时代:这个阶段生产方式是小集团合作生产,使用的生产工具是高级语言,开发方法仍依靠个人技巧,但开场提出构造化方法。软件工程时代:这个阶段生产方式是

2、工程化的生产,使用数据库开发工具开发环境网络分布式面向对象技术来开发软件。3、 什么是软件危机?产生的原因是什么?软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。主要是指如何开发软件,怎样满足对软件日益增长的需求,如何维护数量不断膨胀的先有软件。原因:一是软件产品的固有特性(软件的不可预见性、软件的规模大且逻辑较复杂),二是软件专业人员自身的缺陷。4、 什么是软件工程?它的目标和内容是什么?软件工程:是用科学的知识程和技术原理来定义,开发,维护软件的一门学科。目标:付出较低开发本钱;到达要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,

3、及时交付使用;开发的软件可靠性高。内容:研究内容包括开发技术和开发管理两个方面。开发技术主要研究:软件开发方法,开发过程,开发工具和环境。开发管理主要研究:软件管理学,软件经济学,软件心。5、 软件工程面临的问题是什么?软件重用性差软件可维护性差开发出的软件不能满足用户需要6、 什么是软件生命周期?它有哪几个活动?软件生命周期:一个软件从提出开发要求开场直到该软件报废为止的整个时期。活动:可行性分析和工程开发方案,需求分析,概要设计,详细设计,编码,测试,维护。7、 什么是软件生存周期模型?有哪些主要模型?软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。主要模型:瀑布模型、快速原

4、型模型、增量模型、螺旋模型、敏捷模型、喷泉模型、混合模型。二单项选择题1、软件开发的各项活动严格按照线性方式进展,当前活动接收上一项活动的工作结果,实施并完成所需的工作内容的软件开发模型是A。A、瀑布模型 B、快速原型模型 C、增量模型 D、敏捷模型2、以下B最能适应快速变化的需求。A、瀑布模型B、快速原型模型 C、增量模型 D、敏捷模型3、B可把一个复杂问题的求解过程分成几个阶段,而且这种分解是自顶向下、逐层分解的。A、面向对象方法B、构造化方法 C、可视化方法 D、ICASE方法4、C在可视化开发工具提供的图形用户界面上,通过操作界面元素开发,诸如菜单、按钮、对话框、编辑框、单项选择按钮、

5、复选框、列表框和滚动条。A、面向对象方法 B、构造化方法C、可视化方法 D、ICASE方法5、面向对象的特征有C。A、模块化、封装、继承 B、模块化、继承、多态C、封装、继承、多态 D、模块化、封装、继承、多态三填空题1、瀑布模型将软件生命周期划分为制定方案、需求分析、软件设计、程序编写、软件测试和运行维护6个根本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。2、螺旋模型沿着螺旋线进展假设干次迭代,包括以下活动:制定方案、风险分析、实施工程、客户评估。3、敏捷开发相对于非敏捷开发,更强调程序员团队与业务专家之间的严密协作,面对面沟通,频繁交付新的软件版本、紧凑而自我

6、组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。4、构造化软件开发方法的根本要点是自顶向下、逐步求精和模块化设计。5、面向对象方法的主要特征有封装性、继承性和多态性。四简答题1、请比拟瀑布模型和螺旋模型的优缺点?瀑布模型优点:有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工具的研究,从而提高了大型软件工程开发的质量和效率。瀑布模型缺点:开发过程一般不能逆转,否则代价太大;实际的工程开发很难严格按该模型进展;客户往往很难清楚地给出所有的需求,而该模型却要求如此。软件的实际情况必须到工程开发的后期客户才能看到,这要求客户有足够的耐心。螺旋模

7、型优点:设计上的灵活性,可以在工程的各个阶段进展变更;以小的分段来构建大型系统,使本钱计算变得简单容易;客户始终参与每个阶段的开发,保证了工程不偏离正确方向以及工程的可控性;随着工程推进,客户始终掌握工程的最新信息,从而他或她能够和管理层有效地交互。螺旋模型缺点:采用螺旋模型需要具有相当丰富的风险评估经历和专门知识,在风险较大的工程开发中,如果未能够及时标识风险,势必造成重大损失;过多的迭代次数会增加开发本钱,延迟提交时间。2、相对于传统的软件开发方法,面向对象方法有哪些优点?传统开发:软件重用性差软件维护性差开发的软件不能满足用户的需求而OOP是尽可能模拟人类习惯的思维方式,使软件开发的方法

8、与过程接近人类认识世界、解决问题的方法与过程。3、ICASE方法有哪些特点?ICASE的最终目标是实现应用软件的全自动开发,即开发人员只要写好需求规格说明书,软件开发环境就自动完成从需求分析开场的所有软件开发4、在增量模型的迭代过程中,应该先实现复杂的重要的功能模块还是简单的次要的功能模块?先实现重要的再实现次要的5、螺旋模型的4个象限包括哪些活动?制定方案、风险分析、实施工程、客户评估。第二章需求分析一知识回忆与思考1、 软件需求有哪3个层次?业务需求、用户需求、功能需求2、 常用的需求捕获技术有哪些?用户访谈、收集资料、问卷表、小组会议3、 用户访谈过程有哪几个步骤?准备访谈、方案访谈日程

9、、访谈开场和完毕、引导访谈4、 什么是功能性需求和非功能性需求?功能性需求:是说有具体的完成内容的需求。非功能性需求:是指软件产品为满足用户业务需求而必须具有且除功能需求以外的特性,包括系统的性能、可靠性、可维护性、可扩大性和对技术和对业务的适应性等。5、 什么是系统用户和角色?系统用户:指软件的最终操作者,也是软件工程内的一个概念,指终端用户的抽象集合。角色:权限针对的是系统的资源6、 用例模型中的重要元素和作用是什么?重要元素:参与者、用例、通信关联作用:描述系统中对象的相互作用7、什么是业务流程图?作用是什么?业务流程图:是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的

10、图表主要是描述业务走向绘制是按照业务的实际处理步骤和过程进展的是一种系统分析人员都懂的共同语言, 用来描述系统组织构造、业务流程作用:制作流程图的过程是全面了解业务处理的过程,是进展系统分析的依据是系统分析员、管理人员、业务操作人员相互交流思想的工具系统分析员可直接在业务流程图上拟出可以实现计算机处理的局部用它可分析出业务流程的合理性8、数据字典是什么?作用是什么?数据字典是是一种用户可以访问的记录数据库和应用程序源数据的目录作用:作为分析阶段的工具在构造化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明二单项选择题1、D包括需求的获取、分析、规格说明、变更、验证、管理一系列需求工程

11、。A、系统设计 B、数据库设计 C、测试D、需求分析2、需求分析的任务就是软件系统解决B的问题,要全面地理解客户的各项需求,并准确地表达所接收的用户需求的过程。A、设计B、做什么 C、需求 D、功能3、用户访谈一般会经历5个阶段:准备访谈、A、访谈开场和完毕引导访谈、后继的访谈整理工作。A、方案和安排访谈日期 B、日程管理 C、日程安排 D、方案实施4、C是需求捕获时广泛使用的一种工具,它采用了统计分析的方法,显得更科学。A、用户调研 B、收集资料 C、问卷表 D、用户访谈5、B主要用来图示化系统的主事件流程,它主要用来描述用户的需求,即用户希望系统具备的能完成一定功能的动作,通俗的讲,用例就

12、是软件的功能模块,所以是设计系统分析阶段的起点。A、顺序图B、用例图 C、协作图 D、构件图6、 用例之间可以抽象出包含、D和泛化几种关系。A、扩大 B、缩小 C、多态D、扩展7、用例描述一般包括简要描述说明、前置前提条件、B、其他事件流、异常事件流、后置事后条件等。A、数据流B、根本领件流 C、函数 D、数据8、B是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程中的不合理流向,它是物理模型。A、数据流图B、业务流程图 C、E-R图 D、顺序图9、D作为产品需求的最终成果必须具有综合性,必须包括所有的需求。开发人员和用户不能进展任何假设

13、。A、用例说明书 B、系统设计说明书 C、数据库设计说明书D、需求规格说明书10、在编写模块时,通常包括模块摘要,业务数据项,B,功能点的操作说明、规则、角色、附图等。A、模块性能B、模块的功能点 C、谈话摘要 D、用例模型三填空题1、需求分析是指根据用户需求,将软件功能和性能与用户达成一致,估计软件风险和评估工程代价,最终形成开发方案的一个复杂过程。2、在需求捕获中最常见的技术包括用户访谈、收集资料、问卷表、小组会议4种。3、用户访谈一般经历5个阶段:准备访谈、方案和安排访谈日程、访谈开场和完毕、引导访谈、后继的访谈整理工作。4、在面向对象的分析方法中要建立对象模型,而在构造化分析方法中,数

14、据流程图则是建模的主要工具。5、软件需求分析所要做的工作是深入描述软件的功能和特性,确定软件设计的限制和软件同其他系统元素的接口细节,定义软件的其他有效性需求。6、用例是从系统外部可见的行为,是系统为*一个或几个参与者Actor提供的一段完整的效劳。7、 包含关系最典型的应用就是复用。8、业务流程图就是用一些规定的符号及连线来表示*个具体业务处理过程。9、数据字典是一种用户可以访问的记录数据库和应用程序源数据的目录。10、用户需求说明书是面向用户的,是合同的产物;而需求规格说明书则是面向公司内部的,是立项建议书的产物。四简答题1、 什么是需求分析?需求分析是指根据用户需求,将软件功能和性能与用

15、户达成一致,估计软件风险和评估工程代价,最终形成开发方案的一个复杂过程。2、 什么是用例?用例之间有什么关系?用例就是软件的功能模块3、 现行系统业务流程总结,在绘制业务流程图之前,要对现行系统进展详细调查,并写出现行系统业务流程总结。略4、 根据系统业务流程的描述,绘制出系统处理业务流程图。略5、什么数据字典Data Dictionary?是一种用户可以访问的记录数据库和应用程序源数据的目录6、简述数据字典的组成?数据项、数据构造、数据流、数据存储、处理过程第三章软件设计一知识回忆与思考1、 什么是软件设计?软件设计是一个把软件需求转换为软件表示的过程。最初,这种表示只是描述了软件的总体构造

16、,称为软件概要设计,然后对构造进一步细化,称为详细设计或过程设计。2、 什么是软件架构设计?软件架构设计有哪些原则?系统架构设计:是一个系统的草图,描述了构成系统的抽象组件,以及各个组件之间的是如何进展通讯的,这些组件在实现过程中可以被细化为实际的组件比方类或者对象。原则:一般采用4+1视图模型,即逻辑视图、进程视图、开发视图、物理视图、场景视图3、什么是界面设计?界面设计包含哪些原则?界面设计:人与机器之间交换和传递信息的媒介原则:界面功能表达用户任务要求正确选择界面的类型界面操作直观、简单,减少用户工作量界面风格保持一致4、 什么是数据库设计?数据库逻辑设计和物理设计各包含哪些内容?数据库

17、设计:数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,以满足各种用户的应用需求。数据库逻辑设计:是将概念设计中的ER图,抽象成关系模型,并满足第三范式如学生*,性别并在主键上用下划线标识。数据库物理设计:是将逻辑设计中的关系设计成表,并将你、表构造设计好。5、 什么是模块设计?模块设计包含哪些主要方面?模块设计是:指把工业模具分解成小的局部的过程。主要方面:模块要素接口、功能、状态、逻辑抽象与逐步求精简单工厂模式二单项选择题1、在面向对象的开发方法中,C将是面向对象技术领域内占主导地位的标准建模语言。A、Booch方法 B、Coad方

18、法 C、UML语言 D、OMT方法2、为了提高模块的独立性,模块内部最好是C。A、逻辑内聚 B、时间内聚C、功能内聚 D、通信内聚3、在SD方法中,全面指导模块划分的最重要的原则是D。A、程序模块化 B、模块高内聚 C、模块低耦合D、模块独立性4、软件详细设计的主要任务是确定每个模块的A。A、算法和使用的数据构造 B、外部接口 C、功能 D、编程5、在软件构造图中,模块框之间假设有直线段连接,则表示它们之间存在AA、调用关系 B、组成关系 C、链接关系 D、顺执行关系三填空题1、 软件设计是一个把软件需求转换为软件表示的过程,最初,这种表示只是描述了软件的总的体系构造,称为软件概要设计,然后对

19、构造进一步细化,称为详细设计或过程设计2、 Kruchten提出了4+1视图模型,从5个不同的视角来描述软件体系构造,即逻辑视图、进程视图、开发视图、物理视图和场景视图。3、 用来文档化用户需求并建立的数据库模型是指语义对象模型。4、 高度概括事物主要的或本质的特性,暂时忽略或不考虑其细节的软件设计方法是抽象。将系统功能按层次进展分解,每一层不断将功能细化,到最后一层都是功能单一、简单、易实现的模块,该设计方法是逐步求精。四简答题1、 简述软件架构设计视图模型。逻辑视图、进程视图、开发视图、物理视图、场景视图2、 简述1NF、2NF和3NF的限定条件。第一范式1NF:关系模型中的每个属性都是不

20、可分解第二范式2NF:符合第一范式;所有的非码属性均依赖于所有的码属性第三范式3NF:符合第二范式;没有一个非码属性传递依赖于其他的非码属性3、 简述界面设计中的输入过程设计原则。界面功能表达用户任务要求正确选择界面的类型界面操作直观、简单,减少用户工作量界面风格保持一致4、实体关系图E-R图的图形标识符有哪些?各表示什么含义?简醚E-R模型建模的一般步骤。实体:用矩形表示,矩形框内写明实体名。属性:用椭圆形表示,并用无向边将其与相应的实体连接起来。联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型1:1,1:n或m:n。建模一般步骤:确定构造

21、范围。实体定义。联系定义。属性分配。5、 什么是模块耦合和模块内聚?它们对系统构造有什么影响?耦合:是软件系统构造中各模块间相互联系严密程度的一种度量。内聚:表示内部间聚集、关联的程度对系统构造影响:使程序模块的可重用性、移植性大大增强。第四章编码一知识回忆与思考1、 编码的目的是什么?将设计描述翻译成*种预定的程序设计语言的过程。2、 什么是编码标准?指编写代码时应该遵守的文字约束。3、 什么是代码组织?对整个工程的代码进展整理,使之更加有序。实现类似功能的文件应该放在同一个文件夹中或者同一个工程中。4、 什么是代码优化?代码优化的意义是什么?指对程序代码进展等价指不改变程序的运行结果变换。

22、意义:提高代码质量,提高目标程序的运行速度,减少目标代码运行所需要的控件。5、 代码优化有哪些常用技术?删除多余运算符、代码外提、强度削弱、交换循环控制条件、合并量与复写传播、删除无用赋值6、 什么是局部优化?划分中间代码为根本块步骤:求出四元式程序中各个根本块的入口语句对每一入口语句,构造其所属的根本块凡未被纳入*一根本块的语句可以把它们删除根本块的变换:删除公共子表达式删除无用代码重新命名临时变量交换语句次序7、 什么是代码调试?是在程序中设置的一个位置,程序执行到这些位置时会中断或暂停。8、 代码调试的过程是什么?有哪些常用的调试方法?过程:从错误的外部表现入手,确定程序中出错的位置研究

23、有关局部的程序,找出错误的内在原因修改设计和代码,以排除这个错误重复进展暴露这个错误原始测试,以确认该错误故障是否已排除如果所做的修正无效,则撤销这次活动,重复上述过程,直到找到一个有效的解决方法为止调试方法:强行排错、回溯法排错、归纳法排错、演绎法排错二单项选择题1、D的过程是将设计描述翻译成*种预定的程序设计语言的过程A、需求分析B、软件设计C、软件测试 D、编码2、以下B不属于编码标准。A、代码组织B、代码优化C、变量命名规则D、函数命名规则3、A能减少冗余代码的数量,提高代码的内聚程度,减少耦合程度。A、面向对象方法 B、构造化方法 C、可视化方法 D、ICASE方法4、A是指根本块内

24、的优化。所谓根本块,是指程序中的顺序执行语句序列,其中只有一个入口语句和一个出口语句。A、局部优化 B、代码优化 C、代码外提 D、删除多余运算5、以下D不属于代码调试方法。A、强行排错 B、回溯法排错 C、演绎法排错D、比例法排错三填空题1、 作为软件工程的一个步骤,编码是设计的必然结果,因此,程序的质量主要取决于软件设计的质量。2、 为提高代码质量,提高目标程序的运行速度,减少目标代码运行所需要的控件,需要对代码进展优化。3、 代码组织是对整个工程的代码进展整理,使之更加有序。实现类似功能的文件应该放在同一个文件夹中或者同一个工程中。4、 强度削弱的思想是想把强度大的运算换算成强度小的运算

25、。代码调试是在程序中设置的一个位置,程序执行到这些位置时会中断或暂停。四简答题1、 什么是编码过程?编码的目标是什么?将设计描述翻译成*种预定的程序设计语言的过程。2、 编码标准主要包括几个局部?变量命名规则、函数命名规则、类命名规则、常见语句书写规则、注释风格、代码组织3、 代码优化有哪些常用技术?删除多余运算符、代码外提、强度削弱、交换循环控制条件、合并量与复写传播、删除无用赋值4、 代码调试有哪些方法?强行排错、回溯法排错、归纳法排错、演绎法排错5、 错误的分类有哪些?编译时的错误、运行时的错误第五章软件测试一知识回忆与思考1、简述软件测试的原则。制定测试方案应尽早开场保持测试方案的灵活

26、性保持测试方案简洁和易读尽量争取多渠道评审测试方案计算测试方案的投入2、简单介绍至少5款软件测试工具或测试管理的工具。功能测试QTP性能测试loadrunner源代码扫描测试fortify sca渗透测试webinspect单元测试pc-lint/c test/juint3、用黑盒测试设计测试用例有哪些常用方法?等价类划分边界值分析错误猜想法因果图方法其它4、什么是集成测试?它包括哪两种方式?每个模块完成单元测试后,需要按照设计是确定的构造图,将他们连接起来,进展集成测试,也称为综合测试。集成测试包括非增量测试和增量测试两种方式5、测试的目的是什么?是为了发现尽可能多的缺陷,不是为了说明软件中

27、没有缺陷。6、测试人员需要何时参加需求分析?原则上,测试人员对需求了解得越深入对测试工作越有利,所以一开场就应该参加需求分析工作。7、代码走查是如何进展的?就像代码检查一样,代码走查也是采用持续12小时的不连续会议的形式。代码走查小组由35人组成,其中一人扮演协调人的角色,一个人担任秘书负责记录所有查出的错误的角色,还有一个人担任测试人员。关于这35人的组成构造,有各种各样的建议,当然,程序作者应该是其中之一。建议包括其他参与者。8、性能测试什么时候开展最为适宜?在产品相比照拟文档,功能测试完成后。灵活性比拟强。二单项选择题1、以下B属于软件性能测试的范畴。A、接口测试B、压力测试 C、单元测

28、试 D、易用性测试2、在用白盒测试中的逻辑覆盖法设计测试用例时,在以下覆盖中,D是最强的覆盖准则。A、语句覆盖 B、条件覆盖 C、判定/条件覆盖D、路径覆盖3、在大多数实际情况下,性能测试的实现方法是A。A、黑盒测试 B、白盒测试 C、静态分析 D、可靠性测试4、以下软件属性中,软件产品首要满足的应该是A。A、功能需求 B、性能需求 C、可扩展性和灵活性 D、容错纠错能力5、测试人员的根本素质为D。A、计算机专业技能 B、测试专业技能 C、行业知识D、以上都是三填空题1、 软件测试方案评审会需要工程经理、SQA负责人、配置负责人和测试组人员参加。2、 软件测试主要分为静态测试、动态测试、黑盒测

29、试和白盒测试类测试。3、 黑盒测试用例设计方法包括等价划分、边界值分析、因果图、错误推测法等。4、 通过画因果图来写测试用例的步骤为分析程序规格说明的描述中,哪些是原因,哪些是结果、分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的因果图、在因果图上使用假设干个特殊的符号标明特定的约束条件、把因果图转换为状态图和把判定表中每一列表示的情况写成测试用例共5个步骤。5、 使用软件测试工具的目的是帮助测试寻找问题、协助问题的诊断、节省测试时间。四简答题1、测试人员在软件开发过程中的任务是什么?尽可能早的找出系统中的 Bug ; 防止软件开发过程中缺陷的出现; 衡量软件的品质,保

30、证系统的质量;关注用户的需求,并保证系统符合用户需求。总的目标是:确保软件的质量。2、黑盒测试和白盒测试是软件测试的两种根本方法,请分别说明各自的优点和缺点。黑盒测试的优点:适应于阶段测试,从产品功能角度测试,容易入手生成测试数据。缺点:*些代码得不到测试,如果规格说明有误,可能无法发现,不易进展充分性测试。白盒测试的优点:可构成测试数据使特定程序局部得到测试,有一定的充分性度量手段,可生成较多工具支持。缺点:不易生成测试数据,无法对未实现规格说明的局部进展测试,作量大通常只用于单元测试有应用局限。3、简述缺陷产生的原因。需求:需求表述理解,导致编写引起的错误。架构:系统设计架构引起的错误。开

31、发:开发过程缺乏沟通及监视。自己开发是局部变量,但实际要做为全局变量工具:软件开发工具本身的问题。复杂度:软件需求复杂度越来越高。与用户需求不符合:即使本身不存在*种意义上的缺陷。4、如何开发和设计测试用例?用例包含:用例编号、功能模块、用例标题、前提条件、操作步骤、期望结果含判断标准、实际结果、备注编写方式:按照功能+业务逻辑首先保证单个功能是正常的然后功能联合起来的业务逻辑是对的5、测试完毕的标准是什么?用例全部测试、覆盖率到达标准、缺陷率到达标准、其他指标到达质量标准。第六章部署与维护一知识回忆与思考1、什么是软件部署?软件部署在整个工程过程中起到什么作用?软件部署是指将软件工程本身,包

32、括配置文件、用户手册、帮助文档等进展收集、打包、安装、配置、发布的过程。作用:整个软件经过需求分析、设计、编码和测试后,便得到了比拟稳定的版本,进而可以提供应用户。此时,就需要通过合理的方式将软件部署到用户机器上,以供用户使用。2、 ASPNET网站常用的部署方式有哪几种?各有什么特点?*COPY部署:通过资源管理器进展复制粘贴,简单易行。复制工程部署:需要通过Visual Studio开发环境进展部署,比拟适合于开发人员开进展网站调试和测试。开发人员在Visual Studio中修改完代码后,可以在开发环境上部署到测试机器上。Web安装部署:直接生成安装文件交给用户。如果将其他组件的安装和配

33、置都集成到一个安装文件中,将极大提高了用户部署的使用感受。3、什么是软件维护?产生软件维护的原因有哪些?在软件运行维护阶段对软件产品所进展的修改。原因:主要有软件开发设计时考虑不周,存在缺陷和不能完全满足需求的问题,以前开发的软件不能适应新的软硬件环境等等4、根据软件维护的起因,一般将软件维护分为哪几类?改正性维护、适应性维护、完善性维护、预防性维护5、影响软件维护工作量的因素有哪些?什么是构造化维护和非构造化维护?因素:系统大小、系统的开发文档、系统的架构构造化维护:不采用软件过程的方法开发软件,软件只有程序而无文档,维护工作非常困难。非构造化维护:采用软件工程的方法开发软件,各阶段都有相应

34、的文档,容易进展维护工作。6、一次软件维护需要经过哪些流程?申请维护、审核维护、维护请求的开发和测试、维护任务的评审、版本发布与部署二单项选择题1、按照正常的软件开发流程,以下D过程完成后可进展软件部署。、概要设计 B、详细设计 C、编码D、测试2、以下D方式不属于ASP、NET部署。、*COPY部署 B、复制工程部署 C、Web安装工程部署 D、添加工程部署3、Visual Studio中提供了复制工程部署的功能,通过该功能可以将Web工程复制到目标机器上,以下C方式不属于复制工程提供的功能。A、FTP复制 B、文件系统复制C、网页登录复制 D、远程站点复制4、Visual Studio中提

35、供了复制工程部署的功能,通过该功能可以将Web工程复制到目标机器上,并且能够显示源网站与目标网站文件之间的状态,以下B文件状态不可以被显示。A、文件已更改B、文件损坏C、文件删除 D、文件未更改5、如果希望给用户直接提供Web安装工程,选择C方式最为适宜。A、*COPY部署 B、复制工程部署C、Web安装工程部署 D、添加工程部署6、在软件交付使用后,由于开发时测试得不彻底、不完全,必然会有一局部隐藏的错误被带到运行阶段,对于这些错误的修正,属于A。A、改正性维护 B、适应性维护C、完善性维护 D、预防性维7、外部环境新的硬件、软件配置或数据环境数据库、数据格数据、输入/输出方式、数据存储介质

36、可能发生变化,为了使软件适应这种变化而去修改软件的过程属于B。A、改正性维护B、适应性维护 C、完善性维护 D、预防性维护8、在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩大软件功能、增强软件性能、改良效率、提高软件的可维护性,这种过程属于C。A、改正性维护 B、适应性维护C、完善性维护 D、预防性维护9、为了提高软件的可维护性、可靠性等,为以后进一步改良软件打下良好根底而进展的维护属于D。A、改正性维护 B、适应性维护 C、完善性维护D、预防性维护10、 以下D不属于软件维护流程中的环节。A、申请维护 B、审核维护请求 C、维护请求的

37、开发和测试 D、维护的增减三填空题1、 完成了软件的设计、编码和测试,将形成一个稳定的版本,这个版本将提供应用户,而在用户的环境上安装相应的软件产品的过程,称为软件部署。2、 ASP、NET支持多种部署方式,通过使用Microsoft Windows资源管理器中的拖放功能复制粘贴功能、文件传输协议FTP或者DOS的*COPY命令将文件从一个位置复制到另一个位置,这种部署方式称为*COPY部署3、 为了让用户或者实施人员更加方便地进展软件的部署,可以为他们提供手册,以指导具体部署,人们称这个手册为用户手册。4、 在整个工程周期中,软件维护阶段占有很高的比重,维持时间最长。5、 如果软件配置的唯一

38、成分是程序代码,则维护活动将从艰辛地评价程序代码开场,而且常常由于程序内部文档缺乏而使评价更困难,对于软件构造、数据构造、系统接口、性能、设计约束等经常会产生误解,而且对程序代码所进展改动的后果也是难于估量的,这样的维护称为更正性维护。6、 如果有一个完整的软件配置存在,则维护工作将从评价设计文档开场,估量要求的改动将带来的影响,并且方案实施途径,然后进展维护的实施,这样的维护称为构造化维护。7、 在维护过程中,系统开发文档越完善,维护工作越方便。8、 如果系统只有代码而没有文档,维护人员根据现有的代码进展反推,推理出前面的设计过程,这就是所谓的逆向工程。9、 在软件运行维护阶段对软件产品所进

39、展的修改称为软件的软件的升级。10、将一些有开发经历、具有决策能力的人组织成一个团队,专门负责维护请求的分析和审核,这样的小组称为维护小组。四简答题1、ASP、NET网站有3种部署方式,请简述3种方式的特点。*COPY部署:通过资源管理器进展复制粘贴,简单易行。复制工程部署:需要通过Visual Studio开发环境进展部署,比拟适合于开发人员开进展网站调试和测试。开发人员在Visual Studio中修改完代码后,可以在开发环境上部署到测试机器上。Web安装部署:直接生成安装文件交给用户。如果将其他组件的安装和配置都集成到一个安装文件中,将极大提高了用户部署的使用感受。2、软件维护有多种分类

40、,按照产生维护的原因进展分类,可以将维护活动分为4种,请简述这4种维护方式。改正性维护、适应性维护、完善性维护、预防性维护3、软件维护可以分为构造化维护和非构造化维护,请简述两者的特点。构造化维护:不采用软件过程的方法开发软件,软件只有程序而无文档,维护工作非常困难。非构造化维护:采用软件工程的方法开发软件,各阶段都有相应的文档,容易进展维护工作。4、软件维护的过程复杂,要求较高,请简述软件维护流程中的各个环节。申请维护、审核维护、维护请求的开发和测试、维护任务的评审、版本发布与部署第七章工程管理一知识回忆与思考1、何为工程方案,工程方案需要考虑哪些因素?人员组织风险预估风险因素、风险等级进度

41、安排PERT技术、甘特图2、工程方案中人员组织常用哪几种方式?层次组织:主程序员小组民主小组层次小组矩阵模式:不同的阶段实际上也是层次组织,但由不同经理负责。3、工程方案中如何对工程的风险进展预估,常用的风险三元组有哪几个要素?风险名称、风险发生的概率风险产生的影响4、工程方案中如何进展工程进度的安排,常用技术有哪些?PERT技术、甘特图5、工程管理中配置管理的作用是什么?防范风险、变更控制6、软件的质量要素包含哪些?正确性强健性可靠性性能易用性平安性扩展性兼容性可移植性7、质量管理中的质量方案、质量保证、质量控制分别完成哪些工作?质量方案:是质量管理的第一个步骤,它主要指依据公司的质量方针、

42、产品描述及质量标准和规则等制定出来实施方略。其内容全面反响客户的要求,为质量小组成员有效工作提供了指南,为工程小组成员及工程相关人员了解在工程进展中如何实施质量保证和质量控制提供依据,为确保工程质量得到保障提供坚实的根底。质量保证:是贯穿整个工程生命周期的有方案和系统的活动,经常性地针对整个工程质量方案的执行情况进展评估、检查,并进展改良,向管理者、客户或其他方取得信任,确保工程质量与方案保持一致。质量保证对应于技术评审与过程检查。质量控制:是指对阶段性的成果进展测试、验证,为质量保证提供参考依据,对应于软件测试等工作。二单项选择题1、工程开场时需要进展工程方案,以下D不属于工程方案需要考虑的

43、事项。A、人员组织 B、风险预估 C、进度安排D、Bug数据分析2、以下B的最根本概念是无我程序设计,人人把小组开发的程序看成是我们的程序,而不是我的程序。A、主程序员组织方式 B、民主组织方式 C、层次组织方式 D、矩阵组织方式3、为了预估工程风险,经常使用风险三元组来管理风险,以下D不属于三元组的元素。A、风险名称 B、风险发生的概率 C、风险产生的影响D、风险的对策4、以下A技术经常被使用来进展工程的进度安排。A、甘特图 B、权限分配 C、进度评审 D、版本树分支5、软件公司会将非正式产品免费发送给具有典型性的用户,让用户测试该软件的缺乏之处及存在问题,以便在正式发行前进一步改良和完善,

44、这种产品的版本一般会定为B。A、Alpha版 B、Beta版 C、RC版 D、Demo版6、一般只在软件开发公司内部公布,不对外公开。主要是开发人员自身对产品进展测试,检查产品是否存在缺陷、错误,验证产品功能与说明书、用户手册是否一致,这样的产品版本属于A。A、Alpha版 B、Beta版 C、RC版 D、Demo版7、主要是演示正式软件的局部功能,用户可以从中得知软件的根本操作,为正式产品的出售扩大影响。如果是游戏的话,则只有一两个关卡可以玩。该版本可以从Internet上免费下载。这种软件版本一般定为D。A、Alpha B、Beta版 C、RC版 D、Demo版8、有很多因素决定最终软件产

45、品的质量,以下D因素不属于软件因素。A、正确性 B、强健性 C、平安性D、自动性9、质量管理包含多个过程,以下C过程不属于质量管理。A、质量方案 B、质量保证 C、质量配置 D、质量控制10、有许多因素决定软件质量的上下,将软件转置到其他硬件、其他操作的能力,称为软件质量因素的D。A、正确性 B、强健性 C、易用性D、可移植性三填空题1、工程的人员组织有多种方式,每一层人员向上层报告工作并且管理下层人员,这样的模式称为层次模式模式。2、工程的人员组织有多种方式,每一个工程又分为假设干阶段,每个阶段则由阶段经理管理,这样的模式称为矩阵模式模式。3、工程过程中有可能发生的*些意外事情,而且在最糟糕

46、的情况下将对工程产生巨大的负面影响甚至导致失败。在工程方案时,需要对这些可能发生的事情进展预估,称为风险预估。4、管理者把一个复杂的工程按照层次构造和逻辑关系分解成多个易于管理的单元,方便于更为全面地了解一个工程所涉及的工作以及它们之间的逻辑和层次关系,称为工程的任务分解。5、工程的进度安排过程中,最重要的是来规划每项工作的开场时间和完毕时间,列举你认识的两种进度安排技术,PERT技术和甘特图方法。6、使用PERT技术进展进度安排时,会将工程分解为多个活动,每个工程活动完毕的那一点称为事件。7、使用PERT技术进展进度安排时,会将工程分解为多个活动并制定每个活动的开场完毕时间,以及活动间的关系

47、,从而形成PERT图。PERT网络中花费时间最长的事件和活动的序列称为关键路线。8、工程管理中,为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更,目的是使错误降为最小并最有效地提高生产效率的活动,称为软件配置管理。9、一个软件可以防止系统被非法入侵的,并且保证用户数据的平安,则该软件的平安性较高。10、依据公司的质量方针、产品描述以必质量标准和规则等制定出来质量实施方案,这样的过程称之为质量方案。四简答题1、在工程的开场前,需要进展工程的方案,工程的方案包含非常多的内容,请列举工程方案中需要进展的两个工作。工程组织、风险预估2、在进展工程进度安排时,需要给一个工程逐级分解安排进

48、度,请简要说明该过程。任务分解:通过任务分解可以使管理者把一个复杂的工程按照层次构造和逻辑关系分解成多个易于管理的单元,以方便更为全面地了解一个工程所涉及的工作及它们之间的逻辑和层次关系。任务分解可以根据工程阶段、可交付成果或者工程专业等来进展划分,工程管理者可以根据工程的情况来制定划分原则。3、软件质量由多种因素决定,列举3种质量要素,并进展简单的解释。任性3个正确性:该要素第一重要,机器不会欺骗人,软件运行错误都是人为造成的。强健性:包括容错能力和恢复能力,开发过程中应该充分考虑各种异常和边界。可靠性:是指在一定的环境下,在给定的时间内系统不发生故障的概率。性能:通常是指软件的时间一空间效

49、率,而不仅是指软件的运行速度解决性能问题的根本是算法和程序的优化,而不是期待硬件的更高配置。易用性:是指客户对于软件的易理解、易学习和易操作性。平安性:可以防止系统被非法入侵,以保证用户数据的平安。扩展性:反映了软件应对变化的能力,当客户增加新需求时是否能够轻松应对。兼容性:对硬件和对其他软件的兼容能力。可移植性:是指将软件转置到其他硬件、其他操作系统的能力。4、配置管理的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更,目的是使错误降为最小并最有效地提高生产效率。请简述配置管理可以解决工程开发过程中遇到的哪些问题。开发人员未经授权修改代码或文档。人员流动造成企业的软件

50、核心技术泄密。因为找不到*个文件的历史版本,而无法重现历史版本。分处异地的开发团队难于协同,可能会造成重复工作,并导致系统集成困难。5、质量管理可以提高软件的质量,提高用户的满意度。质量管理主要划分为3个过程,简述这3个过程的具体工作内容。质量方案:是质量管理的第一个步骤,它主要指依据公司的质量方针、产品描述及质量标准和规则等制定出来实施方略。其内容全面反响客户的要求,为质量小组成员有效工作提供了指南,为工程小组成员及工程相关人员了解在工程进展中如何实施质量保证和质量控制提供依据,为确保工程质量得到保障提供坚实的根底。质量保证:是贯穿整个工程生命周期的有方案和系统的活动,经常性地针对整个工程质

51、量方案的执行情况进展评估、检查,并进展改良,向管理者、客户或其他方取得信任,确保工程质量与方案保持一致。质量保证对应于技术评审与过程检查。质量控制:是指对阶段性的成果进展测试、验证,为质量保证提供参考依据,对应于软件测试等工作。第八章综合工程实战一知识回忆与思考1、如何进展需求调研?用户访谈、收集资料、问卷表和小组会议2、用例说明和用例图对需求分析有什么帮助?用例说明可以让其他人对这个系统有一个更加详细的了解用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求3、设计软件系统的4+1模型分别有什么作用?逻辑视图主要支持系统的功能需求,即系统提供应最终用户的效劳。进程视图也称为并发视图

52、,侧重于系统的运行特性,主要关注一些非功能性的需求,例如系统的性能和可用性。开发视图也称模块视图,主要侧重于软件模块的组织和管理。物理视图主要考虑如何把软件映射到硬件上,它通常要考虑到系统性能、规模、可靠性等。场景可以看作那些重要系统活动的抽象,它使4个视图有机联系起来,*种意义上说场景是最重要的需求抽象。4、在数据库设计中,E-R图如何转换为数据库的表构造?在概念设计阶段,需要通过语义模型和E-R模型将用户对数据的需求表现出来。在逻辑设计阶段,需要把语义模型和E-R模型转换为关系模型,还需要对关系模型进展业务规则提取和标准化操作。在物理设计阶段,需要选择数据库产品实现数据库的创立。5、为什么

53、必须按照标准编写代码?编码标准可以提高程序的可靠性、可读性、可修改性、可维护性和一致性,保证程序代码的质量,继承软件开发成果,充分利用资源。提高程序的可继承性,可以使开发人员之间的工作成果共享。6、黑盒测试和白盒测试有什么优缺点?为什么一个软件系统必须进展黑盒测试和白盒测试?黑盒测试的优点:适应于阶段测试,从产品功能角度测试,容易入手生成测试数据。缺点:*些代码得不到测试,如果规格说明有误,可能无法发现,不易进展充分性测试。白盒测试的优点:可构成测试数据使特定程序局部得到测试,有一定的充分性度量手段,可生成较多工具支持。缺点:不易生成测试数据,无法对未实现规格说明的局部进展测试,作量大通常只用

54、于单元测试有应用局限。发现软件中存在的错误而执行程序的过程。7、自动化测试有什么好处?自动化测试能完全取代手工测试吗?对程序的回归测试更方便。可以运行更多更繁琐的测试。可以执行一些手工测试困难或不可能进展的测试。更好地利用资源。将繁琐的任务自动化,测试具有一致性和可重复性。测试的复用性。增加软件信任度。不能二单项选择题1、以下A模型是数据需求分析中需要用到的。A、用例图 B、时序图 C、实体关系图 D、活动图2、以下C模型是数据库设计过程中需要用到的。A、用例图B、时序图C、实体关系图D、活动图3、以下A任务不属于编码阶段。A设计模块构造图 B、代码优化 C、编写代码 D、代码调试4、以下B属

55、于软件测试活动。A、设计数据库、准备测试环境、分析测试结果B、设计测试用例、准备测试环境、分析测试结果C、设计数据库、设计测试用例、分析测试结果D、设计数据库、设计测试用例、准备测试环境5、以下D活动不属于需求分析阶段。A、需求调研 B、分析需求 C、编写需求分析文档D、可行性分析三填空题1、需求分析包括以下3个任务:需求获取、需求分析和编写需求文档。2、软件系统的4+1视图模型是逻辑视图、进程视图、开发视图、物理视图和场景视图3、软件设计通常包括软件架构设计、界面设计、数据库设计和模块设计的设计。4、根据需求设计测试用例的测试是黑盒,根据单元模块内部构造设测试用例的是白盒。5、需求调研的途径

56、有用户访谈、收集资料、问卷表和小组会议。四简答题1、学生公寓管理平台的用户有哪些,这些用户分别对平台有什么需求?用户主要有公寓辅导员、学校宿管科管理人员、其他学生管理人员2、参照图8-7,分析学生公寓管理平台数据库表的多对多关系。3、简述Java语言的编码标准,为什么需要这些标准?标识符由字母、数字、下画线和美元符号组成,长度没有限制。标识符的首字母不能是数字。Java区分字母大小写。关键字不能作为标识符。编码标准可以提高程序的可靠性、可读性、可修改性、可维护性和一致性,保证程序代码的质量,继承软件开发成果,充分利用资源。提高程序的可继承性,可以使开发人员之间的工作成果共享。4、学生公寓管理平台的白盒测试和黑盒测试有哪些测试内容?以住宿管理的住宿安排功能模块为例设计黑盒测试用例;以住宿查询为例设计白盒测试用例,最后对整个平台系统执行性能测试。5、学生公寓管理平台的系统测试包括哪些内容?略By Aiw w227. z.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!