作业1 讨论+个人简历制作

一、个人简历

 

 

 代码链接:https://github.com/fayanddream/resume.git

二、讨论

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

答:

软件生命周期是软件的产生直到报废或停止使用的生命周期。软件生命周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。

增量模型是遵循递增方式来进行软件开发的。软件产品被作为一组增量的构件,每次需求分析、设计、实现、集成、测试和交付一块构件,直到所有构件全部实现。

以一个商务网站为例进行分析:

需求分析:首先需要对企业的需求进行调查,明确电子商务网站需要做什么,做到什么程度,并通过查阅资料,实地观察等方法,将网站的需求归纳为功能需求和性能需求。功能需求:店家发布产品信息,整理网上商品,管理订单等;消费者选购、在线支付,通过物流最后达成交易。性能需求:系统运行要稳定,具有较强的适应性,可移植性。

设计:系统设计阶段就是根据系统说明书的要求,设计新系统的物理模型,主要完成系统划分和数据库设计的工作。本项目中,可以划分为登陆账户模块、浏览商品模块、购物车模块、订单管理模块、后台管理模块。数据库的设计可以建立4个基本表:产品信息表、用户表、订单表、管理员表。

实现:从实现开始,增量模型开始区别于瀑布模型。在具体的开发中,依据系统设计阶段的划分情况,完成核心模块的页面代码。

集成: 在完成了对一个增量构件的开发之后,需要将该构件集成到系统中去。

测试:当把新构件集成到现有构件中时,所形成的产品即已经发生了改变的系统重新进行有效性验证。

增量交付:按照增量构件的功能安排开发的优先顺序,逐个实现和交付使用。不仅有利于用户尽早用上系统,能够更好地适应新的软件环境。

2.查阅软件灾难相关资料,给软件灾难从头到尾排序。

答:软件灾难的严重性可以概括为以下四种级别:

(1)微小的(Minor):一些小问题如有个别错别字、文字排版不整齐等,对功能几乎没有影响,软件产品仍可使用。

(2)一般的(Major):不太严重的错误,如次要功能模块丧失、提示信息不够准确、用户界面差和操作时间长等。

(3)严重的(Critical):严重错误,指功能模块或特性没有实现,主要功能部分丧失,次要功能全部丧失,或致命的错误声明。

(4)致命的(Fatal):致命的错误,造成系统崩溃、死机,或造成数据丢失、主要功能完全丧失等。

软件灾难的例子:

1962年,水手号火箭的致命bug。1962年,携带空间探测器的水手1号火箭前往金星。起飞后偏离预定航线,任务控制在起飞293s后摧毁火箭,原因是程序员把一条手写的公式抄为错误的计算机代码。

1987年,哈特福德体育馆倒塌,原因是分析受力的程序错误的假设钢结构屋顶的支撑仅承受纯压力,一个支撑倒塌后,导致连锁反应。

1983年,苏联导弹预警系统错误的报告遭到美国发射的5枚导弹攻击,几乎引发第三次世界大战。

2003年数天内美国“爱国者”导弹接连出现问题,引发人们对该系统瞄准软件存在问题的关注。

2003年发生在美国及加拿大大部分地区史上最大停电事故是由电力监测与控制管理系统出错导致。

2009年暴风影音“召回”全部软件,引发六省断网事故。南方六省断网事件中,DNSpod服务器遭到黑客攻击,导致暴风影音海量用户服务请求无法解析,造成连锁反应。

2010年丰田汽车表示,用于对黑匣子进行读取的阅读器存在一个软件方面的故障,可能导致数据记录模块出现记录错误,误导了事故发生时司机对于车速的判断。

posted @ 2019-10-06 19:59  fayooo  阅读(163)  评论(0编辑  收藏  举报