第1讲软件工程概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
总之,为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 技术措施 管理措施 按工程化的原则和方法组织软件开发工作是有效的,是摆脱软件危机的一个主要出路。软件工程正是从管理和技术两方面研究如何更好地开发和维护计算机软件的学科。 * * 1968 年北大西洋公约组织 的计算机科学家在联邦德国召开国际会议,第一次讨论软件危机问题,并正式提出“软件工程”一词,从此一门新兴的工程学科——软件工程学——为研究和克服软件危机应运而生。 2 软件工程 * 1983年IEEE给软件工程的定义:“软件工程是开发、运行、维护和修复软件的系统方法。” 强调“系统方法”不是“个人技巧”。 专家观点: Fairly认为:“软件工程学是为了在成本限额以内按时完成开发和修复软件产品所需要的系统生产和维护技术及管理学科”。强调“成本限额以内”及“技术和管理两个方面” 。 Fritz Bauer认为:“软件工程是为了经济地获得可靠的且能在实际机器上有效地运行的软件,而建立和使用的完善的工程化原则”。强调“经济地开发出高质量的软件,应建立和使用的完善的工程化原则”。 2.1 软件工程的定义和内容 * 1993年IEEE进一步给出了一个更全面的定义: 软件工程是:(1)把系统化的、规范的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程化应用于软件中;(2)研究(1)中提到的途径。 * 2004年由IEEE/ACM联合发布的Software Engineering2004报告强调了对软件工程的新定义,即软件工程是:以系统的、学科的、定量的途径,把工程应用于软件的开发、运营和维护;同时,开展对上述过程中各种方法和途径的研究。 * 软件工程是指导计算机软件开发和维护的工程学科.采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程. 工具 方法 过程 质量保证 图1-1 软件工程层次图 软件工程是一种层次化的技术,如图1-1 所示。和其他工程方法一样,软件工程是以质量为关注焦点,以相关的现代化管理为理念。 软件工程的基础是过程层。软件工程的过程是为获得软件产品,在软件工具支持下由软件人员完成的一系列软件工程的活动,贯穿于软件开发的各个环节。它定义了方法使用的顺序、要求交付的文档资料,是软件开发各个阶段完成的标志。 软件工程的内容 如何做? 软件支撑环境 * 软件工程的目标 付出较低的开发成本; 达到要求的软件功能; 取得较好的软件性能; 开发的软件易于移植; 需要较低的维护费用; 能按时完成开发工作,及时交付使用。 * 目标之间的关系 * 2.2 工程化思想 到底什么是工程化呢? 类比我们较熟悉的建筑工程,盖一个大楼 IEEE定义:工程化是把系统的、受训到、可以计量的方法应用到结构、机械、产品、系统或处理过程。 软件开发工程化的目标是通过规范软件开发的步骤和每一步的要求,使软件开发像在流水线上生产机械零件一样 * 2.3 软件工程的基本原理 1.用分阶段的生存周期计划严格管理开发过程。 软件开发周期划分成若干阶段,并相应地制定出切实可行的计划 2.坚持进行阶段评审。 因此,软件的质量保证工作不能等到编码阶段结束之后再进行。 3.实行严格的产品控制。 实行基准配置管理(又称变更控制),当需求变更时,其他各个阶段的文档或代码都要随之相应变化,以保证软件的一致性。 * 软件工程的基本原理 4.采用现代程序设计技术。 5.结果应能清楚地审查 明确地规定开发小组的责任和产品标准。 6.开发小组的人员应少而精。 减少交流时间 7.承认不断改进软件工程实践的必要性。 * * * 软件工程技术基础 ——流程与方法 第一章 软件工程概述 北京邮电大学计算机学院 芦效峰 * * 掌握一门以上程序开发语言 掌握编程技巧(数据结构、算法) 掌握软件开发方法论 掌握专业知识 如果只能选择一个,你会怎么选择? 计算机相关专业学生应具备的素质 《软件工程技术基础》学习目的 ?掌握软件开发方法论 体验软件工程各阶段的主要工作,特别注意吸取教训; 学会与他人合作,培养团队精神。 成为一名项目经理/产品经理的必修课 * 授课内容 软件工程概述 可行性研究 需求分析(UML) 概要设计(UML) 详细设计 人机交互 编码 软件测试 软件维护 * 主要学习内容: 软件 软件工程 软件生存周期 常用软件开发过程模型 软件开发方法简述 软件文档 * * 1 软件 1.1软件的概念及特点 从1946年第一台计算机诞生,计算机已经进入各

文档评论(0)

339910001 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档