软件工程--概述

一、软件的概念:

计算机系统中与硬件相互依存的另一部分(1程序、2数据、3文档)

1.程序:事先设计的功能

2.数据:使程序能正常操纵信息的数据结构(组成程序的东西)

3.文档:维护和使用有关的图文材料

(1)特点:

1.具有抽象性(是逻辑实体,不是物理实体)

2.没有制造过程(生产与硬件不同)

3.没有机械磨损(运行阶段)

4.对计算机有不同程度依赖性(受系统限制)

5.没有摆脱手工开发方式

6.本身复杂(一、实际问题 二、逻辑结构)

7.成本昂贵

8.社会因素(涉及到知识产权)

(2)发展阶段:

1.程序设计阶段:一个人编个体化,受硬件的限制,没有文档统一化规范,提倡提高技巧性让编写的程序难以阅读,没有软件的概念

2.程序系统阶段:作坊式开发,相互之间有简单的说明

3.软件工程阶段:解决上一个阶段出现的,用科学管理的方法组织软件的开发,设计、维护等一系列的操作。

主要用解决软件危机

(3)生存期:

被新的软件替代了,它就衰亡了,软件有孕育、诞生、成长、成熟几个阶段

 

二、软件工程

(1)六个阶段

(1)制定计划:总目标、需求、可行性研究、人力、成本、开发进度

(2)需求分析:需求分析时编写用户手册

(3)软件设计

(4)软件程序编写

(5)软件测试:单元测试、组装测试

(6)运行和维护

(2)六个目标:

开发成本低-达到要求-性能好-易于移植-较低的维护费用-按时交付。

(3)软件工程过程:

1.规格说明(采对用户的需求)、2.开发(设计和调试)、3.确认(用户使用)、4.维护

(4)特点:

理解性、可见性、支持性、接受性、可靠性、健壮性、可维护性、速度

 

三、软件过程模型

(1)瀑布模型

特点:相互依赖性比较强,每个阶段严格都要经过评审

优点:简单易用,在消除非结构化降低软件的复杂性。刘水依赖,分工协作

缺点:缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题,与用户见面晚。

适用范围:使用与系统柜要求明确的系统、各种应用软件的开发均可使用

b 模型

维护的经费比较多,开发和维护分开来做的。

(2)快速原型模型:

突出优点:快速、开发人员和用户都共同参与

缺点:所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。

使用范围:使用与那些知识型软件系统的开发

(3)演化模型:

(4)螺旋模型:

优点:适应于内部的大规模软件开发:

螺旋模型强调风险分析,许多客户都无法接受和相信这种分析因此。

(5)喷泉模型:

突出优点:迭代、各阶段间没有明显的界限,

系统开发生命周期:

①计划阶段-②分析阶段-③设计阶段-④实现阶段-⑤支持阶段。

猜你喜欢

转载自blog.csdn.net/weixin_39332529/article/details/82584774