您的位置:首页 > 其它

【寒江雪】软件工程基本概念

2016-11-21 22:13 274 查看

软件危机的表现

项目运行超出预算

项目运行超过时间

软件质量低落

软件通常不符合需求

项目无法管理,且代码难以维护

软件工程

软件工程的提出

为解决软件危机,在1968年,1969年连续召开两次注明的NATO会议,并同时提出软件工程的概念

软件工程的目的

在规定时间,规定的费用内开发出满足用户需求的高质量的软件系统。

高质量指错误率低,好用,易用,可移植,已维护等

软件与硬件不同的特点

表现形式不同

生产方式不同

产品要求不同

维护方式不同

软件的固有复杂性

很难精确把握用户的需求,开发过程中用户需求总是不断变化,用户理解的软件与真实研发的实际情况不同。

很难发现大型应用项目汇总隐蔽的复杂性

人类本身处理复杂现象的能力优先。很难预估最终输出的执行效果及其是否能满足用户的期望

难以预测软件开发过程中可能遇到的问题

  软件的复杂性是固有的,即不能采用某种方法彻底消除软件的复杂性,因此软件危机只能是通过控制复杂性的方法解决

控制软件复杂性的基本方法

分解

对复杂系统采用“各个击破”的策略

抽象

抽取系统中的基本特性而忽略非基本的部分

模块化

高内聚,低耦合

高内聚指的是在一个模块中赢尽量多地汇集逻辑上相关的计算资源;

低耦合指的是模块之间的相互作用应尽量少

信息隐蔽

封装

模块内部的实现细节与外界隔离

面向对象技术

  面向对象技术充分体现了分解,抽象,模块化,信息隐蔽等思想,可以有效地提高软件生产率,缩短软件开发时间,提高软件质量,是控制软件复杂性的有效途径。

基本思想

对问题进行自然分割,以更接近人类思维的方式建立问题域模型,从而使
4000
设计出来的软件尽可能直接地描述现实世界,具有更好的可维护性,能适应用户需求的变化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: