没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
第 1 章 软件工程概述
参考答案
一. 选择题
1. B 2. A 3. B 4. B 5. D 6. B 7. D 8. A 9. D
二. 填空题
1. 设计 编码 测试
2. 软件费用 可靠性 可维护性 可重用性及生产率等
3. 计算机软件开发和维护
4. 分解 抽象和信息隐蔽 一致性 确定性
5. 软件的总目标 待开发软件的需求
6. 二 三
7. 计划阶段 开发阶段 维护阶段
8. 软件需求明确
9. 制定计划 风险分析 开发实施 用户评估
三. 名词解释
1. 软件的定义如下:在运行中能提供所希望的功能和性能的指令集,使程序能正确运行的数据结构 ,
描述程序研制过程和方法所用的文档。
2. 软件工程是指导计算机软件开发和维护的一门学科。
3. 软件危机指的是软件开发和维护过程中遇到的一系列严重问题。
4. 就是从提出软件产品开始,直到该软件产品被淘汰的全过程。
5. 瀑布模型又称生存周期模型,由 B.M.Boehm 提出,是软件工程的基础模型。其核心思想是按工序
将问题化简,将功能的实现与设计分开,便于分工协作。
6. 螺旋模型将瀑布模型与演化模型结合起来,并且加入两种模型均忽略了的风险分析,弥补了两者
的不足。
四. 简答题
1. 软件既是知识产品,又是与汽车,建筑物一样的工业产品,此外,软件还具有类似艺术,学术那
样的知识性创造和特点,软件的特点如下:
软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性;
软件是通过人们的智力活动,把知识与技术转化成信息的一种产品,是在研制、开发中被创造出来
的;
在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题;
软件的开发和运行经常受到计算机系统的限制,对计算机系统有着不同程度的依赖关系;
软件的开发尚未完全摆脱手工的开发方式;
软件的开发费用越来越高,成本相当昂贵;
软件的开发是一个复杂的过程,因而管理是软件开发过程中必不可少的內容。
2. 软件危机主要表现如下:产品不符合用户的实际需要;软件开发生产率提高的速度远远不能满足
客观需要,软件的生产率远远低于硬件生产率和计算机应用的增长速度,使人们不能充分利用现代计算
机硬件提供的巨大潜力;软件产品的质量差;对软件开发成本和进度的估计常常不准确;软件的可维护
性差;软件文档资料通常既不完整也不合格;软件的价格昂贵,软件成本在计算机系统总成本中所占的
比例逐年上升。
造成软件危机的原因是:软件的规模越来越大,结构越来越复杂,软件开发管理困难而复杂,软件
1
开发费用不断增加;软件开发技术落后,生产方式落后,开发工具落后,生产率提高缓慢。
3. 软件工程原则如下:用分阶段的生存周期计划严格管理;坚持进行阶段评审;实行严格的产品控
制;采用现代程序设计技术;应能清楚地审查结果;合理安排软件开发小组的人员。
4. 软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。包括:付出较低的
开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;
能按时完成开发任务,及时交付使用;开发的软件可靠性高。
面临的主要问题是:软件费用,软件可靠性,软件维护,软件生产率,软件重用。
5. 软件生存周期一般分为如下几个阶段:问题定义及可行性研究,需求分析,概要设计,详细设计,
编码,测试,运行与维护。
软件生存期也可以分为三个大的阶段:计划阶段、开发阶段和维护阶段。
6. 软件的质量保证工作不能等到编码阶段结束之后再进行,其理由如下:
(1)大部分错误是在编码之前造成的。
(2)错误发现与改正得越晚,所需付出的代价也越高。因此,在每个阶段都要进行严格的评审,以便
尽早发现在软件开发过程中所犯的错误,这是一条必须遵循的重要原则。
7. 在用瀑布模型开发软件时,每项开发活动均应具有如下特征:
(1)从上一项活动接收该项活动的工作对象,作为输入;
(2)利用这一输入实施该项活动应完成的内容;
(3)给出该项活动的工作结果,作为输出传给下一项活动;
(4)对该项活动实施的工作进行评审。若其工作得到确认,则继续进行下一项活动,否则返回前项,
甚至更前项的活动进行返工。
8. 对这个项目的一个重要要求是,严格按照已对外公布了的日期完成产品开发工作,因此,选择生
命周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。使用增量模型开发软件时可以并行完
成开发工作,因此能够加快开发进度。
这个项目是开发该公司已被广泛应用的字处理软件的新版本,从上述事实至少可以得出 3 点结论:
第一,旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再
专门建立一个原型系统来分析用户的需求;第二,该公司的软件工程师对字处理软件很熟悉,有开发字
处理软件的丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平;第三,该软件受到广
大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以
利于今后的改进和扩充。
综上所述,采用增量模型来完成这个项目比较恰当。
第 2 章 可行性研究和需求分析
参考答案
一. 选择题
1. B 2. C 3 D 4. A 5. D 6. A 7. D 8. B 9. A 10. B
二. 填空题
1. 值得去开发 其中的问题能否解决
2. 技术可行性 经济可行性 社会可行性
3. 风险分析 资源分析 技术分析
4. 需求分析和设计
5. 物理系统 用图形符号以黑盒子形式描绘系统里面的每个部件
6. 技术可行性
7. 调查研究 分析与综合 书写文档 需求分析评审
2
8. 需求规格说明书 È初步用户使用手册È 确认测试计划
9. 数据流È 加工 数据存储È 数据源点或终点
10. 抽象性È 概括性È 层次性
三. 名词解释
1. 可行性研究就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开
发。其实质是要以较抽象的方式进行一次简化的,压缩了的需求分析和设计过程。
2. 技术可行性是最难决断和最关键的问题。根据客户提出的系统功能、性能及实现系统的各项约束
条件,从技术的角度研究系统实现的可行性。
3. 需求分析是准确地理解用户的需求并将其转换成需求定义,然后由需求定义转换成形式化的功能
规约。需求分析的困难表现在问题的复杂性、交流的障碍、不完备和不一致性、需求易变性。
4. 数据流即数据通过一个系统时的变化方式。输入数据首先转换成中间数据,然后转换成输出结果
数据。在此期间可以从已有的数据存储(如磁盘文件或内存缓冲区)中引入附加数据。对数据进行转换
是程序中应有的功能或子功能。两个转换功能之间的数据传递就确定了功能间的接口。
5. 数据流图是用来表示系统的功能的工具,它表示系统的逻辑模型,描述了数据流在系统中流动的
情况它是一种功能模型。
四. 简答题
1. 可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。也就是说可行性
研究的目的不是解决问题,而是确定问题是否值得去解,研究在当前的具体条件下,开发新系统是否具
备必要的资源和其他条件。可行性研究是要进一次压缩简化了的系统分析和设计的过程,也就是说在较
高层次上以较抽象的方式进行设计的过程。
在明确了问题定义之后,分析员应该给出系统的逻辑模型,然后从系统逻辑模型出发,寻找可供选
择的解法。研究每一种解法的可行性。一般说来,应从经济可行性、技术可行性、运行可行性、法律可
行性和开发方案等方面研究可行性。
2. 经济可行性进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。
社会可行性要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目目的运行方式在用户组织内
是否行得通,现有管理制度、人员素质、操作方式是否可行。
3. 包括如下步骤:复查系统规模和目标;研究目前正在使用的系统;导出新系统的高层逻辑模型;
重新定义问题;导出和评价供选择的方案;推荐一个方案并说明理由;推荐行动方案;书写计划任务书
提交审查。
4. 本项目的开发价值;推荐这个方案的理由;制定实现进度表,这个进度表不需要也不可能很详细,
通常只需要估计生存周期每个阶段的工作量。
5. 一个可行性研究报告的主要内容如下:
(1)引言:说明编写本文档的目的;项目的名称、背景;本文档用到的专门术语和参考资料。
(2)可行性研究前提:可行性研究前提。说明开发项目的功能、性能和基本要求;达到的目标;各种
限制条件;可行性研究方法和决定可行性的主要因素。
(3)对现有系统的分析:说明现有系统的处理流程和数据流程;工作负荷;各项费用支出;所需要各
类专业技术人员的数量;所需要各种设备;现有系统存在什么问题。
(4)所建议系统的技术可行性分析:所建议系统的简要说明;处理流程和数据流程;与现有的系统比
较的优越性;采用所建议系统对用户的影响;对各种设备、现有软件、开发环境、运行环境的影响;对
经费支出的影响;对技术可行性的评价。
(5)所建议系统的经济可行性分析:说明所建议系统的各种支出,各种效益;收益投资比;投资回收
周期。
(6)社会因素可行性分析:说明法律因素,对合同责任、侵犯专利权、侵犯版权等问题的分析;说明
用户使用可行性,是否满足用户行政管理、工作制度、人员素质的要求。
(7)其他可供选择方案:逐一说明其他可供选择的方案,并说明未被推荐的理由。
(8)结论意见:说明项目是否能开发;还需要什么条件才能开发;对项目目标有什么变动等。
3
6. 系统流程图的作用可以总结如下:
(1)制作系统流程图的过程是系统分析员全面了解系统业务处理概况的过程,它是系统分析员作进一
步分析的依据。
(2)系统流程图是系统分析员、管理人员、业务操作人员相互交流的工具。
(3)系统分析员可直接在系统流程图上拟出可以实现计算机处理的部分。
(4)可利用系统流程图来分析业务流程的合理性。
7. 数据流图是用来表示系统的功能的工具,它表示系统的逻辑模型描述了数据流在系统中流动的情
况,它是一种功能模型。它用来定义系统的功能。数据流图的作用主要有以下几条:
(1)系统分析员用这种工具可以自顶向下分析系统信息流程。
(2)可在图上画出需要计算机处理的部分。
(3)根据数据存储,进一步做数据分析,向数据库设计过渡。
(4)根据数据流向,定出存取方式。
(5)对应一个处理过程,用相应的语言、判定表等工具表达处理方法。
箭头表示数据流、圆圈表示加工、双横线表示存储、方框表示数据的原点和终点。
8. 数据字典是用来描述数据流图中数据流、加工、存储的详细信息的。数据字典最重要的用途是作
为分析阶段的工具。
在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信,因此将消除许多
可能的误解。对数据的这一系列严密一致的定义也有助于改进在不同的开发人员或不同的开发小组之间
的通信。如果要求所有开发人员都根据公共的数据字典描述数据和设计模块,则能避免许多麻烦的接口
问题。
9. 需求分析必须能够表达和理解问题的数据域和功能域;按自顶向下、逐层分解问题;要给出系统
的逻辑视图和物理视图。
五. 应用题
1.
2.
4
剩余16页未读,继续阅读
资源评论
vanchengrowe
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- keil2 + proteus + 8051.exe
- 1961ee27df03bd4595d28e24b00dde4e_744c805f7e4fb4d40fa3f695bfbab035_8(1).c
- mediapipe-0.9.0.1-cp37-cp37m-win-amd64.whl.zip
- windows注册表编辑工具
- mediapipe-0.9.0.1-cp37-cp37m-win-amd64.whl.zip
- 校园通行码预约管理系统20240522075502
- 车类型数据集6250张VOC+YOLO格式.zip
- The PyTorch implementation of STGCN.STGCN-main.zip
- 092300108.cpp
- 车类型数据集6000张VOC+YOLO格式.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功