软件工程复习资料-2016-3-25分析

2018-12-17 11:11

第一章 软件工程概述

1﹑软件产品的特性是什么? 产品特性:

⑴是一种逻辑产品,与物质产品有很大的区别。

⑵软件产品的生产主要是研制,生产成本主要在开发和研制,开发研制完成后,通过复制就产生了大量软件产品。

⑶软件产品不会用坏,不存在磨损,消耗。

⑷生产主要是脑力劳动,还末完全摆脱手工开发方式,大部分产品是\定做\的 ⑸开发软件的费用不断增加,致使生产成本相当昂贵。 2﹑软件生产有几个阶段?各有何特征?

⑴程序设计时代:这个阶段生产方式是个体劳动,使用的生产工具是机器语言,汇编语言。

⑵程序系统时代:这个阶段生产方式是小集团合作生产,使用的生产工具是高级语言,开发方法仍依靠个人技巧,但开始提出结构化方法。

⑶软件工程时代:这个阶段生产方式是工程化的生产,使用数据库﹑开发工具﹑开发环境﹑网络﹑分布式﹑面向对象技术来开发软件。 3﹑什么是软件危机?主要表现在哪些方面? 软件开发技术的进步未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。 表现方面:

(1) 用户对开发出的软件很难满意。 (2) 软件产品的质量往往靠不住。 (3) 一般软件很难维护。 (4) 软件生产效率很低。

(5) 软件开发成本越来越大。 (6) 软件成本与开发进度难以估计。

(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 4﹑什么是软件工程?它目标和内容是什么?

软件工程:就是用科学的知识工程和技术原理来定义,开发,维护软件的一门学科。

软件工程的目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于

移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。

软件工程的内容:研究内容包括开发技术和开发管理两个方面。开发技术主要研究:软件开

发方法,开发过程,开发工具和环境。开发管理主要研究:软件管理学,软件经济学,软件心理学。

5﹑软件工程面临的问题是什么?

软件工程需要解决的问题:软件的费用,可靠性,可维护性,软件生产率和软件的重用。 6﹑什么是软件生存周期?它有哪几个活动?

软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。

包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。 7﹑什么是软件生存周期模型?有哪些主要模型?

生存周期模型:描述软件开发过程中各种活动如何执行的模型。对软件开发提供强有力的支持,为开发过程中的活动提供统一的政策保证,为参与开发的人员提供帮助和指导,是软件生存周期模型化技术的基础,也是建立软件开发环境的核心。

- 1 -

主要有:瀑布模型,增量模型,螺旋模型,喷泉模型,基于知识的模型,变换模型。 8﹑什么是软件开发方法?有哪些主要方法?

使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。通过使用成功的软件开发方法,在规定的投资和时间内,开发出符合用户需求的高质量的软件。软件开发方法是克服软件危机的重要方面之一,对软件工程及软件包产业的发展起了不可估量的作用。 主要有:结构化方法,JACKSON方法,维也纳开发方法﹙VDM﹚,面向对象开发方法。 9、软件工程方法学包含3个要素分别是什么? 分别是:方法、工具和过程。

? 方法是完成软件开发的各项任务的技术方法,回答“怎样做”的问题; ? 工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;

? 过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项

任务的工作步骤。

10、什么是软件过程?

为了获得高质量软件所需要完成的一系列任务的框架,规定了完成各项任务的工作步骤。在完成开发任务时必须进行一些开发活动,并且使用适当的资源,在过程结束时将把输入转化为输出。

11、瀑布模型的特点及优点? 特点:

? (1)各个阶段的顺序性和依赖性;

? (2)划分逻辑设计与物理设计,尽可能推迟程序的物理实现;

? (3)每个阶段必须完成规定的文档,对其中问题通过复审及早发现,及早解决。 优点:

? 可强迫开发人员采用规范的方法(例如,结构化技术); ? 严格地规定了每个阶段必须提交的文档;

? 要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 12、螺旋模型的优点?

? 对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软

件开发的一个重要目标;

? 减少了过多测试(浪费资金)或测试不足(产品故障多)所带来的风险;

? 在螺旋模型中维护只是模型的另一个周期,在维护和开发之间并没有本质区别。

螺旋模型主要适用于内部开发的大规模软件项目。项目越大,风险也越大,因此,进行风险分析的必要性也越大。此外,只有内部开发的项目,才能在风险过大时方便地中止项目。

13、快速原型的分类、特点及使用策略? 分类:探索型、实验型、进化型 特点:尽快向用户提供一个可在计算机上运行的目标系统的模型,以便使用户和开发者在

目标系统应该“做什么”这个问题上尽可能快地达成共识。 ? 快速原型应该具备的第一个特点是“快速”;

? 快速原型应该具备的第二个特点是“容易修改”。原型的“修改—试用—反馈”过程可

能重复多遍。

使用策略:废弃策略和追加策略。 14、软件工程的目标?

付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的

- 2 -

维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。 15、软件开发技术主要研究内容?

软件开发方法,开发过程,开发工具和环境。 16、软件开发管理主要研究内容?

软件管理学,软件经济学,软件心理学。 17、快速原型开发的步骤?

快速开发、需求、构造原形、原形、运行原形、评价原形、修改意见。

18、某计算机系统投入使用后、 5年内每年可节省人民币 2O0O元,假设系统的投资额为5000元,年利率为 12%。试计算投资回收期和纯收入。

第二章 可行性研究

1、可行性研究的任务是什么? 可行研究的任务:首先需要进行概要的分析研究,初步确定项目的规模,目标,约束和限制。分析员再进行简要的需求分析,抽象出项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的解决方法,对每种解决方法都要研究它的可行性。 主要从四个方面考虑:

⑴.技术可行性:一般要考虑的情况包括 开发的风险即设计出的系统能否达到要求的功能和性能;资源的有效性;相关技术的发展是否支持;

⑵.经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资。

⑶.法律可行性:要开发的项目是否存在任何侵权问题。

(4).管理可行性:运行方式在用户组织内是否可行,现有管理制度﹑人员素质﹑操作方式是否可行。

2、可行性研究有哪些步骤? ⑴.确定项目规模和目标;

⑵.研究正在运行的系统;收集﹑研究﹑分析现有系统的文档资料,实地考察系统访问有关人员,然后描绘现有系统的高层系统流程图。

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

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

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

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

1. 复查系统规模和目标 2. 研究目前正在使用的系统

- 3 -

3. 导出新系统的高层逻辑模型 4. 进一步定义问题

5. 导出和评价供选择的解法 6. 推荐行动方针 7. 草拟开发计划 8. 书写文档提交审查

4、什么是数据流图?其作用是什么? 数据流图(DFD):以图形的方式描述数据在系统中流动和处理的逻辑过程。只反映系统必须完成的逻辑功能,是一种功能模型。

5、什么是数据字典?其作用是什么?共有哪些条目?

数据字典(DD)用来定义数据库流图中的各个成分的具体含义。有以下四类条目:数据流,数据项,数据存储,基本加工。

6、成本--效益分析可用哪些指标进行度量?

⑴.投资回收率:通常把建立系统若干年后能取得的收益折算成现在的价值和开发系统所需的费用进行比较得出投资回收率。

⑵.投资回收期:就是使累计的经济效益等于最初的投资费用所需的时间。 ⑶.纯收入:整个生存周期之内的累计经济效益(折成现在值)与投资之差。 7、某图书管理系统有以下功能: ⑴借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对于第一次借书的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10,拒借,末达10本,办理借书(检查库存,修改库存目录并将读者借书情况录入借书文件。)

⑵还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)作罚款处理。否则,修改库存目录与借书文件。

⑶查询:通过借书文件,库存目录文件查询读者情况﹑图书借阅及库存情况,打印统计表。 解:

- 4 -

- 5 -


软件工程复习资料-2016-3-25分析.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六年级下册品德1---6课

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: