结课总结

(1)几个概念

  • 软件危机
  • 生存模型
  • 需求分析
  • 结构化设计
  • 软件测试

软件危机阐述了软件工程诞生的原因。

软件生存期模型也称为软件过程模型,是从软件项目需求定义直接至运行维护为止,跨越整个生命周期的系统开发、运行和维护所实施的全部过程、活动和任务的结构框架。

典型的模型有瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型、统一过程、敏捷过程等。

需求分析和结构化设计在个人项目以及团队项目中都进行了实际应用。

软件测试印象最深的编码规范。老师在课上叫我们修改之前编写的代码,给同学展示。我们平时写代码几乎都不写注释,自己下次再看时候就都不知道哪是哪了。这和标准的代码规范差很多,规范编码要求注释内容比代码还要更多。另外关于覆盖率测试等,现在成熟的编译器都有自带的工具,特别方便。

(2)几种图

  • 用例图
  • 类图
  • 状态图
  • 数据流图

程序员和别人交流,向别人解释自己的代码,肯定不能是把源码给别人看。一方面有些代码可能不能公开,另一方面别人也很难理解。同样一个程序,每个人写出来程序可能会差别很大。图形是一种很通俗易懂的语言。所以我们要通过图来向别人解释我们的程序。

(3)几个工具

  • Visio
  • Qt

Visio是在介绍类图的时候提到的一个软件,微软的。所以用起来比较简单方便。类图、流程图画起来都很好用。

Qt是在做个人项目和结对项目中使用到的c++图形库。许多同学用java编写图形界面非常简单,但是对于c++来说,本身没有封装好的图形库。所以Qt就这么产生了,通过使用Qt,c++也可以像java那样很方便的编写图形界面的程序。通过项目的第一次使用,感觉非常方便。再图形学的上机实验中,我也选择了使用Qt实现。

喷泉模型:

喷泉模型与传统的结构化生存期比较,具有更多的增量和迭代性质,生存期的各个阶段可以相互重叠和多次反复,而且在项目的整个生存期中还可以嵌入子生存期。就像水喷上去又可以落下来,可以落在中间,也可以落在最底部。

模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。软件的某个部分常常被重复工作多次,相关对象在每次迭代中随之加入渐进的软件成分。无间隙指在各项活动之间无明显边界,如分析和设计活动之间没有明显的界限,由于对象概念的引入,表达分析、设计、实现等活动只用对象类和关系,从而可以较为容易地实现活动的迭代和无间隙,使其开发自然地包括复用。

优点:

喷泉模型不像瀑布模型那样,需要分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。

缺点:

由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。此外这种模型要求严格管理文档,使得审核的难度加大,尤其是面对可能随时加入各种信息、需求与资料的情况。

手边没有书,主要参考网络查询到的资料

http://baike.baidu.com/link?url=QydmP6SPEAomiDRribiDBhA9WXNNvf7bfWq30n3vzWoR7YoSowQqNbWvv3rnqPvlpggFVjEPHJbPiQ-GcgZ6wa

http://wenda.chinabaike.com/b/30543/2013/1208/713416.html

原文地址:https://www.cnblogs.com/13070016-vic/p/5601472.html