软件工程经济学课后习题答案
软件工程经济学叶小莺课后习题答案
软件工程经济学叶小莺课后习题答案1、下列各项,不影响企业营业利润的项目是()。
[单选题] *A.主营业务收入B.其他收益C.资产处置损益D.营业外收入(正确答案)2、下列项目中,不属于非流动负债的是()[单选题] *A.长期借款B.应付债券C.专项应付款D.预收的货款(正确答案)3、委托加工应纳消费税产品(非金银首饰)收回后,如直接对外销售,其由受托方代扣代交的消费税,应计入()。
[单选题] *A.生产成本B.应交税费——应交消费税C.委托加工物资(正确答案)D.主营业务成本4、企业自创的专利权与非专利技术,其研究开发过程中发生的支出,应当区分研究阶段支出与开发阶段支出分别处理。
无法区分研究阶段支出和开发阶段支出,应当将其所发生的研发支出全部费用化,计入当期损益中的()。
[单选题] *A.管理费用(正确答案)B.财务费用C.营业外支出D.销售费用5、企业为扩大生产经营而发生的业务招待费,应计入()科目。
[单选题] *A.管理费用(正确答案)B.财务费用C.销售费用D.其他业务成本6、下列各项中,应列作管理费用处理的是()。
[单选题] *A.自然灾害造成的流动资产损失B.车间管理人员的工资C.固定资产盘亏净损失D.存货盘盈(正确答案)7、行政人员出差回来报销的差旅费,应该计入()科目。
[单选题] *A.管理费用(正确答案)B.财务费用C.制造费用D.销售费用8、税金及附加核算的内容不包括()。
[单选题] *A.增值税(正确答案)B.消费税C. 资源税D.资源税9、某企业本期的营业收入100万元,营业成本50万元,管理费用10万元,投资收益20万元,所得税费用18万元。
假定不考虑其他因素,该企业本期营业利润为()万元。
[单选题] *A.40B.42C.60(正确答案)D.7210、企业生产车间发生的固定资产的修理费应计入()科目。
[单选题] *A.制造费用C.长期待摊费用D.管理费用(正确答案)11、.(年浙江省第四次联考)下列不属于决定单位是否设置会计机构需要考虑的因素的是()[单选题] *A经济业务和财务收支的繁简B单位规模的大小C投资人的需求(正确答案)D经营管理的要求12、企业溢价发行股票,实收款项超过股票面值的部分,应计入()。
软件工程经济学智慧树知到课后章节答案2023年下同济大学
软件工程经济学智慧树知到课后章节答案2023年下同济大学同济大学第一章测试1.软件工程经济学是关于在业务环境中做出与软件工程相关的决策。
软件产品、服务和解决方案的成功取决于良好的业务管理。
()A:社会环境 B:技术环境 C:业务环境答案:业务环境2.中国软件工程知识体系(C-SWEBOK2019)软件工程经济学知识域有个知识模块和个知识点。
()A:4,36 B:5,50 C:5,48答案:5,483.软件工程经济学的典型应用场景有:、、和。
()A:软件项目后评估 B:软件研发成本度量 C:软件项目/产品的可行性研究 D:软件架构选型答案:软件项目后评估;软件研发成本度量;软件项目/产品的可行性研究;软件架构选型4.软件工程经济决策的目标包括、、。
()A:提升客户满意度 B:节约成本 C:提高系统安全性 D:增加盈利答案:提升客户满意度;节约成本;增加盈利5.实证经济分析或实证研究是描述已发生事件或预测将发生事件的分析研究。
()A:对 B:错答案:对第二章测试1.软件工程主要目标是。
()A:运用新技术 B:满足客户需求 C:开发和运维高质量软件 D:节约成本答案:开发和运维高质量软件2.产品质量的多维度观点包括、、和。
()A:用户的观点 B:生产者观点 C:产品的观点 D:基于价值的观点答案:用户的观点;生产者观点;产品的观点;基于价值的观点3.生产要素包括、、和。
()A:资本 B:劳动力 C:信息 D:土地 E:数据答案:资本;劳动力;土地;数据4.与硬件相比,软件不会“磨损”,但是软件存在退化。
()A:对 B:错答案:对5.外部性是指经济主体从事经济活动对他人或社会造成影响。
()A:错 B:对答案:对第三章测试1.边际成本是指增加一个单位产品生产的成本增加额。
()A:错 B:对答案:对2.软件成本的特性包括和。
()A:高研发成本、低运维成本 B:高开发成本、低材料成本 C:高开发成本、低边际成本答案:高开发成本、低材料成本;高开发成本、低边际成本3.软件开发成本包括、、和。
软件工程 课后习题答案
第一章1.1什么是计算机软件?软件的特点是什么?计算机软件是指计算机系统中的程序及其文档软件的特点:软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。
软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可,但其维护的工作量大。
软件的使用没有硬件那样的机械磨损和老化问题。
1.2简述软件的分类,并举例说明1.系统软件系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。
例如:编译软件、操作系统。
2.支撑软件支撑软件是支撑软件的开发和维护的软件。
例如:数据库管理系统、网络软件、软件工具、软件开发环境。
3.应用软件应用软件是特定应用领域专用的软件。
例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。
1.3简述软件语言的分类,并举例说明。
1.需求定义语言是用于书写软件需求定义的语言。
例如:PSL/PSA。
2.功能性语言是用于书写软件功能规约的语言,通常又称为功能规约语言。
例如:广谱语言、Z语言。
3.设计性语言是用于书写软件设计规约的语言。
例如:PDL。
4.实现性语言也称为程序设计语言,是用于书写计算机程序的语言。
例如:C、java、PROLOG、FORTRAN、COBOL、Modula。
5.文档语言是用于书写软件文档的语言。
通常用自然语言或半形式化语言书写。
1.4什么是软件工程?软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。
软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。
1.5简述软件工程的基本原则。
软件工程原则包括围绕工程设计、工程支持和工程管理所提出的以下4条基本原则。
1.选取适宜的开发模型必须认识需求定义的易变性,采用适宜的开发模型,保证软件产品满足用户的要求。
2.采用合适的设计方法合适的设计方法有助于这些特征的实现,以达到软件工程的目标。
3.提供高质量的工程支撑软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。
软件工程课后习题答案(第八版)
软件工程课后习题:⏹What are the differences between generic software product development and custom software development?⏹Solution:The essential difference is that in generic software product development, the specification is owned by the product developer. For custom product development, the specification is owned by the customer. Of course, there may be differences in development processes but this is not necessarily the case.重要区别为:在通用软件的开发过程中,详细说明(规格说明书)由产品开发者来制定,在定制软件产品开发过程中,详细说明(规格说明书)由客户来制定。
⏹What are the four important attributes which all software products should have? Suggest four other attributes that may sometimes be significant.⏹Solution:For important attributes are maintainability可维护性,dependability 可靠性, performance(efficiency)有效性andusability可用性.Other attributes that may be significant could be reusability可复用性 (can it be reused in other applications),distributability 可分发性(can it be distributed over a networkof processors), portability可移植性 (can it operate onmultiple platforms) and inter-operability互用性 (can it workwith a wide range of other software systems).⏹What is the difference between a software process model and a software process? Suggest two ways in which a software process model might be helpful in identifying possible process improvements.⏹Solution:A software process is what actually goes on when software isdeveloped. A software process model is an abstraction andsimplification of a process. Process models can be used to helpunderstand real processes and to identify which aspects of theseprocesses could be supported by CASE tools. 软件过程就是指在软件开发过程中所做的一些事情。
软件工程课后参考答案
第一章课后参考答案1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机?“软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。
这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。
“软件危机”包含两方面的问题:(1)如何开发软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的已有软件。
它们有以下表现:(1)对软件开发成本和进度的估计常常很不准确;(2)用户对“已完成的”软件系统不满意的现象经常发生;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的文档资料;(6)软件成本在计算机系统总成本中所占的比例逐年上升;(7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。
出现软件危机的原因(1)开发人员与客户认识之间的矛盾(2)开发人员能力与开发目标之间的矛盾(3)预估与实际工作量之间的矛盾(4)客户认识的提高与软件维护之间的矛盾(5)遗产系统与实施软件之间的矛盾2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他?答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引入变动,当然付出的代价更高。
一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。
3.什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机?软件工程是指导知道计算机软件开发和维护的一门工程学科。
《软件工程》课后习题答案
1、可行性研究的目的是用最小的代价,在尽可能短的时间,确定该项目是否能够开发。
2、程序设计时代的生产方式是个体手工,程序系统时代的生产方式是作坊式小团体,软件工程时代的生产方式是工程化。
3、喷泉模型是一种以需求分析为动力,以对象为驱动的模型。
4、需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功能需求。
5、可行性研究需要从以下三个方面分析研究每种解决方法的可行性:技术可行性、经济可行性、社会可行性。
6、可行性研究的目的不是去开发一个软件项目,而是研究这个软件项目是否值得开发,其中的问题能否解决。
7、判定树较判定表直观易读,判定表进行逻辑验证较严格,能把所有的可能性全部都考虑到。
可将两种工具结合起来,先用判定表做底稿,在此基础上产生判定树。
8、软件工具的发展特点是软件工具有单一工具向多个工具集成化方向发展。
重视用户界面的设计,不断的采用新理论和新技术。
软件工具的商品化推动了软件产业的发展,而软件产业的发展,又增加了对软件工具的需求,促进了软件工具的商品化进程。
9、环境集成主要有数据集成、界面集成、控制集成、平台集成、过程集成。
10、可行性研究实质上是进行一项简化、压缩了的需求分析、设计过程。
11、结构化方法有结构化分析、结构化设计、结构化程序设计构成,它是一种面向数据流的开发方法。
12、投资回收期就是累计的经济效益等于最初的项目投资所需的时间。
13、详细描述处理过程常用三种描述工具:图形、表格和语言。
14、数据流图中,每个加工至少有一个输入流和一个输出流。
15、结构化设计以数据流为基础映射成软件结构。
16、当数据流图中某个加工的一组动作存在着多个条件复杂组合的判断时,使用判定表或判定树较好。
17、由于运用原型的目的和方式不同,在使用原型时也采取不同的策略,有抛弃策略和附加策略。
18、有两类维护技术:在开发阶段是用来减少错误、提高软件可维护性面向维护的技术,在维护阶段用来提高维护的效率和质量的维护支援技术。
软件工程课后习题答案中文翻译版(第八版)
软件工程课后习题:1.解释为什么专业化软件不仅仅包括为用户所开发程序?专业化软件在开发上与在与软件就有所不同。
专业软件通常是由团队开发而非个人,除了开发者外还有其他的用户使用。
如果你的软件有别的用户,别的工程师会去修改的话,你就必须提供除了程序源码之外的其它附带信息。
因此,系统通常除了包含一些单独的程序还有用于这些程序的配置文件,可能还包括描述系统结构的系统文档和解释如何使用该系统的用户文档,以及告知用户下载最新产品的Web站点。
2.通用软件产品开发和定制软件开发直接有什么不同?这在实际应用中对通用软件产品用户意味着什么?(1)重要区别为:在通用软件的开发过程中,详细说明(规格说明书)由产品开发者来制定,在定制软件产品开发过程中,详细说明(规格说明书)由客户来制定开发者必须按客户要求进行开发。
(2)意味着通用软件很难满足通用软件客户的特殊需求。
如可靠性、安全性、快捷性。
3.软件产品应该具有与的4重要属性是那些?另外列举出4个可能有意义的属性。
重要属性:可维护性、可依赖性和安全性、有效性和可用性。
可能有意义的属性:可复用性、可分发性、可移植性和互用性。
4.除了异质性挑战、业务和社会的变革、安全和可信,说出软件工程在21世纪的可能面临的其它问题和挑战。
交付上的挑战:许多传统的软件工程技术需要耗费大量的时间,用于提高软件质量。
而今天的软件制作必须响应快、更换迅速,支持软件也必须同样快地进行更换。
交付上的挑战是:在不损及系统质量的前提下,缩短大型、复杂系统的移交时间。
5.参论的应用类型,照1.1.2节讨举例介绍为什么设计和开发不同类型的应用需要专门的软件技术。
如汽车上年的嵌入式控制系统对安全性要求极高,在车上安装是要烧制到ROM 中在这里的交互在这里是很少的(或许根本就没有)。
基于Web式系统更适合用于迭代式开发和交互。
而基于Web的系统编程使用的如Ruby一类的脚本语言,完全不适合嵌入式系统工程。
6.解释为什么软件工程的基本思想适用于所有的软件系统。
软件工程课后答案(清华大学出版社--钱乐秋)
16
作业及解答(第3章)
3-3 银行计算机储蓄系统的工作过程大致如下:储户填写 的存款单或取款单由业务员键入系统,如果是存款则系统 记录存款人姓名、住址(或电话号码)、身份证号码、存款 类型、存款日期、到期日期、利率及密码(可选)等信息, 并印出存单给储户;如果是取款而且存款时留有密码,则 系统首先核对储户密码,若密码正确或存款时未留密码, 则系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘 系统中的数据对象。
P3 产生警告信息 F4警告信息
D3生理信息 定时的生理信号 P5 更新日志
F2生理信号 P1 接收信号 F2生理信号 定时的 生理信号
E1 护士
F6日志 E3 时钟 F3日前、时间 P4 定时取样 生理信号 F6日志 E1 护士 F1要求报告 D1患者日志
13:07:42
P6 产生病情报告 重庆工学院计算机科学与工程学院 李梁(liliang@)
软件工程部分 作业解答
山东科技大学 计算机科学与工程学院 王磊
13:07:42
重庆工学院计算机科学与工程学院 李梁(liliang@)
1
作业及解答
作业一 基本概念(第1-2章) 作业二 需求分析(第3章) 作业三 系统设计(第5章) 作业四 详细设计(第6章) 作业五 系统实现(第7章) 作业六 系统维护(第8章) 作业七 面向对象方法学引论(第9章) 作业八 面向对象分析(第10章) 作业九 面向对象设计(第11章) 作业十 面向对象实现(第12章) 作业十一 软件项目管理(第13章)
E2 业务员
13:07:42
F8储蓄利率
软件工程课后习题及其答案
软件工程习题CH1一、填空题1、软件工程需要解决的问题包括:费用、可靠性、可维护性、生产率和重用。
2、到目前为止,软件生产的发展经历了三个阶段,即程序设计、程序系统和软件工程。
3、计算机科学中的研究曾国均可用于软件工程,但计算机科学侧重于原理和理论,而软件工程侧重于软件系统构造。
4、软件工程有用管理科学的方法和原理进行软件生产的管理。
5、软件工程是用科学知识和技术原理来定义、开发、维护软件的一门科学。
6、软件工程研究的主要内容包括软件开发技术和软件开发管理技术两个方面。
在软件开发技术方面,主要研究开发方法、开发过程、开发工具。
在软件开发管理技术方面主要研究管理学、经济学、心理学。
7、作为一门交叉学科,软件工程具有很强的综合性,它涉及计算机科学、工程科学、管理科学、数学等领域。
8、软件生产周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。
通常包括问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试、维护等活动,可以将这些活动以适当方式分配到不同阶段去完成。
9、开发软件工具的主要目的是为了提高软件生产效率和改善软件的质量。
10、描述软件开发过程中各种活动如何执行的模型称为周期模型。
11、从软件工程诞生以来,已经提出了多种软件开发方法,如结构化方法、面向数据的方法、面向对象的方法,它们对软件工程及软件产业的发展起到了不可估量的作用。
12、结构化方法由结构化分析、结构化设计和结构化程序设计构成。
它是一种面向数据流的开发方法。
13、增量模型是一种非整体开发方法的模型。
软件在该模型中是“逐渐”开发出来的,开发一部分向用户展示一部分,可让用户及早看到部分软件,及早发现问题。
或者先开发一个“原型”软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的软件产品。
14、喷泉模型是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。
软件工程课后习题答案
软件工程课后习题答案一、项目规划和管理1. 项目规划和管理的重要性在软件工程中,项目规划和管理是确保项目成功的关键因素。
它涉及到确定项目的目标、范围和需求,制定项目计划和时间表,分配资源,通过有效的沟通和协作来管理团队,以满足项目的要求和客户的期望。
良好的项目规划和管理可以提高项目的成功率,避免项目变更和延迟,保证项目在预算和时间范围内完成。
2. 项目规划的步骤和内容项目规划是项目管理的第一步,它包括以下步骤和内容:(1)确定项目目标和范围:明确项目的目标和范围,包括项目的可交付成果、所需功能和业务需求。
(2)需求分析和定义:详细收集和分析项目的需求,明确项目的功能和非功能性要求。
(3)制定项目计划:制定项目的时间表和里程碑,安排项目的活动和任务,确定资源需求和预算。
(4)风险评估和管理:评估项目的风险和不确定性,制定相应的风险管理策略。
(5)团队组建和管理:确定项目的团队成员,指定责任和职责,建立有效的沟通和协作机制。
(6)制定项目管理计划和报告:制定项目管理的具体计划和报告,包括项目的进度、成本和质量控制。
3. 项目管理的工具和技术项目管理涉及到各种工具和技术的应用,以支持项目规划和管理。
其中一些常用的工具和技术包括:(1)甘特图:可视化展示项目的时间表和活动,帮助团队成员了解任务的分配和完成情况。
(2)里程碑图:标记项目关键节点和重要事件的图表,用于跟踪项目进展和提醒项目重要里程碑的达成。
(3)网络图:图示项目活动之间的依赖关系和先后顺序,帮助确定活动的优先级和关键路径。
(4)资源分配和调度:根据项目需求和资源可用性,合理分配和调度团队成员和其他资源。
(5)决策分析:采用定性和定量的方法,评估项目决策的风险和效益,以支持决策过程。
(6)变更管理:制定变更管理程序和流程,确保变更的合理性和对项目的影响进行评估和控制。
二、软件需求分析与设计1. 软件需求分析的目的和方法软件需求分析是在指导下进行的,对于定义用户需求、开发软件系统和确保软件质量都非常重要。
软件工程 课后习题答案
第一章1.1什么是计算机软件?软件的特点是什么?计算机软件是指计算机系统中的程序及其文档软件的特点:软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。
软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可,但其维护的工作量大。
软件的使用没有硬件那样的机械磨损和老化问题。
1.2简述软件的分类,并举例说明1.系统软件系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。
例如:编译软件、操作系统。
2.支撑软件支撑软件是支撑软件的开发和维护的软件。
例如:数据库管理系统、网络软件、软件工具、软件开发环境。
3.应用软件应用软件是特定应用领域专用的软件。
例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。
1.3简述软件语言的分类,并举例说明。
1.需求定义语言是用于书写软件需求定义的语言。
例如:PSL/PSA。
2.功能性语言是用于书写软件功能规约的语言,通常又称为功能规约语言。
例如:广谱语言、Z 语言。
3.设计性语言是用于书写软件设计规约的语言。
例如:PDL。
4.实现性语言也称为程序设计语言,是用于书写计算机程序的语言。
例如:C、java、PROLOG、FORTRAN、COBOL、Modula。
5.文档语言是用于书写软件文档的语言。
通常用自然语言或半形式化语言书写。
1.4什么是软件工程?软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。
软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。
1.5简述软件工程的基本原则。
软件工程原则包括围绕工程设计、工程支持和工程管理所提出的以下4条基本原则。
1.选取适宜的开发模型必须认识需求定义的易变性,采用适宜的开发模型,保证软件产品满足用户的要求。
2.采用合适的设计方法合适的设计方法有助于这些特征的实现,以达到软件工程的目标。
3.提供高质量的工程支撑软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。
软件工程课后习题答案中文翻译版(第八版)
软件⼯程课后习题答案中⽂翻译版(第⼋版)软件⼯程课后习题:1.解释为什么专业化软件不仅仅包括为⽤户所开发程序?专业化软件在开发上与在与软件就有所不同。
专业软件通常是由团队开发⽽⾮个⼈,除了开发者外还有其他的⽤户使⽤。
如果你的软件有别的⽤户,别的⼯程师会去修改的话,你就必须提供除了程序源码之外的其它附带信息。
因此,系统通常除了包含⼀些单独的程序还有⽤于这些程序的配置⽂件,可能还包括描述系统结构的系统⽂档和解释如何使⽤该系统的⽤户⽂档,以及告知⽤户下载最新产品的Web站点。
2.通⽤软件产品开发和定制软件开发直接有什么不同?这在实际应⽤中对通⽤软件产品⽤户意味着什么?(1)重要区别为:在通⽤软件的开发过程中,详细说明(规格说明书)由产品开发者来制定,在定制软件产品开发过程中,详细说明(规格说明书)由客户来制定开发者必须按客户要求进⾏开发。
(2)意味着通⽤软件很难满⾜通⽤软件客户的特殊需求。
如可靠性、安全性、快捷性。
3.软件产品应该具有与的4重要属性是那些?另外列举出4个可能有意义的属性。
重要属性:可维护性、可依赖性和安全性、有效性和可⽤性。
可能有意义的属性:可复⽤性、可分发性、可移植性和互⽤性。
4.除了异质性挑战、业务和社会的变⾰、安全和可信,说出软件⼯程在21世纪的可能⾯临的其它问题和挑战。
交付上的挑战:许多传统的软件⼯程技术需要耗费⼤量的时间,⽤于提⾼软件质量。
⽽今天的软件制作必须响应快、更换迅速,⽀持软件也必须同样快地进⾏更换。
交付上的挑战是:在不损及系统质量的前提下,缩短⼤型、复杂系统的移交时间。
5.参论的应⽤类型,照1.1.2节讨举例介绍为什么设计和开发不同类型的应⽤需要专门的软件技术。
如汽车上年的嵌⼊式控制系统对安全性要求极⾼,在车上安装是要烧制到ROM 中在这⾥的交互在这⾥是很少的(或许根本就没有)。
基于Web式系统更适合⽤于迭代式开发和交互。
⽽基于Web的系统编程使⽤的如Ruby⼀类的脚本语⾔,完全不适合嵌⼊式系统⼯程。
软件工程第1-2章课后习题参考答案
软件⼯程第1-2章课后习题参考答案第⼀章课后参考答案1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机?“软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的⼀系列“严重问题”。
这些问题决不仅仅是不能正常运⾏的软件才具有的,实际上,⼏乎“所有软件”都不同程度地存在这些问题。
“软件危机”包含两⽅⾯的问题:(1)如何开发软件,以满⾜对软件⽇益增长的需求;(2)如何维护数量不断膨胀的已有软件。
它们有以下表现:(1)对软件开发成本和进度的估计常常很不准确;(2)⽤户对“已完成的”软件系统不满意的现象经常发⽣;(3)软件产品的质量往往靠不住;(4)软件常常是不可维护的;(5)软件通常没有适当的⽂档资料;(6)软件成本在计算机系统总成本中所占的⽐例逐年上升;(7)软件开发⽣产率提⾼的速度,远远跟不上计算机应⽤普及深⼊的趋势。
出现软件危机的原因(1)开发⼈员与客户认识之间的⽭盾(2)开发⼈员能⼒与开发⽬标之间的⽭盾(3)预估与实际⼯作量之间的⽭盾(4)客户认识的提⾼与软件维护之间的⽭盾(5)遗产系统与实施软件之间的⽭盾2.假设⾃⼰是⼀家软件公司的总⼯程师,当把图1.1给⼿下的软件⼯程师们观看,告诉他们及时发现并改正错误的重要性时,有⼈不同意这个观点,认为要求在错误进⼊软件之前就清楚它们是不现实的,并举例说:“如果⼀个故障是编码错误造成的,那么,⼀个⼈怎么能在设计阶段清除它呢?”应该怎么反驳他?答:在软件开发的不同阶段进⾏修改付出的代价是很不相同的,在早期引⼊变动,涉及的⾯较少,因⽽代价也⽐较低;在开发的中期,软件配置的许多成分已经完成,引⼊⼀个变动要对所有已完成的配置成分都做相应的修改,不仅⼯作量⼤,⽽且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成”是在引⼊变动,当然付出的代价更⾼。
⼀个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很⼩的,因为这不是整体构架的错误。
3.什么是软件⼯程?它有哪些本质特征?怎么⽤软件⼯程消除软件危机?软件⼯程是知道计算机软件开发和维护的⼀门⼯程学科。
软件工程课后习题参考答案
软件工程课后习题参考答案1.简述软件开发的本质答: 软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。
P192.简述实施软件开发的基本途径。
答: 实施软件开发的基本途径是系统建模。
所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。
P193.简述何谓模型以及软件开发中所涉及的模型。
答: 模型是一个抽象。
该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。
软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。
4.简述软件开发所涉及的两大类技术。
答: 软件开发所涉及的两大类技术为: 一是求解软件的开发逻辑,二是求解软件的开发手段。
5、简述需求与需求规约的基本性质。
答:需求的基本性质:1) 必要的,该需求是用户所要求的。
2) 无歧义的,该需求只能用一种方式解释。
3) 可测的,该需求是可进行测试的。
4) 可跟踪的,该需求可从一个开发阶段跟踪到另一个阶段。
5) 可测量的,该需求是可测量的。
需求规约的基本性质:1) 重要性和稳定性程度: 按需求的重要性和稳定性,对需求进行分级。
2) 可修改的: 在不过多地影响其他需求的前提下,可以容易地修改一个单一需求。
3)完整的:没有被遗漏的需求。
4)一致的:不存在互斥的需求。
6、简述软件需求的分类答:软件需求可以分为两大类:一类是功能需求,一类是非公能需求,而非公能需求可分为性能需求,外部接口需求、功能需求7、举例说明功能需求和非功能需求之间的基本关系。
答:非功能需求可作用于一个或多个功能需求,例如非功能需求可作用于一个或多个功能需求其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。
P248、有哪几种常用的初始需求发现技术?答:有5种常用的需求发现技术:自悟、交谈、观察、小组会和提炼。
精品文档-软件工程经济学(赵玮)-第5章
因此对于一个特定的企业(或行业部门),求解其对应的弹性系 数α与β就成为必要。
注意到(5.2)式中实际上Y、K、L、A均为时间t的函数,
不妨设为yt,kt件生产过程经济分析
对上式两端分别求对数有 lnyt=lna(t)+α lnlt+β lnkt
第5章 软件生产过程经济分析 所谓生产函数(Production Function),是指反映生产过 程中投入要素与其可能生产的最大产量之间依存关系的数学表 达式。早期的生产函数有如下数学形式:
Y=F(K,L,N,O,t) 式中,Y为产出量,如宏观经济系统中的GDP、工业总产值, 微观经济系统中的企业产品的产量、产值、销售收入等;K、L、 N、O分别表示生产过程投入的资本、劳动、土地和组织管理要 素投入量;t表示时间或工期等。鉴于土地投入量的变化很小, 而且在非农业部门中,一般已将土地的价值计入资本之中,而 组织管理又难以定量,因此为了简化分析,以后研究的生产函 数常记为
第5章 软件生产过程经济分析
5.2.1 软件生产系统动力学方程 软件作为一个特殊产品或系统,其生产过程是由一系列相
互关联、相互制约的工程经济要素综合作用的结果。因此,采 用系统工程的理论和方法来研究软件的生产过程是十分有益的。 根据系统工程的理论,要探索一个目标系统的内在要素关联及 其动态发展规律,建立该目标系统对应的系统动力学方程 (System Dynamical Equation,SDE),并以此系统动力学方 程为基础来展开研究是一种有效的思路与方法。以下介绍英国 软件工程专家诺顿(P.V.Noder)所提供的诺顿—瑞利模型 (Noder-Rayleigh Model)及系统动力学方程的求解。N-R模型 的有关变量及其经济内涵如表5.1所示。其模型假设如下:
完整版软件工程课后题答案
1什么是软件危机?软件危机产生的原由是什么?软件危机就是指人们在开发软件和保护软件过程中遇到的一系列问题。
产生的原由: <1>忽视软件开发先期的需求剖析。
<2>开发过程缺少一致的、规范化的方法论的指导。
<3>文档资料不齐全或不正确。
<4>忽视与用户之间、开发构成员之间的交流 <5>忽视测试的重要性。
<6>不重视保护或因为上诉原由造成保护工作的困难。
<7>从事软件开发的专业人员对这个家产认识不充分,缺少经验。
<8>没有圆满的质量保证系统。
2请简述软件工程的三因素三因素是指过程、方法和工具软件工程的基础是过程层,它定义了一组要点过程地域的框架,使软件能过被合理和及时的开发;软件工程的方法供应了建筑在在技术上需要“做什么”,它覆盖了一系列的任务,包括需求剖析、设计编程、测试和支持等;软件工程的工具对过程和方法供应了自动的或半自动的支持。
3请比较瀑布模型、快速模型、增量模型和螺旋模型。
瀑布模型的长处是:过程模型简单,履行简单;弊端是没法适应更正。
快速模型的长处是:软件产品的开发基本上是按线性序次进行的(它所达成的功能常常是最后产品能达成的功能的一个子集)增量模型的最大特色是将待开发的软件系统模块化和组件化,长处是:将待开发的软件系统模块化,可以分批次地提交软件产品,使用户可以及时认识项目的进展;以组件为单位进行开发降低了软件开发的风险;开发序次灵巧。
它的弊端是要求待开发的软件系统可以被模块化螺旋模型的长处是对可选方案和拘束条件的重申有益于已有的软件的重用,也有助于把软件质量作为软件开发的一个重要目标;减少了过多测试(浪费资本)或测试不足(产品故障多)所带来的风险;更重的是,在螺旋模型中保护但是模型的另一个周期,在保护和开发之间并没有实质的差别,它的主要优势在于风险驱动但是这也可能是他的一个弊端。
4什么是软件过程?他与软件工程方法学有何不一样样?软件过程:是指一个为获取高质量软件所需达成的任务的框架,它规定了软件产品开发时达成各项任务的一系列工作步骤,包含中间产品、资源、角色及过程中采纳的方法、工具等范围。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.习题26. 现值均为10 万7. 1 1.92(万元)2 3.855(万元)8. 9.215 万元9. 0.7258 万
元10. 3.2549 万元11. 6.1446 万元12. 1.2994 万元13. 104.8387 万元14. 方案A2 较好16. 质量为等级217. A1 A2 A3 A4 A5 习题33. 一维:Es 19915 ,Cs 414445 ,M s 91.5 .二维:M s 95.5,Cs 4466755. U0.88。
M s 128人月,Td 13.7 月、Cs 38.4 万元。
8.各年At 分别为:16333、13067、9800、6533、3267。
159.6万元(γ 、γ 、γ 题目已知)C 1 γ M 1 γ C P M C 010. 1 γ 0 。
11. A N3,N2,N1,N7 13.中级COCOMO 表格法。
子系统DM CM IM AAF LAj LBj A1 90 90 90 90 8000 7200 A2 100 100 100 100 6000 6000 A3 80 80 80 80 10000 8000解:先计算AAFj 0.4×DMj0.3×CMj0.3×IMj,模块规模LBj LAj×AAFj 子系统LBj Uj 3M0 3Mj 4Fdj Fcj 4Cj CLj KLOC 人月KLOC/人月千元元/LOC B1
7.2 1.01 26.84 27.11 0.27 5.5 149.11 20.7 B2 6 0.95 22.37 21.25 0.28 6.5 138.13 23 B3 8
0.85 29.82 25.35 0.32 6.0 152.1 19 1LBS:21.2kLOC 5MS:73.7 人月5FdS: 0.29KLOC 2MOS:
79.03 人月6Td:12.81 月6FLS: 20.72 元/LOC 2FOS:268.25LOC/人月习题42. NPV 67.5
万元0 ,因此项目可行。
4. NPV 1890元0 ,故该投资不值得。
5. 用费用现值法(PCA3 143.58 万元)和费用年值法(ACA326.43 万元),均得出A3方案最优秀6. nd 4 -3.5/37.3
4.09 年,小于行业投资回收期,故投资可行7.nd7.27 年。
9.净现值法(不考虑残值)。
8 35NPV A 80 ∑ 76.16 ;NPVB12.1。
故选择NPV 较大的A 设备。
t 1 1 i t10.J1 C 1 × U C
× θ 2 × T0 2 × 12 × 1000 × 5 1200 万元J2 α 1 × L1 × U α × T0 2 × 3000 × 10 × 5 3000 万元J3 F1 × U F × i × T 0 500 × 15 × 8 × 5 30 万元J5 I 1 × U I × θ 2 × T 0 × β 30 × 50 × 1000 × 5 ×
0.01 750 万元J6 O1 × U O × T 0 5 × 5 × 5 1.25 万元J ∑wJ i i 1069.7 万元习题55.解:
由题意,td’ 0.95td,Δtd/td -5,ΔK/K -4Δtd /td 20,故K’ 1.2K;ΔD/D ΔK /K - 2Δtd /td 30,故D’1.3D;因mod K td 6e ,故mod’1.2/0.95mod1.26mod。
6.td 1.48 年,故K D0×td325.9 人年,mod K td 6e ≈ 5人。
7.td 2 年,K D0×td3216 人年,mo K td e ≈ 66人,D D0×td54 人/年。
S K 4 7 7 3 Kt d 3 t d D0 t d E td8. 。
E S 456 D D0td 15人/ 年,K D0td 3 60人年m0 K 19人3 D0td 7 td e 3 S E K D0td 3 10.66人年mod K 2.39 ≈ 3人(9.
解:1)td 7 1.1年,t d 6e D0 D D0td 8.8人/ 年,K d K / 6 1.78人年(2)td 由 1.1 年减少 2 个月,约减少了15。
即td’0.85td,Δtd/td -15,ΔK/K -4Δtd/td 60,故K’ 1.6K;
ΔD/D ΔK /K - 2Δtd /td 90,故D’1.9D;因mod K td 6e ,故mod’1.6/0.85m0d1.88mod。
10.(1)td 3.5 年。
Kd15.58 人年,K6Kd93.47 人年,DK/td27.63 人/年,D0D/td 2.18 人
/年2,KPK/a270.68 人年,tdmod K 6.61 ≈ 7人,tod 1.43年,toPtd/a3.04 年,t
d 6
e 6 S K 1 4 7 7 3 Kt d 3 t d D0 t d KP E t d E1949。
moP e 2 14.15人≈ 15人,因为,故
toP(2)因D0 很小,若保持原有人力费用投入,无法缩短时间。
11.(1)a S 1 ,C td K P 1 e 1/ 2 400人年,所以KKP1017.81 人年。
S K 4 7 7 3 Kt d 3 t d D0 t d因为E t d E3162。
t f t d 2 ln K ,得t 11.9 年。
UK×K 6107 万元。
,故f c(2)mod K 80人,mo K 196人td 6e td e。