聊城大学823软件工程考研

本文探讨了文档在软件工程中的关键作用,软件危机的起因,调试的目的与技术,瀑布模型的优缺点,以及螺旋模型的适用场景。还分析了软件发展各阶段的特征和应对策略,强调了风险管理和用户参与的重要性。
摘要由CSDN通过智能技术生成

1.简述文档在软件工程中的作用。

(1)提高软件开发过程的能见度;

(2)提高开发效率;

(3)作为开发人员阶段工作成果和结束标志;

(4)记录开发过程的有关信息便于使用与维护;

(5)提供软件运行、维护和培训有关资料;

(6)便于用户了解软件功能、性能。

2.什么是软件危机?产生原因是什么?

软件开发技术的进步未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,问题积累起来,形态尖锐的矛盾,导致了软件危机。

产生原因:

⑴ 软件规模越来越大,结构越来越复杂。

⑵ 软件开发管理困难而复杂。

⑶ 软件包开发费用不断增加。

⑷ 软件开发技术落后。

⑸ 生产方式落后,仍采用手工方式。

⑹ 开发工具落后,生产率提高缓慢。

3.调试的目的是什么?调试有哪些技术手段?

调试则是在进行了成功的测试之后才开始的工作。调试的目的是确定错误的原因和位置,并改正错误,因此调试也称为纠错(Debug)。调试的技术手段有简单的调试方法、归纳法、演绎法和回溯法等。

4.瀑布模型都有哪些优缺点?

瀑布模型有以下优点:

1)为项目提供了按阶段划分的检查点。

2)当前一阶段完成后,您只需要去关注后续阶段。

3)可在迭代模型中应用瀑布模型。

5.什么是软件危机?分析其产生的原因与摆脱危机的方法,你认为现在已经摆脱软件危机了吗?请说明理由。

软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。主要是 两个问题:(1)如何开发软件,怎样满足对软件的日益增长的需求;(2如何维护数量不断膨胀的已有软件;

软件危机的出现,究其原因,一方面是由软件本身的特点引起的,如软件越来越复杂,软件故障难于检测,工作量难以估计;另一方面则是因为软件开发和维护方法不当所造成的,如软件的个体化特征太强等。

为了摆脱软件危机所造成的困境,提出软件工程的概念,其主要思路是:要把人类长期以来从事各种工程项目所积累起来的行之有效的原理,概念,技术和方法,特别是人类从事计算机硬件研究和开发的经验教训,应用到软件的开发和维护中来。

我认为我国现在还未完全摆脱软件危机,因为随着经济发展,各行各业对软件人才的需求不断扩大,由于我国的软件人才缺口依旧很大,造成了某些行业内软件开发进度难以预测,软件开发成本难以控制,用户对产品功能难以满足,软件产品质量无法保证,软件产品难以维护,软件缺少适当的文档资料。

6.软件产品的特性是什么?

软件是一种逻辑产品,具有无形性;软件产品的生产主要是研制;软件不存在磨损和老化问题,但存在退化问题;软件产品的生产主要是脑力劳动;软件产品生产成本昂贵,目前生产方式还未摆脱手工生产方式;软件具有“复杂性”,其开发和运行常受到计算机系统的限制。

7.软件发展有几个阶段?各有何特征?

①程序设计阶段

  硬件特征:价格贵、存储容量小、运行可靠性差。

  软件特征:只有程序、程序设计概念,不重视程序设计方法。

②程序系统阶段。

  硬件特征:速度、容量及工作可靠性有明显提高,价格降低,销售有爆炸性增长。

  软件特征:程序员数量猛增,开发人员素质低。

③软件工程阶段。

  硬件特征:向超高速、大容量、微型化及网络化方向发展。

  软件特征:开发技术有很大进步,但未获得突破性进展,软件价格不断上升,未完全摆脱软件危机。

8.瀑布模型相关概念。

瀑布模型的基本概念以及特点。瀑布模型的缺陷有哪些?

瀑布模型规定了各项软件工程活动,包括需求分析、规格说明、设计、编码、测试和维护,并规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级而下。

瀑布模型的特点是:阶段间具有顺序性和依赖性;清楚区分逻辑设计和物理设计,尽可能推迟程序的物理实现;每个阶段都必须完成规定的文档,且每阶段结束前需要对完成的文档进行评审。

缺陷:(1)完全地、精确地刻画复杂应用问题的用户需求是不可能的。(2)需求分析和软件实现是不可分割的。(3)用户和开发人员都难于理解形式的、不可执行的需求规格说明。(4)传统的开发策略没有为用户参与关键的开发决策提供便利。(5)目标软件的适应能力不强(6)瀑布模型并不适合于软件项目管理

9.螺旋模型相关概念。

(1)简述螺旋模型的基本开发过程。螺旋模型哪些优点?

螺旋模型的基本思想是使用原型及其他方法来尽量降低风险。可以理解为在快速原型模型的每个阶段之前都增加了风险分析。聊城大学软工:【七七久三七零伍叭叭】

基本开发过程:(1)需求定义。利用前面介绍的需求分析技术理解应用领域,获取初步的用户需求,制定项目开发计划。(2)风险分析。根据初始需求或改进意见评审可选用的方案,给出消除或减少风险的途径。 (3)工程实现。利用前一节介绍的快速原型构造方法针对已知的用户需求生成快速原型。(4)评审。将原型提交用户使用并征询用户改进意见。上述过程将不断迭代,直至给出用户满意的目标软件产品。

优点:(1)螺旋模型支持用户需求的动态变化。(2)螺旋模型中,需求分析和软件实现是互相依赖、紧密联系的软件开发活动。(3)原型作为形式的可执行的需求规格说明,既易于为用户和开发人员共同理解,又可作为后续开发的基础。(4)为用户参与软件开发的所有关键决策提供了方便。(5)有助于提高目标软件的适应能力(6)为项目管理人员及时调整管理决策提供了便利,从而降低了软件开发风险。

10.为何螺旋模型主要适合开发人员和用户为同一个组织机构成员的软件项目的开发?

因为如果开发人员和用户属于不同的组织机构,则一般在正式的软件开发之前均需要签订合同,所有的风险分析均必须在签订合同之前完成。但螺旋模型需要在软件开发的每一个阶段都进行风险分析,当重要风险不能解决时,项目应该终止。由此螺旋模型可能因为风险使得合同在完成之前就终止,从而导致法律诉讼。故螺旋模型不适合开发人员和用户属于不同组织机构的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值