北京交通大学成人教育本科 软件工程第一作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程第一次作业
(教材第1、2、3章)
学号:姓名:
一.填空题
1.软件是计算机系统中的程序、数据及其相关文档的总和。
2.软件工程方法学包含的三个要素:方法、工具和过程。
3.目前使用最广泛的软件工程方法学是:传统方法学和面向对象方法学。
构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。
4.软件生命周期的三个时期:软件定义、软件开发和运行维护。
5.可行性研究的目的:确定问题是否值得去解决。
6.一个软件项目要至少要从技术可行性、经济可行性和操作可3个方面研究其可行性。
7.成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡。
二.选择题
1、随着开发小组人数的(A ),因交流开发进展情况和讨论遇到的问题而造成的通信开销也急剧增加。
A. 增加
B. 降低
C. 稳定
D. 不稳定
2、软件需求分析阶段的工作,可以分为4个方面:对问题的识别、分析与综合、编写需求分析文档以及(B)。
A. 软件的总结
B. 需求分析评审
C. 阶段性报告
D. 以上答案都不正确
3、进行需求分析可使用多种工具,但(C)是不适用的。
数据流图 B.判定表 C.PAD图 D.数据字典
4、在需求分析之前有必要进行(B)工作
A.程序设计
B.可行性分析
C.ER分析
D.3NF分析
5、软件需求分析阶段建立原型的主要目的是(C )
A.确定系统的性能要求
B.确定系统的运行要求
C.确定系统是否满足用户需要
D.确定系统是否满足开发人员需要
三.简答题
1.什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用范围。
答
答:软件生命周期模型是描述软件开发过程中各种活动如何执行的模型
1.瀑布模型
优点:1)可强迫开发人员采用规范的方法例如结构化技术;
2)严格地规定了每个阶段必须提交的文档
3)要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
缺点:瀑布模型是由文档驱动的”在可运行的软件产品交付给用户之前用户只能通过文档来了解
产品是什么样子的。但是通过写在纸上静态的规格说明很难全面正确的认识动态的软件产品。
适用范围:需求明确,小规模软件开发。
2.快速原型模型
优点:软件产品的开发基本上是线性的
缺点:必须迅速地构建原型然后根据用户意见循序的修改原型
适用范围
用户需求不明确需要通过构建原型来清楚的了解用户的真实需求。
3.增量模型
优点:1)能够在较短的时间内向用户提交可完成部分工作的产品
2)逐步增加产品功能可以使用户有较充裕的时间学习适应新产品从而减少一个全新的软
件可能给客户组织带来的冲击。
缺点:1)较难把每个新的增量构件集成到现有的软件体系结构中而又不破坏原来已经开发出的产品。
2)增量模型本身是自相矛盾的它一方面要求开发人员把软件当做一个整体另一个方面
又要求开发人员把软件构件序列每个构件本质上都独立于另一个构件除非开发人员有足够的技
术能力协调好这一明显的矛盾否则增量模型开发出来的产品可能并不能令人满意。
适用范围:软件开发周期较长的软件,有持续的合作。
4.螺旋模型
优点: 1)对可选方案和约束条件的强调有利于已有软件的重用也有利于把软件质量作为软件开
发的一个重要目标
2)减少了过多测试(浪费资金)或者不足(产品故障多)所带来的风险.
3)在螺旋中维护的只是模型的另一个周期在维护和开发之间没有本质的区别
缺点:除非软件开发人员具有丰富的风险评估经验和这方面的专门知识否则将出现真正的风险当项目实际上正在走向灾难时开发人员可能还认为一切正常。
使用范围:内部软件开发的大规模软件项目。
5.喷泉模型
优点1)对生命周期各阶段的区分变得不重要不明显了
2)分析阶段得到的对象模型也适用设计阶段和实现阶段
3)提高软件项目开发效率节省开发时间
缺点1)开发过程过分无序
2)面向对象范型本身要求经常对开发活动进行迭代或求精
3)在开发过程中需要大量的开发人员因此不利于项目的管理。
适用范围:面向对象的软件开发过程.
2.举例说明敏捷过程的适用范围。
答: 敏捷过程的适用范围
软件需求经常变化或者需求变化比较大,项目团队与用户之间进行沟通比较容易,项目的开发风险比较高,规模比较小,一般项目组成员在50 人之内,项目团队的成员能力比较强,而且具有责任感,项目的可测试性比较好。
3.请画表格说明以下文档分别产生于软件生命周期的哪个阶段程序规格说明书、项目计划任务书、系统目标与范围说明书、程序清单、软件产品、需求规格说明书、概要设计说明书、改进的软件产
品。
问题定义可行性研究需求分析总体设计详细设计编码和单元测试综合阶段软件维护
项目计划任务书程序规格
说明书
概要设计
说明书
项目计划
任务书
程序清单改进的软件
产品
系统目标与范围说明书需求规格
说明书
软件产品
4.系统流程图和数据流图的区别
答: (1)数据流图 (Data Flow Diagram):简称DFD,它从数据传递和加工角度以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。
(2) 数据流程图(Data Flow Diagram,DFD/Data Flow Chart),是描述系统数据流程的工具,它将数
据独立抽象出来通过图形方式描述信息的来龙去脉和实际流程。
它是一种能全面地描述信息系统逻辑模型的主要工具。它可以利用少数几种符号综合的反映出信息在系统中的流动、处理和存储的情况。数据流程图具有抽象性和概括性。
数据流程图是以图形的方式表达在问题中信息的变换和传递过程。它把系统看成是由数据流联系的各种概念的组合,用分解及抽象手段来控制需求分析的复杂性,采用分层的数据流程图来表示一个复杂的系统。
5.需求分析的描述工具有哪些?
答: 数据流图DFD, 实体-联系图, 状态转换图, 层次方框图,Warnier图, IPO图等;
三.应用题
源点/终点采购员
仓库管理员处理
产生报表处理事务
数据流数据存储
订货报表
零件编号
零件名称
订货数量
目前价格
主要供应者次要供应者事务
零件编号* 事务类型
数量* 订货信息
库存清单* 零件编号* 库存量
库存量临界值
2、修改一个已有的库存系统,使它能每天送给采购员一份订货报表,为此需要编写一段程序,估计需要开发成本5万元,该程序寿命为3年。未来3年的每年收益预计为22000元、24000元、26620元。