- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《软件工程》课件 第1章软件工程学概述
第1章 软件工程学概述 1.1 软件危机 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 软件危机包含下述两方面的问题: 如何开发软件; 如何维护软件。 案例 1963年美国飞往火星的火箭爆炸,造成1000万美元的损失。原因是FORTRAN程序: DO 5 I=1,3 误写为:DO 5 I=1 . 3 1966年,IBM公司组织开发的 OS/360,共约100万条指令,花费了5000个人年;经费达数亿美圆,而结果却令人沮丧,错误多达2000个以上,系统根本无法正常运行。 OS/360系统的负责人Brooks这样描述开发过程的困难和混乱:“…像巨兽在泥潭中作垂死挣扎,挣扎得越猛,泥浆就沾得越多,最后没有一个野兽能够逃脱淹没在泥潭中的命运。…” 1967年苏联“联盟一号”载人宇宙飞船在返航时,由于软件忽略一个小数点,导至在进入大气层时因打不开降落伞而烧毁。 1.1.1软件危机的介绍 软件危机的表现: 对软件开发成本和进度的估计常常很不准确。 用户对“已完成的”软件系统不满意的现象经常发生。 软件产品的质量往往靠不住。 软件常常是不可维护的。 软件通常没有适当的文档资料。 软件成本在计算机系统总成本中所占的比例逐年上升。 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 1.1.2产生软件危机的原因 主要有两个原因: 一方面与软件本身的特点有关 另一方面也和软件开发与维护的方法不正确有关。 1.1.3消除软件危机的途径 首先应该对计算机软件有一个正确的认识。 应该推广使用在实践中总结出来的开发软件的成功的技术和方法。 研究探索更好更有效的技术和方法。 应该开发和使用更好的软件工具。 软件工程正是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门新兴学科。 1.2 软件工程 1.2.1软件工程的介绍 两个定义: 早期定义:“软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。” 更全面更具体的定义:“软件工程是: ①把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件; ②研究①中提到的途径。” 软件工程的本质特征 1. 软件工程关注于大型程序的构造 2. 软件工程的中心课题是控制复杂性 3. 软件经常变化 4. 开发软件的效率非常重要 5. 和谐地合作是开发软件的关键 6. 软件必须有效地支持它的用户 7. 在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品 1.2.2软件工程的基本原理 1. 用分阶段的生命周期计划严格管理 2. 坚持进行阶段评审 3. 实行严格的产品控制 4. 采用现代程序设计技术 5. 结果应能清楚地审查 6. 开发小组的人员应该少而精 7. 承认不断改进软件工程实践的必要性 1.2.3软件工程方法学 软件工程技术包括:技术和管理二方面内容 把软件生命周期全过程中使用的一整套技术方法的集合称为方法学 主要存在: A 传统方法学(生命周期方法或结构化方法):分阶段开发和管理 B 面向对象方法(OOA,OOD,OOP) 1. 传统方法学 也称为生命周期方法学或结构化范型。 它采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。 这种方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。 每一个阶段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一阶段的结束标准就是后一阶段的开始标准。 在每一个阶段结束之前都必须进行正式严格的技术审查和管理复审 2. 面向对象方法学 面向对象方法学的出发点和基本原则 是尽量模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,从而使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。 优点: 降低了软件产品的复杂性,提高了软件产品的可理解性,简化了软件的开发和维护工作。 促进了软件重用。 面向对象方法学具有下述4个要点: (1) 把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件。 (2) 把所有对象都划分成类(class)。 (3) 按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。 (4) 对象彼此间仅能通过发送消息互相联系。(封装性) 两者区别 传统方法学强调自顶向下顺序地完成软件开发的各阶段任务。 面向对象方法学开发软件的过程,是一个主
您可能关注的文档
- 《老人与海鸥》苏玉萍.ppt
- 《能量流动和物质循环》课件 济南版.ppt
- 《能量量子化:物理学的新纪元》教学课件.ppt
- 《编织乐园》.ppt
- 《自上而下的改革》课件.ppt
- 《编纸条》课件.ppt
- 《苏幕遮_碧云天》(范仲淹).ppt
- 《苏州园林》(审定稿).ppt
- 《荷塘月色》 朱自清.ppt
- 《落日》课堂定稿.ppt
- 2025届衡阳市第八中学高三一诊考试物理试卷含解析.doc
- 2025届湖南省娄底市双峰一中等五校重点中学高三第二次诊断性检测物理试卷含解析.doc
- 天水市第一中学2025届高三第二次联考物理试卷含解析.doc
- 2025届金华市重点中学高三考前热身物理试卷含解析.doc
- 2025届北京市石景山区第九中学高三第四次模拟考试物理试卷含解析.doc
- 江苏扬州市2025届高三第一次模拟考试物理试卷含解析.doc
- 2025届江苏省南通市高级中学高考物理五模试卷含解析.doc
- 广东省清远市华侨中学2025届高三第一次调研测试物理试卷含解析.doc
- 辽宁省凤城市2025届高三第五次模拟考试物理试卷含解析.doc
- 内蒙古巴彦淖尔市重点中学2025届高考仿真卷物理试卷含解析.doc
最近下载
- 运输企业管理系统数据库设计.doc VIP
- 2024年江西机电职业技术学院单招职业技能测试题库(含答案).docx VIP
- 方剂学方歌大全.doc
- 炼油炼化企业燃料气回收及火炬操作规程.docx VIP
- 《给水排水工程顶管技术规程》.pdf
- 北京市海淀区2024-2025学年高二上学期期末考试历史试卷(含答案).pdf
- 吉利汽车:2021年年报.PDF
- (高清版)H-Y-T 0347-2022 海水中痕量铵盐的测定 流动分析-邻苯二甲醛固相萃取-荧光光度法.pdf VIP
- 2025必威体育精装版字帖5年级下册_田楷.pdf
- (人教2024版新教材)英语七年级下册Unit 5 大单元教学设计.docx
文档评论(0)