网站大量收购独家精品文档,联系QQ:2885784924

第九章 高级软件工程.ppt

  1. 1、本文档共300页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高级软件工程 Advanced Software Engineering 李心科 主要内容 一、软件工程概述 二、软件需求 三、软件设计 四、检验和有效性验证方法 五、软件进化 六、软件项目管理 七、Advanced Topics in Software Engineering 一、软件工程概述 软件工程的基本概念 基于计算机的系统工程 软件过程 软件项目管理的基本内容 1.什么是软件? Software=program+data+document Custom software Generic software,Shrink-wrapped software Embedded software Safety-critical software COTS(Commercial Off-the-shelf ) I will create a software to update the database. (some software, a piece of software, a software system) 软件的分类 可以按功能、规模、工作方式、可靠性高低等进行划分 有关软件的词汇 Custom software Generic software Embedded software Safety-critical software COTS(Commercial Off-the-shelf ) I will create a software to update the database. (some software, a piece of software, a software system) 2.什么是软件工程? 1968年秋季,NATO(北约)的科技委员会召集了近50名一流的编程人员、计算机科学家和工业界巨头,讨论和制定摆脱“软件危机”的对策。Fritz Bauer在会议上首次提出“软件工程”概念。 软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开发和维护的学科。 Fritz Bauer:软件工程是为了经济地获得可靠的,能在实际的机器上高效运行的软件而建立和使用的科学的工程原则。 IEEE:软件工程是(1)将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化思想应用于软件开发过程中,(2)上述方法的研究。 软件工程的目标:低成本,高质量,按时交付 软件工程的本质特性 关注大型程序的构造 软件工程的中心课题是控制复杂性 软件需求不断变化 旨在提高软件开发的效率 团队合作是软件工程顺利实施的关键 软件必须有效支持它的用户 由一种文化背景的人替另一种文化背景的人创造产品 3.软件工程与计算机科学的区别 计算机科学研究的是构成计算机和软件系统基础的有关理论和方法,而软件工程则研究软件制作中的实际问题。 理论上,所有软件工程都应该以计算机科学理论作为坚实的基础,但对付实际的、复杂的问题时需要用软件工程的方法来解决。 4.软件工程与系统工程的区别 系统工程的产生比软件工程早。 基于计算机的系统工程,研究由软件起主导作用的、有关负责系统的开发和进化的方方面面,包括硬件开发、系统决策、过程设计、系统实施和软件过程等。 5.什么是软件过程? 软件过程是指开发软件产品的一组活动及其结果。 所有的软件过程都包含4项基本的活动:软件描述、软件开发、软件有效性验证和软件进化。 不同的软件过程以不同的方式组织这4项活动,活动的结果会影响活动的进度。 不同的机构可能用不同的过程来制作同一类产品。 过程定义的作用 一个过程定义了为达到确定的目标,需要什么人在什么时间以何种方式做何种工作(Goal,Who,When,How,What) Process vs Music score 对于 Customer, User, Developer, Manager,一个广泛适用的过程使得所有涉众更好地理解自己所扮演的角色、更清楚地知道自己及他人在什么时间做什么。 促使过程的有机结合和改善,以获得“最好过程”。 可以使公司内部的培训标准化。 由于过程的可重复性,利于开发进度的安排,利于成本估算。 6.什么是软件过程模型? 模型与建模 软件过程模型是从一特定的角度对软件过程的本质描述。 软件过程模型包括构成软件过程的各种活动、软件产品以及所有涉众(stakeholder) 从不同的角度对软件过程的描述,就得到不同的过程模型种类。如工作流模型、数据流或活动模型、角色/动作模型等。 工作流模型:描述软件过程中各种活动的序列及其输入、输出和相互依赖型。其中的活动皆为人的活动。 数据流或活动模型:把软件过程描述成一组活动,其中每个活动都完成一定的数据转换。该模型中的活动层次低于工作流模型。 角色/动作

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档