《软件工程引论》PPT课件

《软件工程引论》PPT课件

ID:39157927

大小:535.50 KB

页数:42页

时间:2019-06-26

《软件工程引论》PPT课件_第1页
《软件工程引论》PPT课件_第2页
《软件工程引论》PPT课件_第3页
《软件工程引论》PPT课件_第4页
《软件工程引论》PPT课件_第5页
资源描述:

《《软件工程引论》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第1章软件工程引论1.1软件产品的概念与特征1.2软件危机1.3软件工程的产生及其发展1.1软件产品的概念与特征1.1.1软件产品的概念与分类就本质而言,软件就是一个信息转换器,它的功能不外是产生、管理、获取、修改、显示或转换信息。它担任着双重角色,首先,它是一种产品,表达了由计算机硬件体现的计算潜能;其次,它又是开发和运行产品的载体,是计算机控制(操作系统)、信息通信(网络)的基础,也是创建和控制其他软件(软件工具和开发环境)的基础。对于软件的一种公认的解释是:软件是计算机系统中与硬件相互依存的另一部分,

2、它是包括程序、数据及其相关文档的完整集合。其中,程序是为实现设计的功能和性能要求而编写的指令序列;数据是使指令能够正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文资料。根据用途划分,软件可以大致划分成如下类别:(1)系统软件:就一般情况来说,系统软件是为其他软件服务的软件。系统软件与计算机硬件交互频繁,处理大量的确定或不确定的复杂数据,往往需要具有多用户支持、资源精细调度、并发操作管理、多种外部设备接口支持等项功能。(2)实时软件:管理、分析、控制现实世界中所发生的事件的软件称为实时软件。它一

3、般有数据采集、数据分析、输出控制等三方面的功能。实时软件需要保持一个现实任务可以接受的响应时间,即必须保证能够在严格限定的时间范围内对输入做出响应。(3)商业管理软件:商业信息处理是最大的软件应用领域,包括常规的数据处理软件和一些交互式的计算处理(如POS软件)软件。它的基本功能是将已有的数据重新构造,变换成一种可以辅助商业操作和管理决策的形式。在这个过程中,几乎都要涉及到对于大型数据库的访问。各类管理信息系统(MIS)、企业资源计划(ERP)、客户关系管理(CRM)等都是典型的商业管理软件。(4)工程与科

4、学计算软件:此类软件的特征是要实现特定的“数值分析”算法。例如离散傅立叶变换、有限元分析、演化计算等等。CAD/CAM软件一般也可以归属到这一类型中来。(5)嵌入式软件:驻留在专用智能产品的内存中,用于控制这些产品进行正常工作,完成很有限、很专业的功能的软件。例如各类智能检测仪表、数码相机、移动电话、微波炉等智能产品都必须在嵌入式软件的支持下才能正常工作。(6)人工智能软件:利用非数值算法去解决复杂问题的软件。各类专家系统、模式识别软件、人工神经网络软件都属于人工智能软件。(7)个人计算机软件:文字处理系统

5、、电子表格、游戏娱乐软件等等。此外,还可以根据软件的规模(代码行及开发工作量,如表1.1)、软件的工作方式、使用频度、失效后造成的影响等对软件产品进行分类。表1.1根据规模进行软件分类软件规模类别参加人员数开发期限产品规模(源代码行数)微型11~4周0.5k小型11~6月1~2k中型2~51~2年5~50k大型5~202~3年50~100k甚大型100~10004~5年1M极大型2000~50005~10年1~10M1.1.2软件产品的特征在制造硬件时,人的创造性的劳动过程(分析、设计、建造、测试)能够完全

6、转换成物理的形式,但软件是逻辑的而不是物理的产品,因此软件具有和硬件完全不同的特征:(1)软件是一种逻辑实体,具有抽象性。我们可以把软件保存在媒体介质上,但却无法直接看到软件的形态,因而必须通过运行、观察、分析、思考、判断才能够了解软件的功能、性能及其他特性。换句话说,软件产品具有明显的非可视特征。(2)软件的生产与硬件不同。软件是由开发或工程化而形成的,不是由传统意义上的制造过程生产的。虽然软件开发和硬件制造之间有一些相似之处,可是两者在本质上是不同的。这两者都能够通过良好的设计获得高质量的产品,但即使有

7、了良好的设计和优秀的样品,硬件在批量制造过程中仍然可能引入质量问题,这种情况对于软件而言几乎不存在。软件在开发完毕,形成为产品之后,其批量制造过程只是简单的拷贝/复制;软件的开发和硬件的制造都依赖于人,但参与者和他们完成的工作之间的关系不同;两者的终极目的都是建造产品,但方法不同;软件的成本集中在开发过程上,而硬件生产的成本更多地表现在原材料消耗上。因此,软件项目开发过程不能完全像硬件制造过程那样来管理。(3)软件产品不会“磨损”。和硬件产品类似,软件产品也会出现故障。所不同的是,硬件产品的故障多来自外在条

8、件导致的“磨损”或“老化”,而软件产品如果发生故障,无一例外的是在设计开发过程中留有隐患。因此,硬件的故障可以通过简单的更换部件解决,而软件的故障必须通过全面的软件维护活动才有望克服。同时,不完善的维护活动又可能在软件中注入新的故障,导致软件质量的“退化”。也就是说,软件故障的修复要比硬件故障的修复复杂得多。因此,衡量软件产品质量的一个重要指标就是它的“可维护性”。图1.1是软、硬件产品的失效率曲线。图1.1软件

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。