欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    软件工程引论精品文稿.ppt

    • 资源ID:91236473       资源大小:3.46MB        全文页数:41页
    • 资源格式: PPT        下载积分:18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件工程引论精品文稿.ppt

    软件工程引论第1页,本讲稿共41页u软件的概念软件的概念u软件的分类软件的分类u软件的发展软件的发展u软件生存期软件生存期u软件工程的产生及发展软件工程的产生及发展u软件工程的目的和要求软件工程的目的和要求第2页,本讲稿共41页 软件工程是件工程是计算机科学与技算机科学与技术专业的一的一门专业核心核心课程。通程。通过本本课程的学程的学习,使学生掌握系,使学生掌握系统的的软件开件开发理理论、技技术和方法和方法,使用,使用正确的工正确的工程方法程方法开开发出成本低、可靠性好并在机器上能高出成本低、可靠性好并在机器上能高效运行的效运行的软件,件,为今后从事今后从事软件开件开发和和维护打下打下坚实的基的基础。课程的性质、目的与任务课程的性质、目的与任务第一章 软件工程引论第3页,本讲稿共41页 本本课程比程比较全面、系全面、系统地介地介绍软件工程的概念、技件工程的概念、技术与方法。与方法。主要内容包括:主要内容包括:软件工程概述件工程概述、软件生存周期件生存周期及及软件件需求分析需求分析、软件件设计方法方法、软件件测试技技术等。等。通通过本本课程的学程的学习,使学生能真正的了解,使学生能真正的了解软件开件开发的的整个整个过程。程。为了了让学生真正得以学生真正得以实践,践,结合合实际软件开件开发项目,目,让学生从学生从问题定定义开始,开始,经过可行性研究、需求分可行性研究、需求分析、概要析、概要设计、详细设计、编码直到最后直到最后对自己开自己开发的的软件件进行行测试,这样一个一个软件开件开发全全过程,使学生掌握程,使学生掌握软件件开开发的基本技能。的基本技能。课程主要内容课程主要内容第一章 软件工程引论第4页,本讲稿共41页第一章 软件工程引论学习本课程的基本要求学习本课程的基本要求 本本课程是程是继程序程序设计课程之后,程之后,对提高学生提高学生软件件开开发能力有重要作用的一能力有重要作用的一门课程。要求学生在学程。要求学生在学习本本课程前程前应掌握掌握信息管理系信息管理系统、数据数据结构构、结构化程序构化程序设计、面向面向对象程序象程序设计以及以及程序程序设计方法方法论。通通过本本课程的学程的学习,为学生后期的学生后期的毕业设计环节奠定了良好的基奠定了良好的基础。第5页,本讲稿共41页引引 言言水利工程建筑工程机械工程 软件工程软件工程 本章将本章将对软件的地位和作用、件的地位和作用、软件的特点、件的特点、软件件 的的发展、展、软件的危机以及件的危机以及软件工程学科的形成、件工程学科的形成、软件件 生期等方面的生期等方面的问题和基本概念做和基本概念做详细介介绍。传统工程传统工程新兴工程新兴工程气象工程生物工程第6页,本讲稿共41页第一节第一节 软件的概念与特点软件的概念与特点1 1、软件件softwaresoft+ware软制品制品(软体体)软件是件是计算机系算机系统中与硬件相互依存的另一部分。中与硬件相互依存的另一部分。它包括它包括程序程序、数据数据及其及其相关文档相关文档的完整集合。的完整集合。第7页,本讲稿共41页第一节第一节 软件的概念与特点软件的概念与特点2 2、软件特点件特点 软件是一种软件是一种逻辑实体逻辑实体,而不是具体的物理,而不是具体的物理实体。因而它实体。因而它具有抽象性具有抽象性 软件的软件的生产生产与硬件不同,在它的开发过程与硬件不同,在它的开发过程中中没有明显的制造过程没有明显的制造过程 在软件的运行和使用期间,没有硬件那样在软件的运行和使用期间,没有硬件那样的的机械磨损机械磨损,老化问题老化问题 软件的开发和运行常受到计算机系统的限软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的制,对计算机系统有着不同程度的依赖性依赖性第8页,本讲稿共41页第一节第一节 软件的概念与特点软件的概念与特点软件的开发至今尚未完全摆脱软件的开发至今尚未完全摆脱手工的开手工的开发方式发方式软件本身是软件本身是复杂复杂的的 实际问题的复杂性实际问题的复杂性程序逻辑结构的复杂性程序逻辑结构的复杂性 软件软件成本相当昂贵成本相当昂贵相当多的软件工作涉及到相当多的软件工作涉及到社会因素社会因素2 2、软件特点件特点第9页,本讲稿共41页第一节第一节 软件的概念与特点软件的概念与特点磨合调整磨损用坏修改点实际曲线理想曲线硬件失效率曲线硬件失效率曲线时间时间失失效效率率时间时间失失效效率率软件失效率曲线软件失效率曲线第10页,本讲稿共41页第一节第一节 软件的概念与特点软件的概念与特点软件技术的发展落后于需求软件技术的发展落后于需求时间软件需求差距软件技术硬、软件成本比例的变化硬、软件成本比例的变化年份成本%软软软软 件件件件1950197019851995硬硬 件件软件复杂性第11页,本讲稿共41页软件的分类软件的分类 1 1、按、按软件的件的功能功能进行划分行划分系统软件支撑软件应用软件 1 1、按、按软件的件的功能功能进行划分行划分系统软件支撑软件应用软件 1 1、按、按软件的件的功能功能进行划分行划分系统软件支撑软件应用软件 1 1、按、按软件的件的功能功能进行划分行划分系统软件支撑软件应用软件 1 1、按、按软件的件的功能功能进行划分行划分系统软件支撑软件应用软件第12页,本讲稿共41页软件的分类软件的分类系统软件系统软件系统软件系统软件u u 操作系统操作系统操作系统操作系统u u 数据库管理系统数据库管理系统数据库管理系统数据库管理系统u u 设备驱动程序设备驱动程序设备驱动程序设备驱动程序u u 通信处理程序等通信处理程序等通信处理程序等通信处理程序等第13页,本讲稿共41页软件的分类软件的分类支撑软件支撑软件支撑软件支撑软件u u文本编辑程序文本编辑程序文本编辑程序文本编辑程序u u文件格式化程序文件格式化程序文件格式化程序文件格式化程序u u磁盘向磁带向数据传输的程序磁盘向磁带向数据传输的程序磁盘向磁带向数据传输的程序磁盘向磁带向数据传输的程序u u程序库系统程序库系统程序库系统程序库系统u u支持需求分析、设计、实现、支持需求分析、设计、实现、支持需求分析、设计、实现、支持需求分析、设计、实现、测试和支持管理的软件测试和支持管理的软件测试和支持管理的软件测试和支持管理的软件第14页,本讲稿共41页软件的分类软件的分类应用软件应用软件应用软件应用软件u u 商业数据处理软件商业数据处理软件商业数据处理软件商业数据处理软件u u 工程与科学计算软件工程与科学计算软件工程与科学计算软件工程与科学计算软件u u 计算机辅助设计制造软件计算机辅助设计制造软件计算机辅助设计制造软件计算机辅助设计制造软件u u 系统仿真软件系统仿真软件系统仿真软件系统仿真软件u u 智能产品嵌入软件智能产品嵌入软件智能产品嵌入软件智能产品嵌入软件u u 医疗、制药软件医疗、制药软件医疗、制药软件医疗、制药软件u u 事务管理、办公自动化软件事务管理、办公自动化软件事务管理、办公自动化软件事务管理、办公自动化软件u u 计算机辅助教学软件计算机辅助教学软件计算机辅助教学软件计算机辅助教学软件第15页,本讲稿共41页软件的分类软件的分类2 2、按、按软件的件的规模模进行划分行划分 按开按开发软件所需的件所需的 人力、人力、时间以及完成的以及完成的 源代源代码行数。行数。第16页,本讲稿共41页软件的分类软件的分类类别类别参加人数参加人数研制期限研制期限产品规模产品规模(源代码行数源代码行数)微型小型中型大型甚大型极大型112-55-20100-10002000-50001-4周1-6周1-2年2-3年4-5年5-10年约500行 约2000行 5000-50000行5万-10万行100万行1000万行第17页,本讲稿共41页软件的分类软件的分类3 3、按、按软件件开开发方式方式划分划分软件项目开发软件产品开发第18页,本讲稿共41页软件的分类软件的分类实时处理软件交互式软件分时软件4 4、按、按软件的件的工作方式工作方式划分划分批处理软件第19页,本讲稿共41页软件的发展软件的发展 早期早期 第二阶段第二阶段 第三阶段第三阶段 第四阶段第四阶段 面向批处理面向批处理 多用户多用户 分布式系统分布式系统 强大的桌面系统强大的桌面系统 有限的分布有限的分布 实时实时 嵌入嵌入“智能智能”面向对象技术面向对象技术 自定义软件自定义软件 数据库数据库 低成本硬件低成本硬件 专家系统专家系统 软件产品软件产品 消费者的影响消费者的影响 人工神经网络人工神经网络 并行计算并行计算 网络计算机网络计算机195019601970198019902000第20页,本讲稿共41页第二节第二节 软件生存期软件生存期u 软件有一个孕育、诞生、成长、成熟、衰亡的软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期生存过程。这个过程即为计算机软件的生存期u 软件生存期的六个步骤,即软件生存期的六个步骤,即制定计划制定计划、需需求分析求分析、设计设计、程序编码程序编码、测试测试及及运行维护运行维护第21页,本讲稿共41页第二节第二节 软件生存期软件生存期第22页,本讲稿共41页第二节第二节 软件生存期软件生存期(1 1)制制订计划划u 确定要开确定要开发软件系件系统的的总目目标u 给出出功能功能、性能性能、可靠性可靠性以及以及接口接口等方面的要求等方面的要求u 完成完成该软件任件任务的的可行性研究可行性研究u 估估计可利用的可利用的资源源 (硬件,硬件,软件,人力等件,人力等)、成本成本、效益效益、开开发进度度u 制定出完成开制定出完成开发任任务的的实施施计划划,连同可行性研究同可行性研究报告,告,提交管理部提交管理部门审查第23页,本讲稿共41页第二节第二节 软件生存期软件生存期(2 2)需求分析和定需求分析和定义u对用户提出的要求进行对用户提出的要求进行分析分析并给出并给出详细详细的定义的定义u编写编写软件需求说明书软件需求说明书或或系统功能说明书系统功能说明书及及初步的系统用户手册初步的系统用户手册u提交管理机构提交管理机构评审评审第24页,本讲稿共41页第二节第二节 软件生存期软件生存期(3 3)软件设计软件设计u概要设计概要设计 把各项需求转换成把各项需求转换成软件的体系结构软件的体系结构。结构中每一组成部分都是意义明确的模块,每个模块结构中每一组成部分都是意义明确的模块,每个模块都和某些需求相对应都和某些需求相对应u详细设计详细设计 对每个模块要完成的工作进行具体的对每个模块要完成的工作进行具体的描述,为源程序编写打下基础描述,为源程序编写打下基础u编写编写设计说明书设计说明书,提交评审提交评审。第25页,本讲稿共41页第二节第二节 软件生存期软件生存期(4 4)程序编写程序编写u 把软件设计转换成计算机可以接受的把软件设计转换成计算机可以接受的程序程序代码代码,即写成以某一种,即写成以某一种特定程序设计语言特定程序设计语言表表示的示的“源程序清单源程序清单”u 写出的程序应当是写出的程序应当是结构良好结构良好、清晰易读清晰易读的,的,且且与设计相一致与设计相一致的的第26页,本讲稿共41页第二节第二节 软件生存期软件生存期(5 5)测试阶段段u 单元测试单元测试,查找各模块在功能和结构上存,查找各模块在功能和结构上存在的问题并加以纠正在的问题并加以纠正u 组装测试组装测试,将已测试过的模块按一定顺序,将已测试过的模块按一定顺序组装起来组装起来u 按规定的各项需求,按规定的各项需求,逐项进行有效性测试逐项进行有效性测试,决,决定已开发的软件是否合格,能否交付用户使用定已开发的软件是否合格,能否交付用户使用第27页,本讲稿共41页第二节第二节 软件生存期软件生存期(6 6)运行运行/维护u 改正性改正性维护 运行中运行中发现了了软件中的件中的错误需要修正需要修正u 适适应性性维护 为了适了适应变化了的化了的软件工作件工作环境,需做适当境,需做适当变更更u 完善性完善性维护 为了增了增强软件的功能需做件的功能需做变更更第28页,本讲稿共41页第二节第二节 软件生存期软件生存期第29页,本讲稿共41页第三节第三节 软件危机软件危机 所所谓软件危机,就是指在件危机,就是指在软件开件开发和和软件件维护过程中所存在的一系列程中所存在的一系列严重重问题。现代代计算机算机应用系用系统中,中,软件的地位日益重要和突件的地位日益重要和突出。如何出。如何满足日益增足日益增长的的软件需求,如何件需求,如何维护应用中的用中的大量已有大量已有软件,已件,已经成成为了了计算机算机应用系用系统进一步一步发展展的瓶的瓶颈。第30页,本讲稿共41页软件危机的表现软件危机的表现 软件开件开发没有真正的没有真正的计划性,划性,对软件开件开发进度和度和软件件开开发成本的估成本的估计常常很不准确,常常很不准确,计划的制定划的制定带有很大的有很大的盲目因素。盲目因素。对于于软件需求信息的件需求信息的获取常常不充分,取常常不充分,软件件产品品往往不能真正地往往不能真正地满足用足用户的的实际需求。需求。缺乏良好的缺乏良好的软件件质量量评测手段,从而手段,从而导致致软件件产品的品的质量常常得不到保量常常得不到保证。第31页,本讲稿共41页软件危机的表现软件危机的表现对于软件的可理解性、可维护性认识不够;软件的可对于软件的可理解性、可维护性认识不够;软件的可复用性、可维护性不如人意。复用性、可维护性不如人意。软件开发过程没有实现软件开发过程没有实现“规范化规范化”,缺乏必要的文档资,缺乏必要的文档资料或者文档资料不合格、不准确,难以进行专业维护。料或者文档资料不合格、不准确,难以进行专业维护。软件开发的人力成本持续上升。软件开发的人力成本持续上升。缺乏自动化的软件开发技术,软件开发的生产率依然低下,缺乏自动化的软件开发技术,软件开发的生产率依然低下,远远满足不了急剧增长的软件需求。远远满足不了急剧增长的软件需求。第32页,本讲稿共41页产生软件危机的原因产生软件危机的原因 产生软件危机的原因可以归纳为主、客观两个方产生软件危机的原因可以归纳为主、客观两个方面。面。从客观上来看从客观上来看,软件不同于硬件,它的生产过程和产,软件不同于硬件,它的生产过程和产品都具有明显的品都具有明显的“不可视不可视”特征,这就导致在完成编特征,这就导致在完成编码并且上机运行之前,对于软件开发过程的进展情码并且上机运行之前,对于软件开发过程的进展情况较难衡量,软件产品的质量也较难进行先期评价,况较难衡量,软件产品的质量也较难进行先期评价,因此,对于开发软件的过程进行管理和控制比较困因此,对于开发软件的过程进行管理和控制比较困难。难。第33页,本讲稿共41页产生软件危机的原因产生软件危机的原因 产生软件危机的原因可以归纳为主、客观两个方面。产生软件危机的原因可以归纳为主、客观两个方面。从主观上分析从主观上分析,导致软件危机发生的另一大原因,导致软件危机发生的另一大原因,可以归于在计算机系统发展的早期,软件开发的可以归于在计算机系统发展的早期,软件开发的“个体个体化化”特点,主要表现为忽视软件需求分析的重要性、特点,主要表现为忽视软件需求分析的重要性、忽视软件的可理解性、文档不完备、轻视软件的可维忽视软件的可理解性、文档不完备、轻视软件的可维护性、过分强调编码技巧等等方面。护性、过分强调编码技巧等等方面。第34页,本讲稿共41页解决软件危机的途径解决软件危机的途径 基于基于软件危机件危机产生的主、客生的主、客观原因,原因,应从从软件工件工程技程技术和和软件工程管理件工程管理两方面来采取措施,防范两方面来采取措施,防范软件危件危机的机的发生。生。从管理从管理层面上考面上考虑,应当注意推广和使用在当注意推广和使用在实践中践中总结出来的开出来的开发软件的成功的技件的成功的技术和方法,并且探索更好的、和方法,并且探索更好的、更有效的技更有效的技术和方法,注意和方法,注意积累累软件开件开发过程中的程中的经验数数据据财富,逐步消除在富,逐步消除在计算机系算机系统早期早期发展展阶段形成的一些段形成的一些错误概念和做法。概念和做法。第35页,本讲稿共41页解决软件危机的途径解决软件危机的途径 从技从技术角度考角度考虑,应当开当开发和使用更好的和使用更好的软件开件开发工具,提高工具,提高软件开件开发效率和开效率和开发工作工作过程的程的规范化范化程度。目前广程度。目前广为使用的使用的统一建模一建模语言言(UML)(UML)、各种各种配置配置管理工具管理工具、缺陷管理工具缺陷管理工具和和自自动测试工具工具都在都在软件工程件工程活活动中中发挥了很好的作用。了很好的作用。计算机算机辅助助软件工程件工程(CASE)(CASE)更是目前更是目前备受重受重视的一个旨在的一个旨在实现软件开件开发自自动化的新的化的新的领域。域。第36页,本讲稿共41页第四节第四节 软件工程的产生及发展软件工程的产生及发展1 1、“软件工程软件工程”-Software Engineering 于于1968年年 NATO 组织在组织在德国召开的一次会议上提出德国召开的一次会议上提出把软件当作一种工业产品,把软件当作一种工业产品,“采用工程化的原理与方法采用工程化的原理与方法对软件进行计划、开发、运行和维护对软件进行计划、开发、运行和维护”的系统方法。的系统方法。第37页,本讲稿共41页第四节第四节 软件工程的产生及发展软件工程的产生及发展 软件工程学 软件开发技术 软件工程管理软件开发方法学 软件工具 软件工程环境 软件工程管理学 软件经济学软件工程学的范畴 2 2、软件工程学软件工程学 第38页,本讲稿共41页第四节第四节 软件工程的产生及发展软件工程的产生及发展 3、软件的演变(即从传统软件开发到现代软件开发)程序软件软件产品传统软件开发现代软件开发 1975 1989 2000 0.00016240营业额增长曲线 80第39页,本讲稿共41页软件工程三要素软件工程三要素软件工程三要素:方法、工具和过程软件工程三要素:方法、工具和过程u软件工程方法软件工程方法为软件开发提供了为软件开发提供了 “如何做如何做”的技术的技术u软件工具软件工具为软件工程方法提供了自动的或半自动的软件支为软件工程方法提供了自动的或半自动的软件支撑环境撑环境u软件工程过程软件工程过程定义了定义了:方法使用的顺序方法使用的顺序 要求交付的文档资料要求交付的文档资料 为保证质量和适应变化所需要的管理为保证质量和适应变化所需要的管理 软件开发各个阶段完成的里程碑软件开发各个阶段完成的里程碑第40页,本讲稿共41页软件工程项目的基本目标软件工程项目的基本目标uu付出较低的开发成本付出较低的开发成本付出较低的开发成本付出较低的开发成本uu达到要求的软件功能达到要求的软件功能达到要求的软件功能达到要求的软件功能uu取得较好的软件性能取得较好的软件性能取得较好的软件性能取得较好的软件性能uu开发的软件易于移植开发的软件易于移植开发的软件易于移植开发的软件易于移植uu需要较低的维护费用需要较低的维护费用需要较低的维护费用需要较低的维护费用uu能按时完成开发工作,及能按时完成开发工作,及能按时完成开发工作,及能按时完成开发工作,及时交付使用时交付使用时交付使用时交付使用第41页,本讲稿共41页

    注意事项

    本文(软件工程引论精品文稿.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开