1、软件工程课程讲义V10(chapter1-2)4h(精品·公开课件).ppt

1、软件工程课程讲义V10(chapter1-2)4h(精品·公开课件).ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 软件工程概述 软件危机 软件工程 计算机系统的发展历程 软件危机的含义 产生软件危机的原因 消除软件危机的途径 什么是软件工程 软件工程的基本原理 软件工程方法学 Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料 Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法 IEEE(1983): 软件工程是开发、运行、维护和修复软件的系统方法 IEEE(1993): 软件工程是①把系统化的、规范的、可度量的途径应用于软件开发、运行和维护的过程,也就是化工程应用于软件中;②研究①中提到的途径。 软件工程的定义 指导计算机软件开发和维护的工程学科。 采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。 保证项目成功 付出较低成本,达到要求功能,取得较好性能, 按时完工,易移植,易维护,运行可靠 软件工程项目的基本目标 软件工程的基本原理 软件工程的基本原理: 用分阶段的生命周期计划严格管理。 建立完善的计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划和运行维护计划 坚持进行阶段评审。 实行严格的产品控制。 基准配置管理 采用现代程序设计技术。 结果应能清楚地审查。 开发小组的人员应该少而精。 承认不断改进软件工程实践的必要性。 早 中 后 高 中 低 变化出现的时期 代价 图1.1 引入同一变动付出的代价随时间变化的趋势 软件工程三要素: 方法——提供“如何做”的技术。 项目计划与估算、软件系统需求分析、数据结构和系统总体结构设计、算法设计、程序编码、软件测试、软件维护 工具——提供自动的或半自动的软件支撑环境。 支持各种方法的单个工具; CASE:将各种软件工具、开发机器和一个存放开发过程信息的工程数据库结合起来形成的软件工程环境。 过程——方法与工具的结合。 方法使用的顺序、要求交付的文档资料、为保证质量和协调变更所需要的管理及软件开发各阶段完成的标志。 软件工程方法学三要素 传统方法学和面向对象方法学 传统方法学 也称为生命周期方法学和结构化范型。它采用结构化技术(结构化分析、结构化设计、结构程序设计和结构化测试)来完成软件开发的各项任务,并使用适当的软件开发工具或软件工程环境来支持结构化技术的运用。 面向对象方法学 面向对象方法学=对象+类+继承+消息通信 传统方法学和面向对象方法学 面向对象方法学体现了信息隐藏的观点 例子:税率的频繁改变对不同方法产生不同影响 传统方法学和面向对象方法学 例子:税率的频繁改变对不同方法产生不同影响 假定营业税税率6%,我们要实现一个财务系统计算应纳税额,实现方式: 1、直接计算:营业额*6.0% 2、传统方法学:const float salestax=6.0% 3、面向对象方法学:请求对象返回税率 …… 另一个典型的例子是油价 第二章 软件过程 过程(ISO 9000):把输入转化为输出的一组彼此相关的资源和活动。 软件工程过程:为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 过程定义了运用方法的顺序、应该交付的文档资料、为保证软件质量和协调变化所需要采用的管理措施以及标志软件开发各个阶段任务完成的里程碑。 软件生命周期的基本任务 软件生存期: 软件从定义、开发、维护直到报废,结束其使命的全过程 软件定义:确定软件开发工程必须完成的总目标。 软件开发:具体设计和实现在前一个时期定义的软件。 运行维护:使软件持久地满足用户的需要。 概要设计 详细设计 编码和单元测试 综合测试 问题定义 可行性研究 需求分析 软件生命周期的基本任务 软件定义:确定软件开发工程必须完成的总目标。 问题定义:要解决的问题是什么? 可行性研究:上一个阶段所确定的问题是否有行得通的解决办法? 需求分析:目标系统必须做什么? 软件生命周期的基本任务 软件开发:具体设计和实现在前一个时期定义的软件。 概要设计:怎样实现目标系统? 详细设计:应该怎样具体地实现这个系统? 系统设计 系统实现 编码和单元测试:关键任务是写出正确的、容易理解、容易维护的程序模块。 综合测试:通过各种类型的测试(及相应的调试)使软件达到预定的要求。 软件生命周期的基本任务 运行维护:使软件持久地满足用户的需要。 改正性维护:诊断和改正使用过程中发现的软件错误 适应性维护:修改软件以适应环境的变化 完善性

文档评论(0)

花好月圆 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档