卓越班软件工程经济学考试习题
- 格式:doc
- 大小:2.11 MB
- 文档页数:7
软件工程经济学模拟试卷一、选择题(每题1分,共5分)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.风险缓解二、判断题(每题1分,共5分)6.软件工程经济学主要关注的是软件项目的成本效益分析。
(√/×)7.在软件项目成本估算中,自下而上估算法通常比类比估算法更准确。
(√/×)8.软件项目的风险管理应该在项目开始前就进行。
(√/×)9.软件项目的投资回收期越短,项目的经济效益就越好。
(√/×)10.在软件工程经济学中,所有的成本都应该以货币单位来衡量。
(√/×)三、填空题(每题1分,共5分)11.软件工程经济学中,用于评估项目经济效益的一种方法是______。
12.在软件项目成本估算中,用于预测项目成本的一种定量方法是______。
13.软件项目的风险管理包括风险识别、风险评估和______。
14.软件项目的投资回收期是指项目从开始投资到收回全部投资所需的时间,通常以______来衡量。
15.在软件工程经济学中,用于评估软件项目规模的一种度量方法是______。
四、简答题(每题2分,共10分)16.简述软件工程经济学的定义及其在软件项目中的作用。
17.解释成本效益分析的基本原理及其在软件项目中的应用。
18.描述软件项目成本估算的常见方法及其优缺点。
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。
A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。
A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。
A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。
A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。
A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。
A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。
A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。
软件经济学考试题库# 软件经济学考试题库一、选择题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. 风险消除二、简答题1. 简述软件经济学的基本概念及其重要性。
2. 描述软件生命周期成本估算的基本步骤。
3. 解释什么是软件的生命周期,并简述其各个阶段的特点。
4. 阐述软件项目的风险管理过程,并举例说明如何进行风险评估。
5. 讨论软件经济学中如何使用成本效益分析来决定软件项目的投资。
三、计算题1. 假设一个软件项目的开发成本为$100,000,预计销售价格为$50每个,预计销售量为2000个。
如果公司希望获得20%的回报率,请计算该项目的盈亏平衡点。
2. 某软件公司开发了一个新产品,预计第一年的固定成本为$200,000,变动成本为每个产品$10,预计第一年销售量为10,000个。
如果该公司希望获得$500,000的净利润,请计算该公司需要达到的销售量。
3. 一个软件项目在开发阶段的固定成本为$50,000,变动成本为每个用户$20,预计项目将服务1000个用户。
如果项目希望获得$100,000的净利润,请计算该项目的总成本。
四、论述题1. 论述软件经济学在现代企业决策中的作用和影响。
2. 分析软件项目投资决策中的风险评估和风险管理策略。
3. 讨论软件经济学如何帮助企业优化资源配置和提高竞争力。
4. 阐述软件经济学在软件定价策略中的应用及其对市场的影响。
软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。
答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。
答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。
答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。
它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。
2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。
通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。
3. 请简述软件开发生命周期中的各个阶段。
答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。
- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。
- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。
- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。
- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。
- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。
软件工程学试题及答案一、单项选择题(每题2分,共10分)1. 软件工程的目的是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 下列哪项不是软件需求分析的任务?()。
A. 确定软件的功能需求B. 确定软件的性能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:D3. 软件生命周期中,()阶段是确定软件需求的阶段。
A. 需求分析B. 系统设计C. 编码D. 测试答案:A4. 软件测试的目的是()。
A. 证明软件是正确的B. 证明软件存在错误C. 发现软件中的错误D. 证明软件不存在错误答案:C5. 软件危机主要表现在()。
A. 软件成本B. 软件质量C. 软件进度D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件工程的基本原理包括()。
A. 用分阶段的生命周期计划严格管理B. 强调开发过程的迭代性质C. 采用合适的编程规范D. 强调软件工具的使用答案:ABD2. 软件需求分析的常用方法包括()。
A. 数据流图B. 用例图C. 状态转换图D. 流程图答案:ABC3. 软件测试的类型包括()。
A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD4. 软件维护的类型包括()。
A. 校正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD5. 软件工程中常用的设计模式包括()。
A. 单例模式B. 工厂模式C. 观察者模式D. 策略模式答案:ABCD三、简答题(每题5分,共20分)1. 简述软件工程中的模块化设计原则。
答案:模块化设计原则要求将系统分解成若干个模块,每个模块具有高内聚、低耦合的特点,以便于系统的开发、测试、维护和理解。
2. 描述软件需求分析的重要性。
答案:软件需求分析是软件开发过程中的关键步骤,它确保了开发团队对用户需求有清晰的理解,有助于避免开发出不符合用户需求的软件,减少返工和成本。
最新软件工程考试题库(含答案和解析)一、选择题1. 以下哪个不是软件工程的三个基本目标之一?A. 可维护性B. 可靠性C. 可用性D. 低成本答案:D解析:软件工程的三个基本目标是可维护性、可靠性和可用性。
低成本虽然也是一个重要的考虑因素,但并不是软件工程的基本目标。
2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A解析:面向对象编程(OOP)通过将数据和操作数据的方法封装在一起,降低了软件复杂性,提高了代码的可重用性和可维护性。
3. 软件开发过程中,以下哪个阶段需要进行需求分析?A. 设计阶段B. 编码阶段C. 测试阶段D. 需求分析阶段答案:D解析:需求分析是软件开发过程中的第一个阶段,其主要任务是明确软件系统的功能、性能等需求。
4. 以下哪个软件工程方法主要关注软件项目的管理?A. 敏捷开发B. ScrumC. UMLD. 设计模式答案:B解析:Scrum 是一种敏捷开发方法,主要关注软件项目的管理和团队协作。
UML(统一建模语言)主要用于软件设计,设计模式主要用于解决软件设计中的常见问题。
5. 以下哪个软件工具主要用于版本控制?A. GitB. EclipseC. JiraD. Visual Studio答案:A解析:Git 是一款分布式版本控制系统,主要用于跟踪和管理软件开发过程中的代码变更。
二、填空题1. 软件工程的基本活动包括______、______、______和______。
答案:需求分析、设计、编码、测试2. 敏捷开发的核心价值观包括______、______、______、______和______。
答案:个体和互动、工作软件、客户协作、响应变化、持续交付3. 软件开发过程中,常用的设计模式包括______、______、______、______和______。
答案:工厂模式、单例模式、策略模式、装饰模式、观察者模式4. 软件测试的目的是______、______和______。
《软件工程》试题及参考答案(第1套)《软件工程》试题及参考答案(第1套)一、单项选择题1. 软件工程的最终目标是:A. 提高软件开发效率B. 提高软件质量C. 提高软件维护效率D. 以上都是答案:D2. 下列哪项不属于软件需求分析的主要活动?A. 软件设计B. 需求获取和建模C. 需求验证和确认D. 需求管理答案:A3. 以下哪项不是构建阶段的主要活动?A. 编码B. 软件测试C. 软件集成D. 软件配置管理答案:D4. 下列哪个过程不属于软件项目管理过程?A. 需求管理B. 配置管理C. 软件测试D. 质量管理答案:C5. 下列哪个模型强调在系统开发的初期确定并冻结需求?A. 瀑布模型B. 快速原型模型C. V模型D. 增量模型答案:A二、多项选择题1. 软件过程模型的主要作用是:A. 规范软件开发的过程B. 定义软件开发的阶段C. 明确软件开发的任务分工D. 以上都是答案:D2. 软件生命周期是指:A. 软件的设计阶段B. 软件的测试阶段C. 软件的开发到维护的整个过程D. 软件的发布与用户反馈过程答案:C3. 软件测试的主要目标是:A. 寻找并修复软件中的错误B. 确保软件满足用户需求C. 提高软件的可靠性和质量D. 以上都是答案:D4. 下列哪个工具不属于软件配置管理工具?A. 版本控制工具B. 缺陷跟踪工具C. 自动化构建工具D. 可行性分析工具答案:D5. 下列哪个项目风险类型是与技术因素相关的?A. 市场竞争风险B. 技术风险C. 经济风险D. 法律风险答案:B三、简答题1. 请简要描述瀑布模型的开发流程。
瀑布模型的开发流程包括以下几个阶段:1) 需求分析阶段:收集用户需求,并进行详细的需求分析和建模。
2) 系统设计阶段:根据需求分析得到的系统需求,进行整体设计和详细设计。
3) 编码和单元测试阶段:将设计好的系统转化为可执行代码,并进行单元测试,验证代码的正确性。
4) 集成测试阶段:将各个模块进行集成,测试整个系统的功能和性能。
例1.某软件公司拟开发一企业的管理信息系统(MIS )。
根据概要设计,该MIS 由1N ,2N ,3N ,4N ,5N ,6N 和7N 七个功能子系统构成,项目组根据经验及公司信息库的资料确定各子系统工作量的最小可能值j a 、最大可能值j b 和最可能值j m (单位:行)及成本费用率oj C (单位:元/行)、劳动生产率oj E (单位:行/人月)(j =1,⋅⋅⋅,7),见表1。
此外,在系统的需求分析、系统设计、编码、测试四个阶段的工时费用率k α(单位:元/人月)和i 子系统在上述各阶段的工作量估计1i M 、2i M 、3i M 、4i M (单位:人月),i =1,⋅⋅⋅,7,见表2。
试利用功能分解法对该MIS 作成本与工作量估算。
1i M 2i M 3i M1.02.0 0.5 2.0 10.0 4.5 2.5 12.0 6.0 2.0 6.03.0 1.5 6.0 3.5 1.5 11.04.0解:(1)由表1计算各子系统的以行为单位的工作量j E 、以人月为单位的工作量j M 和成本j C (j =1,⋅⋅⋅,7),可得,子系统1N : 111141800424002650234266a m b E +++⨯+==≈ 行 11123427.4315o E M E ==≈ 人月 11114234232788o C C E =⋅=⨯≈ 元同理可得子系统2N ,⋅⋅⋅,7N 分别为:25383E ≈ 行 224.5M ≈ 人月 2107660C ≈ 元 36800E = 行 330.9M ≈ 人月 3136000C = 元 43358E ≈ 行 414.0M ≈ 人月 460444C ≈ 元 52142E ≈ 行 515.3M ≈ 人月 559976C ≈ 元 64975E ≈ 行 624.9M ≈ 人月 6109450C ≈ 元 78400E = 行 728.0M = 人月 7151200C = 元则系统的总成本s C 与总工作量s M 分别为:1277.424.528.0145s M M M M =++⋅⋅⋅+=++⋅⋅⋅+= 人月 12732788107660151200657518s C C C C =++⋅⋅⋅+=++⋅⋅⋅+= 元(2)由表2计算系统在生命周期各阶段的工作量j M 和成本j C (j =1,⋅⋅⋅,4),可得, 需求分析阶段:1112171 1.0 2.0 4.014.5M M M M =++⋅⋅⋅+=++⋅⋅⋅+=人月11114.5520075400C M α=⋅=⨯= 元同理可得系统设计、编码和测试的工作量和成本,分别为: 261.0M = 人月 2292800C = 元 326.5M = 人月 3112625C = 元 450.5M = 人月 4227250C = 元则系统的总成本s C 与总工作量s M 分别为:12414.561.050.5152.5s M M M M =+⋅⋅⋅+=++⋅⋅⋅+=人月12475400292800227250708075s C C C C =++⋅⋅⋅+=++⋅⋅⋅+= 元(3)取上述两组数据的保守值作为系统成本与工作量的估算值,即152.5s M =人月, 708075s C = 元例2.考虑一个规模为10KDSI 的商用软件中的远程通信控制软件(嵌入型软件),根据该软件的目标、功能需求以及开发机构人力资源投入的现实状况,可得到各影响因子j U 的等级如表1所示,又知该软件开发机构的工时费用率4000α=元/人月。
软件工程试题题库含答案一、软件开发过程1. 软件工程的定义是什么?答:软件工程是一门学科,研究并应用以系统化的方法开发和维护软件的原则、概念、方法和工具。
2. 请列举并解释软件开发过程的基本活动。
答:软件开发过程包括以下基本活动:- 需求分析与说明:收集和分析用户需求,并将其明确、清晰地记录下来。
- 软件设计:将需求转化为软件架构和设计规范,确定技术方案和实施计划。
- 编码和单元测试:根据设计规范进行编码,并进行单元测试以确保代码的正确性。
- 综合与测试:将各个模块进行综合,进行系统级测试以验证软件的正确性和稳定性。
- 软件发布与维护:发布软件版本,并对软件进行后续的维护和更新。
3. 请解释敏捷开发方法的基本原则。
答:敏捷开发方法的基本原则包括: - 个体和互动高于流程和工具:注重团队成员的沟通和合作,更加关注人与人之间的交互。
- 可工作的软件高于详尽的文档:重视软件的实际可用性和功能,减少过多的文档记录。
- 客户合作高于合同协商:与客户保持紧密的合作,及时获取反馈并调整软件开发进程。
- 相应变化高于遵循计划:灵活应对需求变化,允许在开发过程中根据实际需要进行调整。
二、需求工程1. 需求工程的目的是什么?答:需求工程的目的是准确、清晰地确定、分析和记录用户对软件系统的需求。
2. 请解释需求工程的关键活动。
答:需求工程的关键活动包括以下几项: - 需求获取:通过与用户交流和研究,确定用户的需求,并进行系统化的收集。
- 需求分析:对收集到的需求进行分析,确定需求的可行性和优先级,并拆解出软件需求规格说明。
- 需求规格说明:编写清晰、明确的需求规格文档,对软件需求进行详细描述和说明。
- 需求验证:与用户进行需求验证,确保需求规格与用户的期望一致,并能够满足用户的需求。
3. 请解释用户需求和系统需求的区别。
答:用户需求是用户对软件系统的需求和期望,通常表达为用户对系统功能和性能的描述。
而系统需求是对用户需求的进一步细化和明确化,包括对系统功能、性能、界面、输入输出等方面的具体要求。
2024年10月自考试02333软件工程部分原题一、单项选择题1、在建模过程中,可用以描述加工的工具是______。
A.数据流B.判定树C.数据字典D.数据存储2、RUP的分析类包括边界类、实体类和______。
A.子类B.控制类C.父类D.活动类3、黑盒测试技术又称为功能测试技术,包括事务处理流程技术、定义域测试技术和______。
A.路径测试技术B.用例测试技术C.状态测试技术D.结构测试技术4、集成化能力成熟度模型(CMMI)中有22个过程域,分为4类:项目管理类、工程类、过程管理类和______。
A.需求管理类B.支持类C.项目包类D.目标类5、需求规约的基本性质包括重要性和稳定性程度、一致的、完整的和______。
A.可修改的B.可复用的C.可测试的D.无歧义的6、RUP中,用于捕获系统语境中的一些重要领域对象,其中领域对象表达系统工作环境中存在的事物或发生的事件,领域模型一般采用______。
A.PAD图B.流程图C.类图D.N-S图7、类的状态机一般有几种不同的运行状态,其中处于等待接收事件,接收处理完事件后又进入等待状态,通常采用______。
A.IdleB.InitializingC.CommandD.Active8、CMMI组织过程改善的成熟度等级中的2级是______。
A.已执行级B.已定义级C.已管理级D.已定量管理级9、指一个模块内部各成分之间相互关联程度的度量是______。
A.耦合B.内聚C.扇入D.扇出10、下列不属于软件危机的主要表现是______。
A.软件生产效率低B.软件开发没有工具支持C.软件生产质量低D.软件开发缺乏可遵循的原理、原则、方法体系以及有效的管理11、有效性测试的目标是发现软件实现的功能与下列哪个选项不一致,正确的是______。
A.需求规格说明书B.概要设计说明书C.详细设计说明书D.测试计划12、软件工程在20世纪60年代末到80年代初获得的主要成果有______。
学年第学期末考试试题(A卷)软件工程经济学使用班级:所有题目的数值计算精确到小数点2位。
一、填空题(前7题每个空1分,后4题每个空2分,共15分)1.软件工程学分为三类,它们是软件工程技术学,(软件工程经济学)和软件工程管理学。
2.软件工程经济学包含5个要素,分别是质量,(生产效率),组织协调,时间进度,以及成本效益.3.软件产品在规定的条件下,在规定的时间内,完成规定功能的概率称为软件(可靠性)。
4.若资金存入银行或投资工程项目,则该资金的绝对金额将随时间而转移,并将发生相应的增额或减额的变化,其增加或减少的金额部分称为资金的(资金的时间价值)。
5.按照企业主要经营活动来划分,成本可分为五类,即(研究与开发成本),采购成本,生产成本,经营成本和管理费用.6.用于软件各设计方案评审的成本应属于(预测成本),而用于软件定价之用的成本为实际成本。
7.(生产函数)是指反映生产过程中投入要素与其可能生产的最大产量之间依存关系的数学表达式。
8.某软件公司欲在今后10年内每年能从银行等额支取1万元以资助希望工程.若银行10年存款利率为10%,该公司当前应向银行存入(6。
1446)万元。
9.某公司欲在6年后得到本利和10万元,银行6期存款利率为10%。
则该企业当前应当存入银行本金(5.6447)万元。
10.某公司每年年末都向银行存款5万元以便6年后取出备用。
假设银行年存款利率为4%.则6年后该公司从银行取出的总额是(33。
1648 )万元。
11.某系统集成公司购置了价值80000元的高端服务器,预计使用5年,残值估计为10000元..利用加速折旧法计算第4年应该把该设备(12666。
67)元的折旧费摊入成本。
第2年25333。
33二、问答题(2小题,共25分)1.[8分]美国软件工程专家Putnam 发现了下面的软件生产函数,1433dS EK t,其中S为软件生产规模或源代码程序量(单位:NCSS ),K为软件项目在生存期内投入的总工作量(单位:人年),td为软件项目投入的人力峰值,通常为交付期或工期(单位:年)。
《软件工程》试题(第1套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
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.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( ) A.生存期 B.面向对象设计C.面向对象程序设计 D.面向对象分析10.原型化方法是用户和设计者之间执行的一种交互构成,适用于( )系统。
A.需求不确定性高的 B.需求确定的C.管理信息D.实时11、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A 关键实践B 关键过程域C 软件过程能力D 软件过程12、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程13.下列关于瀑布模型的描述正确的是( )。
第二次作业要求一、请完成以下试题(共90分)1、设有5个待评方案,采用4种综合评价方法求解,其求解所得的排序结果见表2.1,试运用平均值法确定这5种方案的最终排序。
(20分)表2.1答案:d1=(3+1+1+1)/4=1.75d2=(1+2+2+4)/4=2.25d3=(2+3+4+1)/4=2.5d4=(4+4+3+5)/4=4d5=(5+5+5+3)/4=4.5d1<d2<d3<d4<d5故最终排序结果:A1>A2>A3>A4>A52、某通讯网络设备的购买价格(原始价值)为5万元,预计使用五年,其残值估计为1000元,利用加速折旧法求解该设备每年应摊入成本的各年设备折旧费。
(20分)答案:由于K0=50000, T=5年,O=1000U=T+1−tT(T+1)2=6−T15,t=1,2,3,4,5K0-0=50000-1000=49000t = 1: A1 = (K0-O)U = 49000 * (5/15) =16333.33 t = 2: A2 = (K0-O)U = 49000 * (4/15) = 13066.67 t = 3: A3 = (K0-O)U = 49000 * (3/15) = 9800t = 4: A4 = (K0-O)U = 49000 * (2/15) = 6533.33t = 5: A5 = (K0-O)U = 49000 * (1/15) = 3266.673、简述软件的成本构成?减少成本测算误差的策略有哪些?(15分)答案:软件成本是指软件在其生存周期(系统规划、分析、设计、构建与运行维护阶段)内,为取得各种软硬件资源的支持及维持系统的研究,生产经营与管理正常开展所投入的人、财、物而支付的一切费用。
软件成本实际上可看作是研究与开发、采购、生产、经营成本与管理费用的组合。
减少成本测算误差的策略详见教材P744、软件产品的定价及影响软件产品价格的一般因素有哪些?(15分)答案:产品价格是价值的货币表现。
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 软件工程的三要素包括()。
A. 方法、工具和过程B. 方法、工具和人员C. 方法、过程和人员D. 工具、过程和人员答案:C3. 软件需求分析阶段的主要任务是()。
A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:A4. 软件设计阶段的主要任务是()。
A. 制定软件开发计划B. 确定软件的体系结构C. 编写软件详细设计文档D. 进行软件测试答案:B5. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是无错误的D. 证明软件是可维护的答案:B6. 软件维护不包括以下哪项活动()。
A. 改正性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D7. 软件项目管理的主要任务不包括()。
A. 进度管理B. 质量管理C. 风险管理D. 软件编码答案:D8. 面向对象方法中,对象的基本特性不包括()。
A. 抽象B. 封装C. 继承D. 多态答案:D9. UML(统一建模语言)是一种()。
A. 程序设计语言B. 数据库查询语言C. 建模语言D. 脚本语言答案:C10. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。
A. 客户的需求不明确B. 项目范围的扩大C. 技术实现的困难D. 软件已经完成答案:D二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。
A. 抽象B. 模块化C. 逐步求精D. 迭代开发答案:ABC12. 软件需求分析阶段的输出包括()。
A. 需求规格说明书B. 用户手册C. 系统架构图D. 测试计划答案:A13. 软件设计阶段的主要文档包括()。
A. 架构设计文档B. 详细设计文档C. 用户手册D. 测试计划答案:AB14. 软件测试的类型包括()。
第一章4.什么是软件生存周期?软件生存周期一般可划分为哪几个阶段?各阶段间有何关联?答:从概念形成开始,经过开发、使用和维护,直到最后退役的全过程;可行性分析->计划与需求分析->概要设计->详细设计与编码->集成与测试->运行与维护->退役;关联如下图:9.什么是软件工程经济学?软件工程经济学的研究内容有哪些?有何研究特点?软件工程经济学与哪些学科有较紧密的关联?以软件领域中的经济问题和经济规律为研究对象的一门经济学分支学科。
答:研究内容:为实现特定功能需求的软件工程项目而提出的在技术方案、生产(开发)过程、产品或服务等方面所作的经济分析与论证,计算与比较的系统方法。
研究特点:(1)始终重点围绕着软件产品的质量、成本/效益、时间/进度、效率等目标要素的关联分析及人的组织与协调(管理)进行;(2)研究思想来源于系统工程;(3)采用了经济学的传统思路;(4)考虑到国内外差异。
关联学科:(1)社会学、管理学等;(2)经济学;(3)软件工程;(4)计算机通信网络与信息系统;(5)系统工程与运筹学等。
第二章4.什么是固定资产?什么是流动资产?它们在企业生产与经营中起到什么样的作用?企业的成本、收入、税金、利润之间有何关联?固定资产:能在企业生命周期中多个生产项目(如多个软件项目)服务,并始终保持答:原有的实物形态的资产;流动资产:为企业生产经营活动所必须预先垫付、供周转使用的资金等。
作用:固定资产作为生产资料,供企业生产经营;流动资产供生产经营中资金周转,支付员工工资,购买原材料等;关联:销售利润=销售收入—总成本费用—销售税金及附加利润总额=销售利润+投资净收益+营业外收入—营业外支出税后利润=利润总额—所得税5.什么是资金的时间价值?为什么资金的时间价值会直接影响软件项目的经济效果?答:资金在一个循环和周转的过程其绝对金额随时间而产生相应的变化,其增加或减少的金额部分称为资金的时间价值;因为对于软件构建者来讲,其投入和收益都非一次性,而是分阶段,分批次的投入或收取资金,这个过程有一个时间跨度,在这个时间跨度内,资金的时间价值在发生着变化,因此资金的时间价值会直接影响软件项目的经济效果。
第一章
4.什么是软件生存周期?软件生存周期一般可划分为哪几个阶段?各阶段间有何关联?答:从概念形成开始,经过开发、使用和维护,直到最后退役的全过程;
可行性分析->计划与需求分析->概要设计->详细设计与编码->集成与测试->运行与维护->退役;
关联如下图:
9.什么是软件工程经济学?软件工程经济学的研究内容有哪些?有何研究特点?软件工程经济学与哪些学科有较紧密的关联?
答:以软件领域中的经济问题和经济规律为研究对象的一门经济学分支学科。
研究内容:为实现特定功能需求的软件工程项目而提出的在技术方案、生产(开发)过程、产品或服务等方面所作的经济分析与论证,计算与比较的系统方法。
研究特点:(1)始终重点围绕着软件产品的质量、成本/效益、时间/进度、效率等目标要素的关联分析及人的组织与协调(管理)进行;
(2)研究思想来源于系统工程;
(3)采用了经济学的传统思路;
(4)考虑到国内外差异。
关联学科:(1)社会学、管理学等;
(2)经济学;
(3)软件工程;
(4)计算机通信网络与信息系统;
(5)系统工程与运筹学等。
第二章
4.什么是固定资产?什么是流动资产?它们在企业生产与经营中起到什么样的作用?企业的成本、收入、税金、利润之间有何关联?
答:固定资产:能在企业生命周期中多个生产项目(如多个软件项目)服务,并始终保持原有的实物形态的资产;
流动资产:为企业生产经营活动所必须预先垫付、供周转使用的资金等。
作用:固定资产作为生产资料,供企业生产经营;
流动资产供生产经营中资金周转,支付员工工资,购买原材料等;
关联:
销售利润=销售收入—总成本费用—销售税金及附加
利润总额=销售利润+投资净收益+营业外收入—营业外支出
税后利润=利润总额—所得税
5.什么是资金的时间价值?为什么资金的时间价值会直接影响软件项目的经济效果?
答:资金在一个循环和周转的过程其绝对金额随时间而产生相应的变化,其增加或减少的金额部分称为资金的时间价值;
因为对于软件构建者来讲,其投入和收益都非一次性,而是分阶段,分批次的投入或收取资金,这个过程有一个时间跨度,在这个时间跨度内,资金的时间价值在发生着变化,因此资金的时间价值会直接影响软件项目的经济效果。
6.某软件企业获得10万元的贷款,偿还期为5年,年利率为10%,试就下述4种还贷方式,分别计算5年还款总额,并画出现金流量图:
(1)每年末还2万元本金及所欠利息;
(2)每年末只还所欠利息,本金在第五年末一次还清;
(3)第五年末一次还清本金和利息。
解:(1)13万
(2)15万
(3)16.1051万
(过程参考例题)
14.某软件项目现有两个设计方案A1和A2,为比较这两个设计方案的优劣,该项目主管确
定了五个指标X1,X2,X3,X4,X5,对着五个指标的相对重要性作了两两比较,如表2.19所示。
此外,还确定了每个指标划分为四个等级:U1、U2、U3、U4,个等级的等级分分别为5、4、3、1;并对A1、A2方案的个指标所属等级作了判断,如表2.20所示。
根据表2.19和表2.20的有关信息,运用基于现行加权和法的关联矩阵法,对着两个软件设计方案的优劣做方案排序。
表2.19两两比较表
表2.20等级判断表
U
X u1 A1
u2 u3 u4 u1
A2
u2 u3 u4
X1 打钩打钩
X2 打钩打钩
X3 打钩打钩
X4 打钩打钩
X5 打钩打钩
解:V1=3.07
V2=4.07
因为V2>V1,所以A2方案好。
第三章
1.简述软件的成本构成。
说明影响软件成本有哪些因素,为什么说成本预测是一项复杂和困难的任务,其预测精度不高在所难免?
答:成本构成如下图:
影响软件成本的因素:
设备、人力资源投入量(含水平)与工期,三个主要因素;
成本预测的精度不高因素:
(1)估算时间早;
(2)影响因素多;
(3)模型理论化;
(4)需求更新快;
(5)国内外差异;
(6)受外界影响;
(7)技术更新快;
因此说,成本预测是一项复杂和困难的任务,其预测精度不高在所难免。
2.简述软件成本的测算流程。
答:首先根据软件系统规划得到四个方面的需求与特性要求:
(1)有关硬件系统的性能、功能需求、系统特性和资源约束;
(2)有关软件系统的功能要求、系统特性和资源约束;
(3)用户环境及其特性;
(4)系统管理功能设计,
然后根据这四个方面的需求与特性要求分别进行有关类别的成本计算或估算,然后再对软件整个系统的成本与人力资源投入总量及其生存周期各阶段的分布量进行计算,最后对上述成本做灵敏度分析与风险分析。
同时在这个过程中,对该企业以往的数据信息调用,对上述数据作出修正。
3.某软件公司拟开发一城市社区管理信息系统(MIS)。
根据概要设计,该MIS由N1、N2、N3、N4和N5五个功能子系统构成,项目根据经验及公司信息库的资料确定各子系统工作量的最小可能值aj(j为脚标,后面同理)、最大可能值bj和最可能值mj(单位:行)及成本费用率Coj(单位:元/行)、劳动生产率Eoj(单位:行/人月)(j=1,·····,5),见表3.27。
此外,在系统的需求分析、系统设计、编码、测试四个阶段的工时费用率ak(单位:元/人月)和i子系统在上述各阶段的工作量估计Mi1、Mi2、Mi3、Mi4(单位:人月),i=1,```5,见表3.28。
试利用功能分解法对该MIS作成本与工作量估算。
表3.27 成本、工作量功能维估算表aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
解:(1)系统总成本Cs=414445元
系统总行数Es=19915行
系统总工作量Ms=91.5人月
(2)系统总成本Cs=440675元
系统总工作量Ms=95.5人月
(计算过程参见PPT上例题,过程不赘述)。