内容发布更新时间 : 2024/12/24 20:37:44星期一 下面是文章的全部内容请认真阅读。
软件工程作业与解答
第一章 软件工程概述
1.简述软件的发展过程。
答:计算机软件的发展经历了三个阶段:(1)程序设计阶段,约 50 至 60 年代;(2)程序系统阶段,约 60 至 70 年代;(3)软件工程阶段, 约 70 年代以后。各个时期软件开发的特点见课本第 7 页表 1.3。
2.简述软件的定义及特点。
答:软件是计算机系统中与硬件相互依存的另一部份,它是包括程序、 数据及其相关文档的完整集合。
特点见课本第 1 页至第 3 页。
3.简述软件的种类。
答:见课本第 3 页至第 6 页。
4.什么叫软件危机?
答:在软件发展的第二阶段,随着计算机硬件技术的进步,计算机的容
量、速度和可靠性有了明显的提高,生产硬件的成本降低了。计算机价 格的下跌为它的广泛应用创造了极好的条件。在这一形式下,要求软件 能与之相适应。然而软件技术的进步一直未能满足形式发展提出的要求。 在软件开发中遇到的问题找不到解决的办法,致使问题积累起来,形成 日益尖锐的矛盾。软件开发时期所面临的这种状态就是所谓的软件危机。
5.软件危机主要有哪几种表现?
答:见课本第 8 页(1)、(2)、(3)、(4)。
6.什么叫软件工程?
答:开发、运行、维护和修复软件的系统方法。
7.什么叫软件生存周期?
答:软件从孕育、诞生、成长、成熟到衰亡的过程叫软件生存周期。它
8.简单介绍软件开发的瀑布型模型和螺线型模型。
答:见课本第 11 页至第 14 页。
包括制定计划、需求分析、设计、程序编码、测试及运行维护。
第二章 系统分析
1.简述系统分析的目标 (1) (2) (3) (4) (5) (6)
识别用户要求; 评价系统的可行性;
进行经济分析和技术分析;
把功能分配给硬件、软件、人、数据库和其它系统元素; 建立成本和进度限制;
生成系统规格说明,形成所有后续工程的基础。
2.系统分析过程的第一步就是识别用户要求。要求的识别是系统开发的起点。为此,分析 员必须回答哪些问题,才能完成这一步骤? (1) (2) (3) (4) (5) (6) (7) (8)
所期望的功能和性能是什么 可靠性和质量问题是哪些 总的系统目标是什么 成本与进度限制如何 制造的需求是什么
市场与竞争情况怎样 有效的技术有哪些 将来可能有哪些扩充
3.软件项目的可行性研究主要集中在哪个方面?
(1)经济可行性。(2)技术可行性。(3)法律可行性。(4)抉择。
4.填空
在成本-效益分析中,有形的效益可以用(货币的时间价值、投资回收期、纯收入 )等指标进行度量。
第三章 软件需求分析课程作业
一、简述与问答
1.简述软件需求分析的任务。
需求分析所要做的工作是深入描述软件的功能和性能,确定软件设计 的限制和软件同其他系统元素的接口细节,定义软件的其他有效性需求。 分析员通过需求分析,逐步细化对软件的要求,描述软件要处理的数据域, 并给软件开发提供一种可转化为数据设计、结构设计和过程设计的数据与 功能表示。在软件完成后,制定的软件需求规格说明还要为评价软件质量 提供依据。
2.软件的需求分析就是解决所开发软件做什么,做到什么程度的问题。它包括诸多需求, 这些需求有那些?
功能需求、性能需求、环境需求、可靠性需求、安全保密要求、用户 界面需求、资源使用需求、软件成本消耗与开发进度需求、预先估计以后 系统可能达到的目标。
3.简述需求分析评审的主要内容。
a.系统定义的目标是否与用户的要求一致;b.系统需求分析阶段提供的 文档资料是否齐全;c.文档中的所有描述是否完整、清晰、准确反映用户要 求;d.与所有其他系统成分的重要接口是否都已经描述;e.所开发项目的数据 流与数据结构是否足够确定;f.所有图表是否清楚,在不补充说明时能否理 解;g.主要功能是否已包括在规定的软件范围之内,是否都已充分说明;h.设 计的约束条件或限制条件是否符合实际;i.开发的技术风险是什么;j.是否考虑 过软件需求的其他方案;k.是否考虑过将来可能会提出的软件需求;l.是否详 细制定了检验标准,它们能否对系统定义是否成功进行确认;m.有没有遗漏、 重复或不一致的地方;n.用户是否审查了初步的用户手册;o.软件开发计划中 的估算是否受到了影响。
4.软件需求分析的基本原则是什么?
(1)必须能够表达和理解问题的数据域和功能域。(2)必须按自顶向下、 逐层分解的方式对问题进行分解和不断细化。(3)要给出系统的逻辑视图和 物理视图。