软件工程第2章作业

合集下载

软件工程第二章(可行性分析)

软件工程第二章(可行性分析)

(5) 交付的产品清单。
项目开发计划书供软件开发单位使用。
小结:
1、项目的问题定义、可行性分析和项目计划是总体 规划阶段的工作,重点是项目的可行性分析。
2、可行性分析主要从技术可行性、经济可行性和操 作可行性三方面来分析该项目是否值得开发。
3、可行性分析最后形成的成果是可行性分析报告。

项目的筹备、规划与准备是软件项目实施的前
期工作,它由两个重要的工作阶段构成:一是
项目规划及可行性分析;二是项目需求分析。

一、可行性分析的概念

可行性分析就是解决一个项目是否有可行解以及是
否值得去解的问题。该阶段的主要任务就是用最小
的代价在尽可能短的时间内确定问题是否能够得到 解决。
二、可行性分析的目标和内容
等。
(6) 技术可行性(技术风险评价):技术实力分析、已有的 工作及技术基础和设备条件等等。 (7) 法律可行性分析结果描述。 (8) 可用性评价:汇报用户的工作制度和人员的素质,确 定人机交互功能界面需求。
(9) 其他项目相关的问题:如可能会发生的变更等等。
可行性研究报告由系统分析员撰写,交由项目负责人审查, 再上报给上级主管审阅。 在可行性研究报告中,应当明确项目“可行还是不可行”, 如果认为可行,接下来还要制定项目开发计划书。


识别用户要求 评价系统的可行性 进行经济分析和技术分析 把功能分配给硬件、软件、人、数据库和其它系 统元素 建立成本和进度限制 生成系统规格说明,形成所有后续工程的基础
三、 可行性分析的主要任务
具体地说,分析员应从下面三个方面对项目做出可行性分 析: (1)技术可行性:使用现有的技术能实现这个系统吗? (2)经济可行性:这个系统的经济效益能超过它的开发成本 吗?(详细在后面介绍成本/效益分析) (3)操作可行性:系统的操作方式在该用户组织内行得通吗?

软件工程作业参考答案(二)2024

软件工程作业参考答案(二)2024

软件工程作业参考答案(二)引言概述:在软件工程学科中,作业是提升学生理论和实践能力的重要环节。

本文将介绍软件工程作业的参考答案,以帮助学生更好地理解和完成相关作业。

本文将从五个大点进行阐述,每个大点下分别包含了5-9个小点,涉及到作业的各个方面。

正文:一、需求分析与规格说明1. 确定用户需求:明确用户对软件的期望和功能需求。

2. 收集需求:通过面对面交流、问卷调查等方式,搜集用户需求信息。

3. 制定规格说明书:将收集到的需求整理成文档形式,包括功能需求和非功能需求。

4. 分析需求:对收集到的需求进行分析,找出其中的矛盾或冲突。

5. 验证需求:与用户进行确认,确保需求的准确性和完整性。

二、设计与建模1. 架构设计:确定软件的整体结构,包括模块划分、组成关系等。

2. 详细设计:对每个模块进行详细设计,包括算法、接口定义等。

3. 数据库设计:设计数据库表结构,包括表字段、主键、外键等。

4. 系统建模:利用UML等建模工具,进行系统的静态和动态建模。

5. 接口设计:定义软件与外部系统或组件之间的接口规范。

三、编码与测试1. 编码规范:制定统一的编码规范,确保代码的一致性和可读性。

2. 模块编码:根据详细设计进行模块的编码工作。

3. 单元测试:对每个模块进行单元测试,确保功能的正确性。

4. 集成测试:将各个模块组装后进行测试,测试模块之间的相互调用和集成效果。

5. 系统测试:对整个软件系统进行全面测试,验证软件的功能和性能。

四、部署与维护1. 部署计划:制定软件部署的计划和流程,确保软件能够顺利部署到目标环境。

2. 环境配置:配置目标环境,包括操作系统、数据库、网络等。

3. 安装部署:将编译好的软件包安装到目标环境中,并完成必要的配置。

4. 运维监控:建立稳定的运维监控系统,定期检查并维护软件的稳定性和安全性。

5. bug修复与更新:根据用户反馈,及时修复和更新软件中的bug和功能问题。

五、文档撰写与总结1. 编写文档:根据软件的不同阶段,编写相应的文档,包括需求文档、设计文档、测试文档等。

软件工程 第二章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

软件工程 第二章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

第二章测验一、单项选择题(共40.00分)1.以下哪一个阶段不属于软件定义时期?()A.问题定义B.可行性研究C.需求分析D.概要设计正确答案:D2 .瀑布模型各阶段之间具有顺序性和()oA.反应性B.依赖性C.同构性D.统一性正确答案:B3 .应用螺旋模型时,维护和开发之间()oA.存在明显界限B.必须由不同团队完成C.通常采用不同的开发方法D.没有本质区别正确答案:D4.最适用于内部开发的大规模软件工程的生命周期模型是()oA.瀑布模型B.喷泉模型C.螺旋模型D,增量模型正确答案:C二、多项选择题(共33.00分)1 .采用快速原型模型开发软件时,原型系统可用于O oA,捕获和理解用户需求B,帮助进行用户界面设计C.支持软件结构设计D.测试目标系统性能正确答案:A B2 .喷泉模型的特点包括()oA.迭代无缝B.强调重用C.风险驱动D.文档驱动正确答案:A B3 .()应用了迭代的思想。

A.瀑布模型B.喷泉模型C.螺旋模型D,增量模型正确答案:BCD三、判断题(共27,00分)1 .增量模型有利于快速响应用户需求的变化。

()A.正确B.错误正确答案:A2 .瀑布模型的每个阶段结束前都要对完成的文档进行评审。

()A.正确B.错误正确答案:A3 .面向对象方法在概念和表示方法上的一致性,保证了在各项开发活动之间的无缝过渡。

()A.正确B.错误正确答案:A。

软件工程 第二-六章习题

软件工程 第二-六章习题

第二章练习题一、判断题1. 软件的模块数越少,其软件成本越低。

错2. 软件模块之间的耦合性越弱越好。

对3. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

对4. 耦合是指一个模块内各个元素彼此结合的紧密程度。

错5. 过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。

错6. 在设计模块时,其宽度和深度要适当。

对7. 模块耦合的强弱取决于模块间接口的复杂程度。

对二、名字解释:1. 抽象:抽象是认识复杂现象过程中使用的思维工具,即抽象出事物本质的共同特性而暂时不考虑其他的细节,不考虑其他因素。

2. 模块化:模块化是指解决一个复杂问题自顶向下逐层把软件系统划分成为若干模块的过程。

每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个要求的功能。

3. 逐步求精:4. 耦合:耦合也成模块叫联系,指软件系统结构中各模块间相互联系紧密程序的一种度量。

5. 内聚:内聚又称块联系。

指模块功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量6. 模块独立:模块独立想指每个模块只完成系统要求的独立的子功能,并且与其他模块联系最少且接口最简单。

7. 信息隐蔽:信息隐蔽在设计和确定模块时,使得一个模块内包含信息,对于不需要这些信息的其他模块来说事不能访问的。

三、选择题10. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( B)。

BA. 隐藏复杂性B. 信息隐蔽C. 经常类的复用D. 类的开发20、为了提高模块的独立性,模块内部最好是( C )CA、逻辑内聚B、时间内聚C、功能内聚D、通信内聚33、从心理学角度看,一次大模块分解为多少个子模块为宜。

(B )BA、3±1B、7±2C、15±1D、18±238、软件设计启发规则不包括( C )CA、在耦合方式上降低模块间接口的复杂性B、模块功能应该可以预测C、将模块的控制域保持在其作用域内D、设计单入口单出口的模块40、为了提高模块的独立性,模块之间的联系最好的是(D)。

第二章软件工程

第二章软件工程

以下不属于UML模型图组成部分的是()。

5分A.事物B.关系C.图D.结构正确答案:D我的答案:B得分:02.在用例之间,会有三种不同的关系,下列哪个不是他们之间可能的关系()5分A.包含B.泛化C.扩展D.关联正确答案:D我的答案:D得分:53.下列关于UML包的描述,错误的是()5分A.大多数面向对象的语言都提供了类似UML包的机制,用于组织及避免类间的名称冲突。

B.当一个包导入另外一个包时,该包里的元素能够使用被导入包里的元素,而不必在使用时通过包名指定其中的元素。

C.当使用某个包中的类时如果未将包导入,则需要使用包名加类名的形式引用指定的类。

D.要在UML中显示导入关系,需要画一条从包连接到目标包的实线,再加上字符import正确答案:D我的答案:D得分:54.下列表述错误的是()5分A.交互图强调的是对象到对象的控制流,而活动图则强调的是从活动到活动的控制流。

B.活动图用来描述事物或对象的活动变化流程,是一种表述业务过程、工作流的技术。

C.复合活动是可以再分解的复杂活动。

D.活动流描述活动之间的有向关系,反映一个活动向另外一个活动之间的转移。

用带箭头的虚线表示。

正确答案:D我的答案:D得分:55.关于用例与类的对比中()是错误的5分A.都属于模型结构元素B.都存在继承关系C.类描述系统的部分静态视图,用例描述系统动态的行为视图D.类描述的是系统的内部构成,用例也可以描述系统的内部构成正确答案:D我的答案:D得分:56.UML图中,对新开发系统的需求进行建模,规划开发什么功能或测试用例,采用(1)最适合。

而展示交付系统的软件组件和硬件之间的关系的图是(2)。

5分A.类图部署图B.对象图组件图C.用例图部署图D.交互图组件图正确答案:C我的答案:C得分:57.以下不属于UML模型图组成部分的是()5分A.事物B.关系C.图D.结构正确答案:D我的答案:B得分:08.在UML模型图的事物中,结构事物主要包括7种,以下不是结构事物的是()A.类、接口B.协作、用例C.对象、图例D.活动类、组件和节点正确答案:C我的答案:C得分:59.UML图中,一张交互图显示一个交互。

软件工程大作业(2)(答案)

软件工程大作业(2)(答案)

软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。

2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。

3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。

4.继承性是子类自动共享其父类的__数据结构和方法____________机制。

5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。

6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。

7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。

8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。

9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。

10.对象之间进行通信叫做__消息_____。

11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。

12.McCall提出的软件质量模型包括______11________个软件质量特性。

13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。

14.软件结构是以____模块__________为基础而组成的一种控制层次结构。

15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。

16.软件概要设计的主要任务就是__软件结构的设计______。

17.结构化程序设计方法是使用___三种基本控制结构____构造程序。

18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。

19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。

二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。

《软件工程实用教程》第2章软件生存周期及开发模型

《软件工程实用教程》第2章软件生存周期及开发模型
第2章軟體生存週期及開發模型
本章學習內容: 1.掌握軟體的生存(生命)週期的概念 2.明確學習軟體過程模型的意義 3.掌握各種過程模型的特點與適用範圍 4.掌握面向對象軟體過程模型的內容與過 程
第2章軟體生存週期及開發模型
2. 1 軟體過程概述
2.1.1 軟體生存週期
軟體的生存週期指軟體產品從功能確 定、設計、開發成功、投入使用,並 在使用中不斷修改、完善,直至被新 的軟體所替代而停止該軟體的使用的 全過程。
第2章軟體生存週期及開發模型
2.2.4 螺旋模型
第2章軟體生存週期及開發模型
改進的瀑布模型
第2章軟體生存週期及開發模型
2.2.2 原型模型
1.快速原型方法 快速原型方法是原型模型在軟體分析、設計 階段的應用,用來解決用戶對軟體系統在需 求分析上的模糊認識。 快速原型法的特點: 快速原型是用來獲取用戶需求的,或是用來 試探某種設計是否有效。一旦需求或設計確 定下來,原型就將被拋棄。
第2章軟體生存週期及開發模型
瀑布模型的缺點 階段與階段劃分固定,階段間產生大量的文檔, 極大地增加了工作量; 由於開發模型呈線性,當開發成果尚未經過測試 時,用戶無法看到軟體的效果,這些問題往往會 導致開發出來的軟體不是用戶真正需要的軟體; 無法通過開發活動澄清本來不夠確切的軟體需求, 因此,需要返工或者不得不在維護中糾正需求的 偏差; 由於固定順序,前期工作中造成的差錯越到後期 階段所造成的損失越大,為了糾正偏差,需要付 出高昂的代價。
第2章軟體生存週期及開發模型
2.2 典型的軟體過程模型
軟體過程模型 把軟體生存週期中各項開發活動的流程用一 個合理的框架——開發模型來規範描述,這 就是軟體過程模型 。 軟體過程模型是從一個特定的角度表現一個 過程,主要根據軟體的類型、規模,特別是 軟體的開發方法、開發環境等多種因素確立 過程模型。

现代软件工程第二章答案

现代软件工程第二章答案

习题二参考答案一. 填空题1.值得去开发, 其中的问题能否解决,需求分析, 设计2. 技术, 经济, 社会3. 研究正在运行的系统, 建立新系统的高层逻辑模型4. 所建议系统的技术可行性分析, 所建议系统的经济可行性分析, 社会因素可行性分析5. 经济角度开发成本比较和权衡二、选择题1. A2. B【解析】:经济可行性是从开发费用和软件回报的角度来分析开发该软件系统是否可行。

技术可行性是从软件实现的功能、用户要求的软件性能、是否有技术难题等方面等考虑开发该软件的可行性问题。

操作可行性判断系统的操作方式在该用户组织内是否可行,法律可行性对方在考虑开发的软件系统可能会涉及的任何侵犯、妨碍、责任等问题做出决定。

所以答案为B。

3. B4. D5. D【解析】:在软件开发中,开发人员的交流似乎非常主要的,而一个开发人员进入一个新的软件系统做开发,需要相当长的一个阶段以适应该软件的开发,这主要是由于新的人员需要一定时间的培训以熟悉该软件系统的开发状况及该软件的需求分析、定义和相关已经生成的文档,以便在软件开发中与老开发人员的交流和通信,一推动软件开发前进。

所以答案为D。

6. D【解析】:软件的计划主要是根据软件开发的要求、软件系统的规模等,对软件开发的各种资源(包括软硬见资源及开发人员)进行合理的规划,以便在开发过程中得到合理的调度,从而使软件开发最充分地利用资源,以在最短的时间内取得最大的经济效益;软件工程经济学的任务是对软件开发的成本、效益等进行分析和估算;软件工程管理学的任务是有效组织和管理软件开发,软件工程开发技术的任务之一是设计和测试软件系统。

所以答案是D。

7. A 8. A 9. C 10. D三、简答题1.可行性研究首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制。

把它们清楚地列举出来。

然后,分析员进行简要的需求分析,经过压缩的设计,探索出若干种可供选择的主要解决方法。

软件工程课后习题答案2

软件工程课后习题答案2
5.
12
作业及解答(第3章)
从问题陈述可知,复印机的状态主要有“闲置”、“复印
”、“缺纸”和“卡纸”。引起状态转换的事件主要是“ 复印命令”、“完成复印命令”、“发现缺纸”、“装满 纸”、“发生卡纸故障”和“排除了卡纸故障”。
13
作业及解答(第4章)
14
补充:请将下图的DFD转换为软件结构图。 (注:图中⊕表示或者)
1
作业及解答(第3章)
1. 银行计算机储蓄系统的工作过程大致如下:储户填写的 存款单或取款单由业务员键入系统,如果是存款则系统记 录存款人姓名、住址(或电话号码)、身份证号码、存款类 型、存款日期、到期日期、利率及密码(可选)等信息,并 印出存单给储户;如果是取款而且存款时留有密码,则系 统首先核对储户密码,若密码正确或存款时未留密码,则 系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘 系统中的数据对象。
21
不能是两个分开的子系统,是相同的前台单个处理
银行储蓄系 统
存 款 单 款
率 利
利 存单 息清单
密 码
业务单据录 入
利 率
存款单


储蓄业务处理
存款单
单据输出
利 息
存单

存单
密码

利率



密 码


存款利 率设置
存款单据输 入
取款单 据输入
存款
取款
存单
利息清单
22
(2)机票预定系统 为了方便旅客,某航空公司拟开发一个机票预定系 统。旅行社把预定机票的旅客信息(姓名、性别、 工作单位、身份证号码、旅行时间、旅行目的地等 )输入该系统,系统为旅客安排航班,旅客在飞机 起飞前一天凭取票通知和账单交款取票,系统核对 无误即印出机票给顾客

《软件工程》第2章_软件可行性研究

《软件工程》第2章_软件可行性研究
为了使读者具体了解怎样编写可行性研究报告技术文档, 下面对可行性研究报告的内容要求及写法作一下简要说明。
2.3 可行性研究报告
2.3 可行性研究报告
2.3 可行性研究报告
2.3 可行性研究报告
2.3 可行性研究报告
2.4 小结
可行性研究是抽象和简化了的系统分析和设计的全 过程,它的目标是用最小代价尽快确定问题是否能够解 决,以避免盲目投资带来的巨大浪费。可行性研究是从 技术上、经济上、使用上、法律上分析应解决的问题是 否有可行的解,从而确定该软件是否有可行的解。
上述可行性研究的步骤只是一个经过长期实践总结出来的 框架,在实际的使用过程中,它不是固定的,根据项目的性质、 特点以及开发团队对业务领域的熟悉程度会有些变化。
2.3 可行性研究报告
可行性研究可以归档为一个单独的报告,提供给上级管理 部门,又可以包括在“系统规格说明”的附录中,虽然可行性 报告的形式可以有多种,但最重要的内容应当有:
第二章 软件可行性研究
【本章引言】
在计算机的软件项目开发过程中,只要资源和时间 不加以限制,所有的项目都是可行的。然而,由于资源 缺乏和交付时间限制的困扰,使得基于计算机系统的开 发变得比较困难。因此,尽早对软件项目的可行性做出 细致而谨慎的评估是十分必要的。如果在定义阶段及早 发现将来可能在开发过程中遇到的问题及早做出决定, 可以避免大量的人力、财力、时间上的浪费。
本章简要的介绍了有关可行性研究的任务、步骤, 以及在撰写可行性研究报告时有哪些要求。
2.5 习题
1. 为什么要对计算机软件项目进行可行性研
究?
2. 可行性研究主要研究哪些问题?试说明之。 3. 可行性研究的任务是什么? 4. 可行性研究的步骤? 5. 撰写可行性研究报告的方法?

软件工程(概论)生存期和开发模型-作业2

软件工程(概论)生存期和开发模型-作业2
发散性传播的原理,所以逆转将会延误工期,增加成本,造成重大损失。
2.3 软件开发模型
4.模型的优点 开发阶段清晰,便于评审、审计、跟踪、管理和控制。
5.模型的缺点 传统的项目组织方法是按顺序完成每个工作流程,即瀑布式生命周期。瀑布
只能一个个台阶地往下流,不可能倒着往上流,这就是它致命的缺点。 瀑布式生命周期通常会导致在项目后期,出现“问题堆积”,更可怕的是,错
一阶段(活3)动用的户输使入用,环继境续很进稳行定下;一阶段的活动,否则返回上一阶段修改。 (4)用户除提出需求以外,很少参与开发工作。
2.模瀑型布的模特型点认为:项目经理或软件管理人员,只要控制好每级台阶的高度 (和1宽)度里,程在碑每或个基台线阶驱处动设,立或里者程说碑文或档基驱线动,;并组织好对基线的评审与审 (计2,)就过可程以逆控转制性好很项差目或的者开说发不成可本逆、转进,度因和为质根量据。上游的错误会在下游进行
误的传递会采取发散扩大的方式。
瀑布模型反馈环
CMM/CMMI采取阶段评审和不符合项(Noncompliance Items)的动态跟踪制度, 只有前一阶段不符合项全部改正,才允许开发人员进入后一阶段工作。
不符合项,就是在评审中发现的问题项,它不同于Bug。对于这些不符合项,软 件管理部门要列出表格,记录在案,确定责任人,限定改正时间,动态跟踪到底 。
可行性研究的结果是负责人作出是否继续进行这项工程的决定的重要依据。 可行性研究以后的各个阶段,将需要投入多少相应的人力物力。 及时终止不值得投资的工程项目,可以避免更大的浪费。
2.2 软件工程过程
3. 需求分析
这个阶段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须 具备哪些功能。产生《需求规格说明书》。

《软件工程》第二章练习题

《软件工程》第二章练习题

《软件工程》第二章练习题一、单项选择1、从供选择的答案中选出与下列有关软件需求分析叙述相对应的正确答案,将其编号填入到相应的括弧()内。

开发软件时对提高软件开发人员工作效率至关重要的是( A ① )。

软件工程中描述生存周期的瀑布模型一般包括计划、( B ① )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C ③ )和( D ⑥ )两步。

供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计2、软件开发费用只占软件生存期全部费用的_B___。

A. 1/2B. 1/3C. 1/4D. 2/33、在软件开发过程中大约要花费__C__%的工作量进行测试和调试。

A. 20B. 30C. 40D. 504、准确地解决“软件系统必须做什么”是__B__阶段的任务。

A. 可行性研究 B. 需求分析 C. 软件设计 D. 程序编码5、软件生存期中时间最长的是_D__ 阶段。

A. 需求分析B. 软件设计C. 软件测试D. 软件运行/维护6、在软件生存期的模型中,_D__适合于大型软件的开发,它吸收了软件工程中“演化”的概念。

A .喷泉模型 B. 基于知识的模型 C. 瀑布模型 D. 螺旋模型7、在软件生存期中,用户的参与主要在_A___。

A. 软件定义阶段、B. 软件开发阶段、C. 软件维护阶段、D. 整个软件生存期过程中8、在软件开发过程中的每个阶段都要进行严格的__D___,以尽早发现在软件开发过程中产生的错误。

A. 检验B. 验证C. 度量D. 评审9、在软件开发和维护过程中需要变更需求时,为了保持软件各个配置成分的一致性,必须实施严格的__B___。

A. 产品检验B. 产品控制C. 产品标准化D. 开发规范10、实践表明,采用先进的开发技术可提高软件开发的生产率,还可提高软件的__D__ 。

软件工程第二章试题

软件工程第二章试题

选择题1.以下关于数据流图的说法错误的是(c)。

A.数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B 数据流图是用作结构化分析的一种工具C.传统的数据流图中主要由加工、数据源点、终点、数据流、控制流、数据存储组成D. 数据流图的绘制采用自上向下、逐层分解的方法数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(c)。

A.数据库设计B.数据通信C.数据定义D.数据维护3.主要从(A)几个方面进行系统可行性研究。

(A)技术可行性,经济可行性,操作可行性。

(B)技术可行性,经济可行性,系统可行性。

(C)经济可行性,系统可行性,操作可行性。

(D)经济可行性,系统可行性,时间可行性。

4.进行需求分析可使用多种工具,但(C)是不适用的。

A数据流图(B)判定表(C)PAD图(D)数据字典5.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发?的决策依据,因必须给出(b)的回答。

A.确定B.行或不行C.正确D.无二义6.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是(c)A.数据库设计B.数据通信C.数据定义D.数据维护7.在数据流图中,○(椭圆)代表(c)。

A、源点 B、终点 C、加工 D、模块8.研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。

A. 技术可行性B.经济可行性C.社会可行性D.法律可行性9.经济可行性研究的范围包括(c)A.资源有效性B.管理制度C.效益分析D.开发风险10.数据流图(DFD )是 ________ 方法中用于表示系统的逻辑模型的一种图形工具。

A. SAB. SDC. SPD. SC判断题1.流图中的区域数等于环形复杂度。

(√)2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

(×)3.数据流图(DFD)是软件开发需求分析阶段经常使用的工具。

(√)4. 在软件工程项目中不随参与人数的增加而使软件的生产率增加的主要问题是参与人员之间的通讯困难。

软件工程第2章作业

软件工程第2章作业

软件工程第2章作业一、填空题(每小题2分,共22分)1、可行性研究实质上是进行一次简化、压缩了的__需求分析和设计__________。

2、可行性研究的三个方面是技术可行性、社会可行性和____经济可行性_____。

3、可行性研究的第一个具体步骤是___确定项目的规模和目标_______。

4、若年利率为i,不计复利,P元在n年后的价值F是___p×(1+n×i) ______。

5、整个生存周期系统的累计收入的折现值PT 与总成本折现值ST之差称为纯收入。

6、把资金投入到项目中与把资金存入银行比较,其中投入到项目中可获得的年利率就称为项目的_投资回收率。

7、可行性研究的目的是用最小的代价,在尽可能短的时间内,确定__项目值得开发否____。

8、可行性研究在进行简要需求分析和设计时,要在高层次上以____较抽象形式___________进行。

9、软件工程有两种效益,它们是无形效益和_____有形效益_________。

10、项目开发计划是一种_____管理性_________文档。

11、基于计算机系统的系统元素主要有硬件、软件、人、___数据库_、文档、____规程_______。

二、选择题(每选择题2分,共36分)1、可行性研究的目的是决定( B )。

A、开发项目B、项目是否值得开发C、规划项目D、维护项目2、技术可行性要研究的问题之一是( D )。

A、存在侵权否B、成本效益问题C、运行方式可行否D、技术风险问题3、纯收入是累计效益现在值与投资之( B )。

A、和B、差C、积D、商4、项目开发计划这类文档是一种( B )。

A、技术性文档B、管理性文档C、需求分析文档D、设计文档5、在软件的可行性研究中,可以从不同的角度对软件的可行性进行研究,其中是从软件的功能可行性角度考虑的是( B )。

A、经济可行性B、技术可行性C、操作可行性D、法律可行性6、在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是( D )。

软件工程课后习题_第1,2,3章

软件工程课后习题_第1,2,3章

第一章:一.判断题:1.软件就程序,编软件就是编写程序。

()2.软件危机的主要表现是软件需求增加,软件价格上升。

()3.软件工程科学出现的主要原因是软件危机的出现。

()4.与计算机科学的理论研究不同,软件工程是一门原理性学科()二.选择题1.在下列选项中,()不是软件的特征A系统性与复杂性 B 可靠性与一致性C 抽象性与智能性D 有形性与可控性2.软件危机的主要原因是:A软件工具落后 B 软件生产能力不足C 对软件的认识不够D 软件本身的特点及开发方法3.下列说法正确是的是A 20世纪50年代提出了软件工程的概念B 20世纪60年代提出了软件工程的概念C 20世纪70年代提出了客户机/服务器技术D 20世纪80年代软件工程学达到成熟4.( )是将系统化的规范的可定量的方法应用于软件的开发,运行和维护的过程。

它包括方法、工具和过程三个要素A 软件生命周期B 软件测试C 软件工程D 软件过程5.在下列选项中,()不属于软件工程学科索要研究的基本内容。

A 软件工程材料B 软件工程目标C 软件工程原理D 软件工程过程6.软件工程的三要素是()A技术,方法和工具 B 方法,对象和类 C 方法,工具和过程 D 过程,模型和方法7.用来辅助软件开发,运行,维护,管理,支持等过程中的活动的软件成为软件开发工具,通常也称为()工具A CADB CAIC CAMD CASE三简答题1.与计算机硬件相比,计算机软件有哪些特点?2.软件就是程序吗?如何定义软件?3.什么是软件危机?是什么原因导致了软件危机?4.为什么说软件工程的开发能在一定程度上解决软件危机的各种弊端?5.请简述软件工程的研究内容。

6.请简述软件工程的三要素。

7.请简述软件工程的目标,过程和原则。

8.请简述软件工程的基本原则。

9.请简述现代软件工程与传统软件工程显著的区别与改进。

第二章:一判断题1.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。

软件工程实用教程(2版)-第2章-习题与参考答案-2012-3-15

软件工程实用教程(2版)-第2章-习题与参考答案-2012-3-15
阶段评审:
在每一阶段工作完成后都要进行评审,以便尽早发现问题,避免后期的返 工,如果评审不合格,贝y不开始下一阶段的工作。
文档管理:
在每阶段都规定了要完成的文档,没有完成文档,就认为没有完成该阶段 的任务。
3.试说明原型模型的两种实现方案各有什么特点?各适用于什么情况?
答案要点:
原型模型在软件分析、设计阶段的应用,用来解决用户对软件系统在需求 分析上的模糊认识。将模拟的手段引入需求分析的初期阶段,通过建立原型缩 短用户与分析人员之间的距离。
瀑布模型,快速原型模型。进化的软件过程模型有:
增量模型、螺旋模型。传统软件开发模型主要采用了系列化、结构化开发 技术,所以软件过程具有 “线性”特征,开发活
--软件工程实用教程(第2版)
动比较有序、清楚、规范,但开发出的软件产品的稳定性、可复用性、可 维护性都比较差。
敏捷软件开发过程可用于任何软件过程,将软件过程设计为:
-1软件工程实用教程(第2版)
原型进化模型对开发过程的考虑是,针对有待开发的软件系统,先开发一 个原型系统让用户使用,然后根据用户使用情况的意见反馈,对原型系统不断 修改,使它逐步接近并最终达到开发目标。跟快速原型不同的是,快速原型在 完成需求定义后将被抛弃,而原型进化所要创建的原型则是一个今后要投入应 用的系统,只是所创建的原型系统在功能、性能等方面还有许多不足,还没有 达到最终的开发目标,需要不断改进。
答案要点:
瀑布模型是一种基于里程碑的阶段过程模型,它所提供的里程碑式的工作 流程,为软件项目按规程管理提供了便利。例如,按阶段制定项目计划,分阶 段进行成本核算,进行阶段性的评审等。这为提高软件产品质量提供了有效保 证。
瀑布模型的特点:
阶段性:
前一阶段工作完成以后,后一阶段工作才能开始,前一阶段的输出文档是 后一阶段的输入文档。

软件工程第一二三章习题参考答案

软件工程第一二三章习题参考答案
当鲍曼断开计算机时,HAL立即又把自己接了上去。最后,鲍曼只好拆下计算机的存储器,才得以控制他的宇宙飞船。
请问:
(1)为什么鲍曼拆下存储器就能摆脱计算机的干扰而独自控制宇宙飞船?我们现在遇到的软件问题有这么严重吗?
(2)如果不依靠飞行指挥中心,鲍曼怎样才知道HAL的故障预报有问题?
(3)应该怎样设计计算机系统,才能避免出现故事中描述的这类问题?
3.什么是软件工程?它有哪些本质特性?怎样用软件工程消除(至少是缓解)软件危机?
答:软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
软件工程本质特性:1)软件工程关注于大型程序的构造;2)软件工程的中心课题是控制复杂性;3)软件经常变化;4)开发软件的效率非常重要;5)和谐地合作是开发软件的关键;6)软件必须有效地支持它的用户;7)在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。
消除软件危机的途径:为了消除软件危机,首先应该对计算机软件有一个正确的认识。必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。应该推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早期发展阶段形成的一些错误概念和做法。应该开发和使用更好的软件工具。为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
软件工程第一二三章习题参考答案
人怎么能在设计阶段清除它呢?”你怎么反驳他?
答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件已经完成时再引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。

软件工程期末大作业《软件工程》(二)2024

软件工程期末大作业《软件工程》(二)2024

软件工程期末大作业《软件工程》(二)引言概述:为了完成软件工程期末大作业《软件工程》(二),本文将围绕软件工程的相关内容展开讨论。

软件工程是一门关于软件开发和维护的学科,涉及到多方面的知识和技术。

本文将从需求分析、系统设计、编码、测试和软件维护这五个方面分阐述软件工程的主要内容。

需求分析:1. 确定用户需求: 通过与用户沟通和调研,明确用户对软件的需求和使用场景。

2. 分析需求: 将用户需求进行逐一分解,理解每个需求的重要性和优先级。

3. 编写需求文档: 将需求转化为文档,明确需求的功能、性能和界面要求。

4. 确定需求变更处理方法: 需求变更是常见的情况,需要制定相应的变更管理流程。

系统设计:1. 架构设计: 根据需求分析的结果,设计系统的整体结构和模块间的关系。

2. 数据库设计: 设计系统需要使用的数据库结构和数据流程。

3. 界面设计: 设计系统的用户界面,保证用户友好性和易用性。

4. 安全设计: 考虑系统的安全性和防护措施,保护用户数据和系统的完整性。

5. 性能设计: 针对系统的性能要求,进行合理的资源和算法设计。

编码:1. 选择编程语言和开发平台: 根据系统需求和团队的技术经验,选择适合的编程语言和开发平台。

2. 划分模块: 将系统功能划分为多个模块,分别进行编码和测试。

3. 编码规范: 遵循编码规范,保证代码的可读性和可维护性。

4. 使用工具和框架: 利用现有的工具和框架,提高开发效率和质量。

5. 版本控制: 使用版本控制工具,管理和追踪代码的变更和版本发布。

测试:1. 单元测试: 针对每个独立的模块进行单元测试,确保其功能的正确性。

2. 集成测试: 将各个模块整合在一起进行测试,验证模块间的协同工作。

3. 系统测试: 对整个系统进行全面的测试,验证系统的功能和性能。

4. Bug修复: 在测试过程中发现的问题需要及时修复,并进行相应的再测试。

5. 用户验收测试: 邀请用户进行最终的测试,反馈系统的问题和建议。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程第2章作业
一、填空题(每小题2分,共22分)
1、可行性研究实质上是进行一次简化、压缩了的__需求分析和设计__________。

2、可行性研究的三个方面是技术可行性、社会可行性和____经济可行性_____。

3、可行性研究的第一个具体步骤是___确定项目的规模和目标_______。

4、若年利率为i,不计复利,P元在n年后的价值F是___p×(1+n×i)?______。

5、整个生存周期系统的累计收入的折现值PT 与总成本折现值ST之差称为纯收入。

6、把资金投入到项目中与把资金存入银行比较,其中投入到项目中可获得的年利率就称为项目的_投资回收率。

7、可行性研究的目的是用最小的代价,在尽可能短的时间内,确定__项目值得开发否____。

8、可行性研究在进行简要需求分析和设计时,要在高层次上以____较抽象形式___________进行。

9、软件工程有两种效益,它们是无形效益和_____有形效益_________。

10、项目开发计划是一种_____管理性_________文档。

11、基于计算机系统的系统元素主要有硬件、软件、人、___数据库_、文档、____规程_______。

二、选择题(每选择题2分,共36分)
1、可行性研究的目的是决定( B )。

A、开发项目
B、项目是否值得开发
C、规划项目
D、维护项目
2、技术可行性要研究的问题之一是( D )。

A、存在侵权否
B、成本效益问题
C、运行方式可行否
D、技术风险问题
3、纯收入是累计效益现在值与投资之( B )。

A、和
B、差
C、积
D、商
4、项目开发计划这类文档是一种( B )。

A、技术性文档
B、管理性文档
C、需求分析文档
D、设计文档
5、在软件的可行性研究中,可以从不同的角度对软件的可行性进行研究,其中是从软件的功能可行性角度考虑的是( B )。

A、经济可行性
B、技术可行性
C、操作可行性
D、法律可行性
6、在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是( D )。

A、工作阶段间的等待时间
B、生产原型的复杂性
C、参与人员所需的工作站数
D、参与人员之间的通信困难
7、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是
( D )。

A、组织与管理
B、分析与估算
C、设计与测试
D、规划与调度
8、软件项目计划一般不包括以下哪项内容( D )。

A、培训计划
B、人员安排
C、进度安排
D、软件开发标准的选择和制定
9、研究开发所需要的成本和资源是属于可行性研究中的( B )研究的一方面。

A、技术可行性
B、经济可行性
C、社会可行性
D、法律可行性
10、可行性研究要进行一次( C )需求分析。

A、详细的
B、全面的
C、简化的、压缩的 D.彻底的
11、经济可行性研究的范围包括( C )。

A、资源有效性
B、管理制度
C、效益分析
D、开发风险
12、在可行性研究阶段,对系统所要求的功能、性能以及限制条件进行分析,确定是否能够构成一个满足要求的系统,这称为( B )可行性。

A、经济
B、技术
C、法律
D、操作]
13、可行性研究的目的是用最小的代价,在最短的时间内确定问题是否可能解决和值得去解决,主要从( C )三个方面进行。

A、技术可行性、费用可行性、效益可行性
B、经济可行性、技术可行性、机器可行性
C、技术可行性、操作可行性、经济可行性
D、费用可行性、机器可行性、操作可行性
14、可行性分析中,系统流程图用于描述( A )。

A、当前运行系统
B、当前逻辑模型
C、目标系统
D、新系统
15、系统流程图是一种工具,它用于描述( D )。

A、逻辑系统
B、程序系统
C、体系结构
D、物理系统
16、假设开发一个计算机应用系统的总投资为3000元,该应用系统投入使用后每年可产生收益1000元,其生存周期为5年。

假定年利率为12%,则
(1)该系统的纯收入是( D )元。

A、 B、 C、 D、
(2)投资回收期是( B )年。

A、 B、 C、 D、
(3)投资回收率为( C )。

A、25%
B、30%
C、20%
D、15%
三、名称解释(每个4分,共16分)
1、可行性研究
答:可行性研究就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。

其实质是要以较抽象的方式进行一次简化的,压缩了的需求分析,设计过程。

2、货币时间价值
答:货币时间价值是指货币随着时间的推移而发生的增值,也称为资金时间价值。

3、投资回收期
答:投资回收期是衡量一个开发工程价值的经济指标。

投资回收期就是积累的经济效益等于最初的投资所需要的时间。

4、纯收入
答:整个生存周期系统的累计收入的折现值PT 与总成本折现值ST之差称为纯收入。

四、简答题(每小题5分,共25分)
1.可行性研究的主要任务是什么
答:可行研究的任务:首先需要进行概要的分析研究,初步确定项目的规模,目标,约束和限制。

分析员再进行简要的需求分析,抽象出项目的逻辑结构,建立逻辑模型。

从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的解决方法,对每种解决方法都要研究它的可行性。

?主要从三个方面考虑:?
⑴技术可行性:一般要考虑的情况包括?开发的风险即设计出的系统能否达到要求的功能和性能;资源的有效性;相关技术的发展是否支持;?
⑵经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资。

?
⑶社会可行性:要开发的项目是否存在任何侵权问题,运行方式在用户组织内是否可行,现有管理制度﹑人员素质﹑操作方式是否可行。

2、可行性研究有哪些步骤
答:⑴确定项目规模和目标;?
⑵研究正在运行的系统;收集﹑研究﹑分析现有系统的文档资料,实地考察系统访问有关人员,然后描绘现有系统的高层系统流程图。

?
⑶建立新系统的高层逻辑模型;使用数据流图和数据字典描述数据在系统中的流动和处理情况。

??
⑷导出和评价各种方案;导出若干较高层次的物理解决方法,根据技术可行性﹑经济可行性﹑社会可行性进行评估,得到可行的解决方法。

?
⑸推荐可行方案;进行成本~效益分析,决定该项目是否值得开发,若值得开发那么解决方案是什么,并且说明该方案可行的原因和理由。

?
⑹编写可行性研究报告;将上述可行性过程的结果写成相应文档,即可行性研究报告。

3、成本--效益分析可用哪些指标进行度量
答:⑴投资回收率:通常把建立系统若干年后能取得的收益折算成现在的价值和开发系统所需的费用进行比较得出投资回收率。

⑵投资回收期:就是使累计的经济效益等于最初的投资费用所需的时间。

⑶纯收入:整个生存周期之内的累计经济效益(折成现在值)与投资之差。

4、项目开发计划有哪些内容
答:⑴项目概述:说明项目的各项主要工作;说明软件的功能﹑性能;为完成项目应具有的
条件;用户及合同承包者承担的工作完成的期限及其他条件限制;应交付的程序名称;所使用的语言及程储形式;应交付的文档。

?
⑵实施计划:说明任务的划分,各任务责任人,项目开发进度,项目的预算,各阶段的费用支出,各阶段应完成的任务,用图表说明每项任务的开始和完成时间。

?
⑶人员组织及分工:所需人员类型﹑数量﹑组成结构。

?
⑷交付期限:最后完工日期。

5、可行性研究报告有哪些主要内容
答:⑴引言:编写本文档的目的;项目名称﹑背景;本文档用到的专门术语和参考资料。

?
⑵.可行性研究前提:说明开发项目的功能﹑性能和基本要求;达到的目标;各种限制条件;可行性研究方法和决定可行性的主要因素。

?
⑶对现有系统的分析:说明现有系统的处理流程和数据流程;工作负荷;各项费用支出;所需各类专业技术人吧和数量;所需各种设备;向有系统存在什么问题。

?
⑷所建议的技术可行性分析:所建议系统的简要说明;处理流程和数据流程;与现有系统比较的优越性;采用所建议系统对用户的影响;对各种设备﹑现有软件﹑开发环境﹑运行环境的影响;对经费支出的影响;对技术可行性的评价。

?
⑸所建议系统的经济可行性分析:说明建议系统的确良各种支出,各种效益;收益投资比;投资顺收周期。

?
⑹社会因素可行性分析:说明法律因素,对合同责任﹑侵犯专利权﹑侵犯版权等问题的分析;说明用户使用可行性,是否满足用户行政管理﹑工作制度﹑人吧素质的要求。

?
⑺其它可供选择方案:逐一说明其他可供选择的方案,并说明未被推荐的理由。

?
⑻结论意见:说明项目是否能开发;还需什么条件才能开发;对项目目标有何变动等。

相关文档
最新文档