《软件工程介绍.ppt》由会员分享,可在线阅读,更多相关《软件工程介绍.ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章 软件工程介绍王美红软 件 工 程主要内容什么是软件工程软件角色的演化软件与硬件的差异软件危机与软件工程遗留软件软件神话软 件 工 程1.1 什么是软件工程?传统工程的概念工程为由一群人为达到某种目的,在一个较长时间周期内进行协作活动的过程。软件工程:包含过程、一系列方法、一堆工具软 件 工 程1.1 什么是软件工程?IEEE对软件工程的定义:(1)将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件。(2)在(1)中所述方法的研究。软 件 工 程1.2 软件角色的演化计算机软件的地位在50多年的时间中发生了很大的变化:1.20世纪70,80年代“新的工
2、业革命”“信息和知识(由计算机控制)将成为21世纪能源的焦点”2.20世纪90年代,“反虚拟生活”“未来不是计算”被刻意妖魔化3.20世纪90年代末,随着网络的意义逐步体现,千年虫等问题,计算机软件职业“复兴”4.现代庞大的软件产业已经成为工业经济中的主导因素软 件 工 程1.3 软件与硬件的差异特征软件是开发的,而不是传统意义上生产制造的(成本)软件的非通用性软件不会磨损 软 件 工 程 初期失效磨损失效率时间图1-1 硬件失效曲线图失效率时间理想曲线变更实际曲线图1-2 软件失效曲线图软 件 工 程1.4 软件危机与软件工程软件工程的提出:软件工程主要是针对20世纪60年代的软件危机而提出
3、的软件危机定义:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题软 件 工 程软件危机表现软件危机的典型表现:1.成本和进度估计常不准确2.用户的满意度常不高3.质量往往靠不住4.软件通常很难维护5.文档资料不完整、不合格6.软件的成本高,所占比例逐年上升7.软件开发生产率提高的速度慢软 件 工 程软件危机原因产生软件危机的原因:客观原因软件缺乏“可见性”,管理和控制其开发过程相对困难软件大多规模庞大,而复杂性随规模以指数速度上升软 件 工 程软件危机原因主观原因错误的认识和做法忽视软件需求分析的重要性急于求成,仓促上阵认为软件开发就是写程序编程只占全部工作量的10%-20%,
4、软件配置主要包括程序、文档和数据轻视软件维护维护费用占总费用的55%-70%软 件 工 程软件危机消除消除软件危机的途径:1.应该树立对计算机软件的正确认识软件是程序、数据及文档的完整集合。2.认识到软件开发不是某种个体劳动的神秘技巧是一种组织良好、管理严密、各类人员协调配合、共同完成的工程项目。要充分吸收和借鉴经验3.推广使用在实践中总结开发出来的开发软件的成功的技术和方法。4.应用和开发更好的软件工具。软 件 工 程1.5 遗留软件有些软件年代比较久,甚至过于久远了。具有生命周期长以及业务关键性的特点随着时间的推移,遗留软件基于下述原因演化:软件需求修改其适应性;软件必须根据新的业务需求进
5、行升级;软件必须扩展以具有与更多现代化系统和数据库的协作能力;软件架构必须进行改进以适应多样化的网络环境软 件 工 程1.5 遗留软件(续)软件演化规律:持续变化规律复杂性增长规律自我调控规律组织稳定性守恒规律保证通晓性规律持续增长规律质量衰减规律反馈系统规律软 件 工 程1.6 软件神话管理神话:我们已经有了一本写满软件开发标准和规程的宝典。它无所不包,囊括了我们可能问到的所有问题如果我们未能按时完成计划,我们可以通过增加程序员人数而赶上进度如果将一个软件外包给另一家公司,则我们可以完全放手不管。软 件 工 程1.6 软件神话(续)用户神话有了对项目目标的大概了解,便足以开始编写程序,我们可以在之后的项目开发过程中逐步了解细节。虽然项目需求不断变更,但是因为软件是弹性的,因此可以很容易地适应变化软 件 工 程1.6 软件神话(续)从业者神话:当我们完成程序并将其交付使用之后,我们的任务就完成了。直到程序开始运行,才能评估其质量对于一个成功的软件项目,可执行程序是惟一可交付的成果。软件工程将导致我们产生大量无用文档,并因此降低工作效率。软 件 工 程作业P121.1 1.10上交方式:电子版