软件工程作业一(2部分)

二、

1、解释一个软件生命周期的概念并提供一个例子,解释它的各个阶段,包括生产交付(不仅限于瀑布模型生命周期)

软件生命周期:

  软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。

生命周期的每一个周期都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。按照软件的生命周期,软件的开发不再只单单强调“编码”,而是概括了软件开发的全过程。软件工程要求每一周期工作的开始只能必须是建立在前一个周期结果“正确”前提上的延续;因此,每一周期都是按“活动-结果-审核-再活动-直至结果正确”循环往复进展的。

迭代模型生命周期的各阶段:

在大多数传统的生命周期中,阶段是以其中的主要活动命名的:需求分析、设计、编码、测试。传统的软件开发工作大部分强调过程的串行执行,也就是一个活动需要在前一个活动完成后才开始,从而形成一个过裎串,该过程串就组成了软件项目的生命周期。在迭代模型中,每个阶段都执行一次传统的、完整的串行过程串,执行一次过程串就是一次迭代。每次迭代涉及的过程都包括不同比例的所有活动。 

需求分析阶段:在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,也是在整个软件开发过程中不断变化和深入的阶段,能够为整个软件开发项目的成功打下良好的基础。

软件设计阶段(概要设计和详细设计):主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件编码阶段:是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。

软件测试阶段:在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。

软件运行和维护阶段:是软件生命周期中持续时间最长的阶段,包括纠错性维护和改进性维护两个方面

扫描二维码关注公众号,回复: 7362291 查看本文章

生产交付阶段:交付阶段的目的是将软件产品交付给用户群俸。当本次开发的产品成熟得足够发布到最终用户时,就进入了交付阶段。 
交付阶段的重点是确保软件对最终用户是可用的。交付阶段可以跨越几次迭代,包括为发布做准备的产品测试,基于用户反馈的少量的调整。 
软件产品交付给用户使用一段时间后,如有新的需求则该开始另一个开发周期,就开始下一个的“初始、细化、构建和交付”周期。 

2、软件灾难从头到尾排序

二十大软件灾难

1.  水手号(Mariner)的致命BUG (1962)
2.  哈特福德体育场倒塌事件 (1978) 
3.  中情局给苏联送天然气 (1982)
4.  几乎引发第三次世界大战 (1983)
5.  医疗器械致死案 (1985)
6.  华尔街崩溃 (1987) 
7.  AT&T电话断网 (1990)
8.  爱国者辜负了战士 (1991)
9.  奔腾的长除法缺陷 (1993)
10. 阿丽亚娜火箭爆炸 (1996)
11. 天网带来了世界末日 (1997)
12. 火星气候探测器坠毁 (1998)
13. 灾难研究 (1999)
14. 英国护照不知所踪 (1999)
15. 千年之殇Y2K (1999)
16. 炸弹(Dot-Bomb)崩溃 (2000)
17. 爱虫病毒 (2000)
18. 为癌症治疗而死 (2000)
19. EDS放弃了对对儿童的支持 (2004)
20. FBI的三部曲终结 (2005)

猜你喜欢

转载自www.cnblogs.com/chony/p/11587917.html
今日推荐