搜档网
当前位置:搜档网 › 软件工程课后习题答案(钱乐秋版)

软件工程课后习题答案(钱乐秋版)

软件工程课后习题答案(钱乐秋版)
软件工程课后习题答案(钱乐秋版)

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

第一章 1.计算机系统是由计算机硬件系统和软件系统这两个密不可分的部分组成的。 2.计算机软件系统通过运行程序来实现各种不同应用,包括用户为自己的特定目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序运行的系统程序、管理和控制机器系统资源的程序等。 3.在软件工程学中,软件开发技术包括软件开发方法学、软件工具和软件工程环境。 4.在软件工程层次结构中,包括工具层、方法层、过程、技术层和质量保证层。 5.在面向对象概念中,消息传递是其与外部世界相互关联的唯一途径。 第三章 1.软件需求分析,可以把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础。 2.软件需求工作基本上包括收集用户、市场等方面对项目的需要,经过分析建立解题模型,细化模型,抽取需求。 3.结构化分析方法的基本步骤是采用由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,绘制数据词典和加工说明;最终写出软件需求和规格说明书。 4.面向对象分析方法总是从理解系统的“使用实例”开始,基本步骤是:定义系统的用例,在领域分析的基础上建立问题域的类(对象模型),然后开始建立对象——关系和对象——行为模型。 5.需求分析评审过程由以下5个步骤组成:规划、准备、召开审查大会、修改缺陷、重审。 第四章 1.与软件需求分析一样,软件设计也有两种主要设计方法:以结构化设计为基础的结构化软件设计和面向对象方法指导的面向对象软件设计。 2.传统的软件设计任务通常分两个阶段完成。第一个阶段是概要设计,包括体系结构设计

和接口设计,并编写概要设计文档;第二阶段是详细设计,其任务是确定各个软件的数据结构和操作,产生描述各软件组件的详细设计文档。 3.结构化的软件设计方法是一种面向数据流的设计方法,在面向数据流的方法中,数据流是考虑一切问题的出发点。 4.在数据流图中所代表的结构化设计模型中,所有系统均可纳入两种典型的形式,因此系统结构图也有两种类型:变换型系统结构图,事务型系统结构图。 5.Jackson表示法包括图形描述(Jackson图)和文本描述(Jackson伪代码)两种形式。 第五章 1.与结构化设计一样,面向对象设计也是将分析阶段所建立的分析模型转变为软件设计模型,应用数据设计(对象属性设计)、接口设计(消息模型开发)以及过程设计(子系统级设计)。 2.当两个子系统相互通信时,可以建立客户机/服务器连接或端对端连接。 3.系统设计不仅包括主要的业务需求子系统设计,还包括用户界面子系统设计、任务管理子系统设计、数据管理子系统设计。 4.对象设计强调从问题域的概念转换成计算机领域的概念,通过对象的描述、算法和数据结构设计、程序构件和接口,实现相关的类、关联、属性和操作。 5.在面向对象设计中系统设计的主要目标是表示软件体系结构。对象设计着重于对象及其交互的描述 第八章 1.软件程序测试的目的是发现程序中的错误,其主要任务是通过在计算机上执行程序,暴露

软件工程课后习题参考答案

1.简述软件开发的本质。 答:软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。P19 2.简述实施软件开发的基本途径。 答:实施软件开发的基本途径是系统建模。所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。P19 3.简述何谓模型以及软件开发中所涉及的模型。 答:模型是一个抽象。该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。 软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。 4.简述软件开发所涉及的两大类技术。 答:软件开发所涉及的两大类技术为:一是求解软件的开发逻辑,二是求解软件的开发手段。 5、简述需求与需求规约的基本性质。 答:需求的基本性质:1) 必要的,该需求是用户所要求的。2)无歧义的,该需求只能用一种方式解释。3)可测的,该需求是可进行测试的。4)可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。5)可测量的,该需求是可测量的。 需求规约的基本性质:1)重要性和稳定性程度:按需求的重要性和稳定性,对需求进行分级。2)可修改的:在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。 3)完整的:没有被遗漏的需求。4)一致的:不存在互斥的需求。 6、简述软件需求的分类。

答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可 7、举例说明功能需求和非功能需求之间的基本关系。 答: 非功能需求可作用于一个或多个功能需求,例如 非功能需求可作用于一个或多个功能需求 其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。P24 8、有哪几种常用的初始需求发现技术 答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。P26 9、简述需求规约的3种基本形式。 (1) 非形式化的需求规约。非形式化的需求规约即以一种自然语言来表达需求规约,如同使用一种自然语言写了一篇文章。(2) 半形式化的需求规约。半形式化的需求规约即以半形式化符号体系(包括术语表、标准化的表达格式等)来表达需求规约。(3)形式化的需求规约。形式化的需求规约即以一种基于良构数学概念的符号体系来编制需求规约,一般往往伴有解释性注释的支持。 P29 10、简述软件需求规约的内容和作用。 答:软件需求规约的内容有:引言、总体描述、特定需求、附录、索引。P28 需求规约的作用可概括为以下4点:1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。2)对于项目的其余大多数工作,需求规约是一个管理控制点。3)对于产品/系统的设计,需求规约是一个正式的、受控的起始点。4)需求规约是创建产品验收测试计划和用户指南的基础。P31 11、简述需求规约在项目开发中的基本作用。 答:需求规约的作用可概括为以下4点:1)需求规约是软件开发组织和用户之间一份事实上的技术合同书,是产品功能及其环境的体现。2)对于项目的其余大多数工作,需求

软件工程课后习题答案

软件工程课后习题答案 习题1 略。 习题2 略。 习题3 略。 习题4 2.在什么情况下应该使用形式化说明技术?使用形式化说明技术时应遵守哪些准则? 人们在理解用自然语言描述得规格说明时,容易产生二义性。为了克服非形式化方法得缺点,人们把数学引入软件开发工程,创造了基于数学得形式化说明技术。 应用形式化方法得准则: (1)应该选用释放得表示方法; (2)应该形式化,但不要过分形式化; (3)应该估算成本; (4)应该有形式化方法顾问随时提供咨询; (5)不应该放弃传统得开发方法; (6)应该建立详尽得文档; (7)不应该放弃质量标准; (8)不应该盲目依赖形式化方法; (9)应该测试、测试再测试; (10)应该重用。 4.用有穷状态机说明自动化图书馆流通系统

习题5 略。 习题6 略。 习题7 略。 习题8 略。 习题9 1.什么就是面向对象方法学?它有哪些优点? 面向对象方法学,就是尽可能模拟人类习惯得思维方式,使开发软件得方法与过程尽可能接近人类认识世界解决问题得方法与过程,从而使得实现解法得解空间(也称为求解域)与描述问题得问题空间(也称为问题域)在结构上尽可能一致。 优点: 1.与人类习惯得思维方法一致; 2.稳定性好; 3.可重用性好; 4.较易开发大型软件产品; 5.可维护性好 10.建立订货系统得用例模型。 分析如下:从对这个订货系统得需求可以知道,仓库管理员通过放在仓库中得终端把零件入库/出库市事务报告给订货系统,系统接受到事务信息之后应该处理事务;采购员需要使用订货系统提供得产生报表功能,以获取订货报表。综上所述,用例如下: 习题10 1.用面向对象方法分析研究本书习题2第2题中描述得储蓄系统,试建立它得对象模型、动态模型与功能模型。

工程经济课后习题.

第二章习题 2.1思考题 (1)工程项目总投资由哪些部分组成? (2)按照形成资产法进行划分,建设投资由哪几个部分构成? (3)按照概算法分类,建设投资由哪几个部分构成? (4)什么是固定资产?固定资产具有哪几种价值? (5)什么是无形资产?它主要包括哪些内容? (6)什么是流动资金?流动资金的主要特点是什么?其主要的用途是什么? (7)什么是流动资产?它和流动资金之间存在什么关系? (8)为了便于计算和分析,对于建设投资借款利息的计算,通常采取什么方法? (9)什么是总成本费用?它有哪两种估算方法? (10)按照生产成本加期间费用法,总成本费用主要包括哪些内容? (11)什么是机会成本,举例说明? (12)为什么在决策时要考虑沉没成本? (13)为什么折旧、摊销及借款利息不是经营成本的组成部分? (14)折旧的方法有哪几种?加速折旧法的特点是什么? (15)什么是增值税?增值税是如何计算的? (16)个人所得税的征收范围是什么? (17)什么是利润总额?什么是税后利润?它们是如何计算的? (18)利润分配的基本原则是什么?税后利润该按什么顺序进行分配? 2.2 练习题 (1)如果某人的每个月的应发工资为7500元,试计算他每月应缴纳的个人所得税是多少?(2)某固定资产原值为250000元,预计净残值6000元,预计可以使用5年,按照双倍余额递减法及年数总和法,计算该设备各年应提取的折旧额。 (3)某新建项目,建设期为3年,第一年贷款300万元,第二年贷款600万元,第三年400万元,年利率12%,建设期内利息只计息不支付,计算建设期贷款利息。 第三章习题 3.1 思考题 (1)现金流量图的基本要素有哪些? (2)什么是资金的时间价值? (3)什么是利息、利率?单利和复利的区别是什么? (4)如何理解资金的等值? (5)什么是名义利率和实际利率?两者有何关系? 3.2 练习题 (2)下列关于现金流量的说法中,正确的是() A.收益获得的时间越晚,数额越大,其现值越大 B.收益获得的时间越早,数额越大,其现值越小 C.收益获得的时间越早,数额越小,其现值越大 D.收益获得的时间越晚,数额越小,其现值越小 (4)年利率8%,按季度复利计息,则半年期实际利率为()

软件工程课后习题(含答案)

第一章练习题 一、填空题 1、软件工程三要素是:方法、工具、过程。 2、软件开发方法是指软件开发过程中所应遵循的方法和步骤。 二、名词(术语)解释: 1、可靠性---是指在给定的时间间隔内,程序成功运行的概率。可靠性是衡量软件质量的一个重要目标。 2、可理解性---指系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植和重用。 三、问答题 1、面向对象方法的优点是什么? 答:(1)将现实世界问题向面向对象解空间直接映射,实现对现实世界的直接模拟。 (2)以数据为中心,而不是基于对功能的分解,使得软件结构相对稳定,软件的重用性、可靠性、可维护等特性都较好。 2、可视化开发方法的优点有哪些? 答:(1)简化了图形用户界面的设计和编码工作,将开发的注意力主要集中在程序的执行逻辑和工作流程上。 (2)软件开发简单,易学、易上手。 (3)专业或非专业人员都能参与软件开发活动。 第二章练习题 一、填空题: 1、软件工程过程是:为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工 程活动。 2、一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程经历的生存过程称为软件生存期或叫生命期。 3、软件生命周期的阶段划分为3个时期是:定义时期、开发时期、维护时期。 4、软件工程标准的5个层次是:国际标准、国家标准、行业标准、企业规范、项目规范。 二、简答题: 1、瀑布模型的优点有哪些? 答:1、强迫开发人员采用规范的技术方法; 2、严格地规定了每个阶段必须提交的文档; 3、每个阶段结束前必须正式进行严格的技术审查和管理复审。 2、瀑布模型的缺点是什么? 答:1、在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。 2、在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。 3、作为整体开发的瀑布模型,由于不支持产品的演化,缺乏灵活性,对开发过程中很 难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。

工程经济课后习题答案

第二章思考题 1、在进行工程经济分析时,为什么要强调可比原理,有哪些可比原则? 答:工程经济分析的实质,就是要对可实现某一预定目标的多种工程技术方案进行比较选优,要比较就必须建立共同的比较基础和条件,因为各工程、项目方案会在一系列技术经济因素上存在着差异。所以在方案比较之前首先要考虑方案之间是否可比,如果不可比,要作可比性的修正计算,只有这样才能得到可靠的分析结果,研究工程经济分析的比较原理,就是掌握工程经济分析的可比条件,把握技术方案之间可比与不可比的内在联系,找出不可比向可比转化的规律,从而保证工程方案经济效益结论正确、可靠。工程经济分析的比较原理就是要遵循四个可比原则,它们是满足需要可比原则、消耗费用可比原则、价格可比原则、时间因素可比原则。 2、概述工程经济效益评价的指标体系。 答:如下图所示,工程经济效益评价的指标体系有:反映劳动成果的指标、反映劳动耗费类的指标以及同时反映收益和劳动耗费的综合指标,其中,反映收益的指标有产量、质量、品种和利润等;反映劳动耗费的指标有投资、产品成本 和时间指标等。同时反映收益和劳动耗费的效益类指标有:单项性的效益指标有劳动生产率、材料利用率、流动资金周围次数、固定资金利用率等;综合性的效益指标有静态差额投资收益率、静态差额投资回收期以及若干动态指标等。这些指标组成一套互相联系的系统化指标,作为评价技术经济效益的标准和依据。

3、何谓资金的时间价值,它与资金等值的概念有何不同? 答:将资金作为某项投资,由于资金的运动(流通-生产-流通)可得到一定的收益或利润,即资金增了值,资金在这段时间内所产生的增值就是资金的时间价值。 资金等值是指在不同时期(时点)绝对值不等而价值相等的资金。

《软件》课后习题答案

第一章 1.什么是程序,程序有哪些特性? 程序:是一个用计算机语言描述的某一问题的解决步骤,它的表示是静态的。 特性:静态与动态属性,由程序语言抽象的符号表达,是对数据施行算法的过程,是分层嵌套的。2.软件有哪些特性? 特性:功能、性能相对完备的程序系统,具有使用性能的软设备,软件是信息商品,易大批量生产、成本低,是极具竞争性的商品,投入的资金主要是人工费,是只有过时而无“磨损”的商品。 3.什么是群件,目前常见的群件产品有哪些? 群件:是近几年开发的一种基于电子邮件的应急系统软件,它拓 宽了电子邮件的的内涵,涵盖了很多通信协调功能。目前常见的群件产品有:IBM公司的lotus Note、Microsoft公司的Exchange Server 、Novell公司的Group Wise等 4.计算机的软件是由哪几部分组成的,各自的作用是什么? 软件由:软件程序(解题步骤)+数据(描述事物的属性和状态)+文档(功能性能的说明性信息)组成。 5.什么是程序开发环境,常见的开发环境有那些? 程序开发环境:即现在作用到的编程语言,一般以一个集成环境的形式出现。 此环境中包含了语言编辑器,调试工具,编译工具,运行工具,图标图像制作工具等。 6.常见的Internet工具有哪些? Web服务器软件、web浏览器、文件传送工具FTP、远程访问工具Telnet、邮件软件、网络聊天、多媒体等。 7.操作系统的作用(功能)是什么? 1、处理器管理 2、存储器管理 3、设备管理 4、文件管理 5、作业管理。 8.文件系统足以支持程序运行,数据库的作用是什么? 克服文件系统的缺陷。 9.软件开发的核心是编制可运行的程序,还有比这跟重要的工作么? 系统分析和数据分析。 10.程序设计语言本身是软件么? 是,而且是系统软件。 第二章 1.程序设计语言有哪两种实现方式,各有什么优缺点? 方式一:编译(优:可进行优化,目标码效率很高。缺:费时)方式二:解释(优:可以逐句读入源代码,比较灵活,小巧。解释器不大,工作空间也不大,且能根据程序的执行情况决定下一步需做什么。缺:一句一句的难于优化,效率低) 2.结构化程序设计语言有那几种基本控制结构? 顺序、选择、循环。 3.为什么要引进过程,过程和函数的区别有哪些? 引进了过程或函数可以让程序语言更清晰,可以多次调用。使用过程还可以降低程序的复杂性,使程序结构变得清晰明了。过程是不带返回值,函数是带返回值。 4.什么是全局变量,什么是局部变量? 全局变量:出了程序便失去定义,作用范围,整个程序。 局部变量:局部的程序块中有定义。 5. 什么是指针变量? 指向数据的地址的变量。 6.过程参数传递的方式有哪几种,各有什么特点? 传值:优:很安全,不会改变全局变量的值。缺:占用双倍存储单元,传值时不能带回值。 引用:优:能带返回值,存储空间小。缺;局部有可能改变全局变量的值。

软件工程课后习题答案

软件工程课后习题答案 第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。

(6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。

工程经济学课后习题答案

第一章工程经济学概论 1.什么是工程经济学,其研究的对象与内容是什么? 2.什么是技术?什么是经济?两者间的关系如何?工程经济学为什么十分注意技术与经济的关系? 3.为什么在工程经济分析时要强调可比条件?应注意哪些可比条件? 4.从技术与经济互相促进又相互制约两方面各举一个实例说明。 1.解答: 工程经济学是运用工程学和经济学有关知识相互交融而形成的工程经济分析原理和方法,能够完成工程项目预定目标的各种可行技术方案的技术经济论证、比较、计算和评价,优选出技术上先进、经济上有利的方案,从而为实现正确的投资决策提供科学依据的一门应用性经济学科。 工程经济学的研究对象是工程项目技术经济分析的最一般方法,即研究采用何种方法、建立何种方法体系,才能正确估价工程项目的有效性,才能寻求到技术与经济的最佳结合点。工程经济分析的对象是具体的工程项目,不仅指固定资产建造和购置活动中的具有独立设计方案,能够独立发挥功能的工程整体,更包括投入一定资源的计划、规划和方案并可以进行分析和评价的独立单位。 工程经济学的基本内容为如何通过正确的投资决策使工程活动收到尽可能好的经济与社会效果。主要包括以下几个方面: (1)研究工程技术实践的经济效益,寻求提高经济效益的途径与方法。 (2)研究如何最有效地利用技术和资源,促进经济增长的规律。 (3)研究工程技术发展与经济发展的相互推动、最佳结合的规律及实现方法。 2.解答: 技术是在科学的基础上将其利用来改造自然界和人类社会的手段。在经济学中,经济是指从有限的资源中获得最大的利益。 关系:在人类社会进行物质生产活动中,经济和技术不可分割,两者相互促进又相互制约。经济发展是技术进步的动力和方向,而技术进步是推动经济发展、提高经济效益的重要条件和手段,经济发展离不开技术进步。 工程经济学是一门应用性经济类学科,技术上可行,经济上合理,以最小的投入获得预期产出或者说以等量的投入获得最大产出是工程经济所要解决的问题,因此工程经济学十分注意技术与经济的关系。 3.解答: 因为工程经济分析的实质是对可实现某一预定目标的多种工程技术方案进行比较,从中选出最优方案。要比较就必须监理共同的比较基础和条件。但是各个工程、项目方案总是在一系列技术经济因素上存在着差异,就在方案比较之前,首先考虑方案之间是否可比,只有这样才能得到合理可靠的分析结果,因此在工程经济分析时要强调可比条件。 工程项目进行经济效益比较时应注意研究技术方案经济比较的原则条件,分析各可行技术方案之间可比与不可比的因素,探讨不可比向可比转化的规律及处理办法,以提高工程经济分析工作的科学性,应遵循四个可比原则: (1)满足需要的可比原则;(2)消耗费用的可比条件;(3)价格指标的可比原则;(4)时间的可比原则。 4.解答: 相互促进: 科学技术是经济增长的先导,对经济发展起着巨大的推动作用;而经济的发展为科学技术的发展提供必要的物质条件。例如新产品、新工艺的研制及其商品化,不断提高着人们认识自然与改造自然的能力,并成为创造社会财富的武器与手段;经济实力越强,投入新产品、新工艺的研制及其商品化过程中的人力、物力、财力的数量就越大,并为研发技术的进一步发展提出新的研究课题和更高的要求。 相互制约:

软件项目管理课后习题参考答案

第一章项目管理概述 一.选择题 1.项目是(D)。 A.一个实施相应工作围的计划 B.一组以协作式管理、获得一个期望结果的主意 C.创立独特的产品或服务所承担的临时努力 D.必须在规定的时间、费用和资源约束条件下完成的一次性任务 2.你刚被指派在你的公司的一个不同的部门中管理一个大的项目。你正试图了解项目是关于什么的,谁是主要的项目干系人,为了管理好此项目,你首先应该做(C)。 A.所有的项目计划 B.会见以前的项目经理,以找出他离开的原因 C.与你的老板见面,了解他对项目的看法 D.与你的新项目团队见面,认识他们和了解他们对项目的看法 3.不属于项目的活动是(B )。 A.一种新型罐头产品的开发 B.罐头产品的生产 C.罐头产品的试制 D.罐头产品的营销策划 4.项目是一个特殊的将被完成的有限任务,它是在一定的时间,满足一系列特定目标的多项相关工作的总称。此定义实际包含的含义有(D)。 A.项目是一项有待完成的任务,且有特定的环境与要求 B.在一定的组织机构,利用有限资源(人力、物力、财力等)在规定时间完成任务C.任务要满足一定性能、质量、数量、技术指标等要求

D.项目的实施具有一定的风险

第二章项目实施的环境与过程 一.选择题 1.项目管理中应用最广泛的组织形式是(C )。 A.项目式B.职能式C.矩阵式D.网络式 2.下面有关矩阵式组织环境的描述,不正确的是( A )。 A.项目的经理必须是职能部门领导,这样才能取得公司总经理对项目的信任B.项目经理和职能经理必须就谁占主导地位达成共识 C.矩阵式项目组织能够充分利用人力资源 D.矩阵式项目组织能够对客户的要求作出快速响应 3.在下列组织结构形式中,团队建设最困难的是( C )。 A.直线式结构B.职能式结构C.矩阵结构D.项目结构4.职能式项目组织形式中项目经理的权限( A )。 A.很小B.有限C.中等D.很高 5.项目在哪种组织中最不被重视(D)。 A.平衡矩阵型B.强矩阵型C.项目协调员型D.职能型6.下面各种类型的组织中,哪种最常发生冲突( B )。 A.职能型组织B.矩阵型组织 C.项目型组织D.项目协调员型组织 7.传统组织结构的不利因素是(B)。 A.与客户接触渠道单一B.对客户需求反应缓慢 C.项目领导拥有太多的正式权力D.直接项目报告太多

软件工程课后习题答案第五版

软件工程课后习题答案第五版 《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。 (3)一般软件很难维护。 (4)软件生产效率很低。 (5)软件开发成本越来越大。 (6)软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.为什么会产生软件危机? (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 3.怎样克服软件危机? (1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。

(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。 (3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 4.构成软件项目的最终产品: 应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。 5.什么是软件生存周期? 软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。 6.软件生存周期为什么划分成阶段? (1) 任何一个阶段的具体任务不仅独立,而且简单,便于不同人员分工协作,从而降低整个软件开发工作的困难程度。

软件工程课后习题答案

第一章 一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。 软件危机的典型表现: (1) 对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。 (2) 用户对已完成的软件不满意的现象时有发生。 (3) 软件产品的质量往往是靠不住的。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。 (6) 软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。 (7) 开发生产率提高的速度远跟不上计算机应用普及的需求。 软件危机出现的原因: (1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、维护困难。 (2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;轻视软件维护。 (3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从心。 二、假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 三、什么是软件工程?它有哪些本质特征?怎样用软件工程消除软件危机? 1993年IEEE的定义:软件工程是:①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②研究①中提到的途径。 软件工程的本质特征: (1) 软件工程关注于大型程序(软件系统)的构造(2) 软件工程的中心课题是分解问题,控制复杂性(3) 软件是经常变化的,开发过程中必须考虑软件将来可能的变化 (4) 开发软件的效率非常重要,因此,软件工程的一个重要课题就是,寻求开发与维护软件的更好更有效的方法和工具 (5) 和谐地合作是开发软件的关键(6) 软件必须有效地支持它的用户 (7) 在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人(完成一些工作)消除软件危机的途径: (1) 对计算机软件有一个正确的认识(软件≠程序) (2) 必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目 (3) 推广使用在实践中总结出来的开发软件的成功技术和方法 (4) 开发和使用更好的软件工具

工程经济课后答案

工程经济自考辅导书

工程经济 第一章工程经济分析的基本经济要素 1.现金流量图如何绘制。 答:1.画一条带有时间坐标的水平线,表示一个工程项目,每一格代表一格时间单位,时间的推移从左向右。 2.画与带有时间坐标水平线相垂直的箭线,表示现金流量。其长短与收入或支出的数量基本成比例。箭头表示现金流动的方向。箭头向上表示现金流入,箭头向下表示现金流出。

2.何谓固定资产、无形资产、递延资产和流动资产。 答:固定资产是指使用年限在一年以上,单位价值在规定标准以上,并在使用过程中保持原有物质形态的资产。 无形资产是指没有物质实体,但却可使拥有者长期受益的资产。 递延资产是指不能全部计入当年损益,应当在以后年度内分期摊销的各项费用。 流动资产是指可以在一年内或者超过一年的一个营业周期内变现或者耗用的资产。 3.固定资产如何估算?流动资金如何估算。 答:固定资产估算方法:1.生产规模指数法。 2.分项类比估算法。 3.工程概算法。 流动资金估算方法:1.扩大指标估算法。 2.分项详细估算法。 4.简述总成本费用由哪几项组成。 答:总成本费用由生产成本、管理费用、财务费用和销售费用组成。 5.总成本费用如何估算? 答:总成本费用估算方法:1.分项估算法。 2.类比估算法。 3.统计估算法。 6.利润总额如何计算? 答:利润总额=销售利润+投资净收益+营业外收入—营业外支出。 7.何谓影子价格? 答:在实际生活中,有些产品不能反映项目的真实投入和产出,这是因为有些产品受国家现时政策的影响,而对另一些产品采取价格限制政策,或由于历史延续以及其他方面的原因,市场价格往往偏离实际价值,在这种情况下,必须调整市场价格,以使其能够正确反映产品的价值。这种用于经济分析的调整价格,称为影子价格。 第二章工程经济分析的基本原理 1.在进行经济分析时,为什么要强调可比原理?有哪些可比原则? 答:工程经济分析的实质,就是对可实现某一预订目标的多种工程技术方案进行比较选优,要比较就必须建立共同的比较基础和条件。因为个工程、方案会在一系列技术经济因素上存在差异。所有在方案比较之前,首先考虑方案之间是否可比,如果不可比,要做写可比性的修正计算,只有这样才能得到合理可靠的分析结果。 原则:1.满足需要上的可比。 2.消耗费用上的可比。 3.价格指标上的可比。 4.时间上的可比。 2.概述工程经济效益评价的指标体系。 答:一、反映收益类指标:

软件工程课后参考答案

第一章课后参考答案 1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的主要原因 (1)与软件本身的特点有关 (2)与软件开发和维护过程中使用的方法不正确有关

2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”时在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。 3.什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机? 软件工程是指导知道计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。 本质特征: (1)软件工程关注于大型软件的构造 (2)软件工程的中心课题是控制复杂性 (3)软件经常变化

软件工程课后习题答案

第一章 1.1举出至少5个例子来说明“意外效应法则”在计算机软件方面的应用。 答:典型的例子包括使用“数字汽车仪表板”的软件,赋予高科技,高品质的图像的软件;如广泛的消费类电子产品的软件;个人电脑,工业仪器仪表和机器的软件。软件分化出的在电子商务方面的应用。 1.2举例说明软件对社会的影响(包括正面影响和负面影响)。 答:这是一个很好的课堂讨论问题(如果时间允许),而不是专注于老生常谈的(但很重要)隐私问题,生活质量等问题。您可能想要讨论关于”技术恐惧“方面的问题,软件也许会使它恶化但也可能减少”技术恐惧“。另一个有趣的方面是使用诺依曼的“风险”列在SEN中做重点讨论。你也可以考虑基于软件的“现金”经济,新模式的互动娱乐,虚拟现实,电子商务等方面来思考软件对社会的影响。 1.3针对1.1节提出的5个问题,请给出你的答案,并与同学讨论。 答:软件需要如此长的开发时间: a)设施不上线 b)开发工具并不如预期般运作 c)客户提出的新要求,需要重新设计和返工 d)产品依赖于政府的规定,被意外更改。 e)严格的要求,与现有系统的兼容性需要超过预期更多的测试,设计和实现。 f)多个操作系统下运行的任务需求比预期需要更长的时间。 g)软件项目风险管理比预期需要更多的时间。 h)依赖的技术仍处于开发阶段,从而延长日程安排。 开发成本高: a)比当时预期低得令人无法接受的质量,需要进行更多的测试,设计和实施工作。 b)制定了错误的软件功能需要重新设计和实施。 c)开发错误的用户界面,而导致重新设计和实施。 d)开发了不需要的额外的软件功能而延长了开发日程安排。 在将软件交付顾客使用之前,我们无法找到所有错误: a)产品依赖于政府监管,意外而改变。 b)产品技术标准草案,会意外更改。 c)有时会在项目后期添加新的开发人员。 d)因为团队内的冲突有时会导致沟通不畅,而产生糟糕的设计。 e)破坏高效调度产生的项目管理成果和无效的规划 f)有时装备部件质量差,导致额外的测试,设计和集成工作和管理额外的客户关系。 软件开发和维护的过程仍旧难以度量: a)有时该项目的目的是不明确。 b)有大量的业务所涉及的风险。 c)如果产品内置没有装好。 d)我们需要不断检讨我们的工作。 e)进行维护检查的时间。 f)在整个软件开发过程中要彻底组织项目团队。 1.4在交付最终用户之前,或者首个版本投入使用之后,许多应用程序都会有频繁的变更。

软件工程课后习题答案

软件工程课后习题答案 Chapter1 1.1)The definition for software presented in Section 1.2 applies to the Web sites. There are, however, subtle differences between a Web site and conventional software. Among the most important are that the content that a Web site presents is considered to be part of the Web Application while that data processed by conventional software is often considered to be separate from the processing functions delivered. 1.4)Who would have thought that software would lead to: (1) a change in the dating habits of many young people (Internet dating); (2) the way people communicate (cell phones); (3) methods of warfare (cyberweapons); (4) the diagnosis of diseases (MRIs and related computer-based diagnostic devices), and (5) the manner in which people acquire and enjoy media (music, DVDs, etc.). 1.6)The Law of Conservation of Familiarity: As the system evolves the users engineers, developers all those associated must have the complete knowledge of the content and behavior to achieve satisfactory results. Increase in growth may diminish that knowledge (mastery); hence the average increase in growth remains invariant as the system evolves. 1.7)Many modern applications change frequently before they are presented to the end user and then after the first versions have been used. A few ways to build software to stop deterioration due to change would be: ?Make sure that software is designed so that changes in one part of a program do not create side-effects in another part of the program. ?Make sure that software is designed so that it does not depend on external devices or systems that are likely to change with time. ?Make sure test cases and results are archived and available so that the software can be retested when changes are made. ?Make sure you spend time understanding what the customer wants. 1.8)The two broadest categories encompass risks associated with economic loss and risks to the well being of people. It might be a good idea to select five risks (culled from the sources noted) and present them to the class. Look for humorous as well as serious risks. 1.9)The same approach to software engineering can be applied for each of the six categories, but it must be adapted to accommodate the special requirements of each category. 1.10)There are literally dozens of real life circumstances to choose from. For example, software errors that have caused major telephone networks to fail, failures in avionics that have contributed to plane crashes, computer viruses (e.g., Michelangelo) that have caused significant economic losses and attacks on major e-commerce sites. 1.11)The Law of Declining Quality: The quality of systems will decline unless they are maintained by various procedures to adapt to the environmental changes. This concept is similar to the ―deterioration‖ discussed in Problem 1-5. 1.12)The Law of Conservation of Organizational Stability: The average effective global activity rate is invariant over the lifetime of a product. Chapter 2 2.1)

相关主题