软件工程新技术.ppt
《软件工程新技术.ppt》由会员分享,可在线阅读,更多相关《软件工程新技术.ppt(54页珍藏版)》请在课桌文档上搜索。
1、1,软件工程新技术,2,软件工程新技术报告提纲,一、面向对象与统一建模语言二、软件过程改进与能力成熟度模型三、构件与软件重用四、模式与构架,3,一、面向对象与统一建模语言,面向对象(Object-Oriented)方法形成最初是从面向对象程序设计语言开始的。第一个OO语言是20世纪60年代末挪威奥斯陆大学和挪威计算中心共同研制的Simula。到20世纪80年代中期,OO语言达数十种之多。,4,一、面向对象与统一建模语言,20世纪80年代中期,面向对象分析(OOA)的研究开始发展,进而延伸到面向对象设计(OOD)。90年代以后,OOA/OOD方法逐渐走向实用,形成OO开发方法:,5,一、面向对象
2、与统一建模语言,什么是建模和可视化建模?,6,一、面向对象与统一建模语言,一些专家按照OO思想,对系统分析和设计工作的步骤、方法、图形工具等进行了详细的研究,提出了许多不同的实施方案。比较著名和流行的有Coad/Yourdon方法、Booch方法和Rumbaugh的OMT方法。OMT方法把分析时收集的信息构造在三类模型中,即对象模型、功能模型和动态模型。,7,一、面向对象与统一建模语言,对象模型是三个模型中最关键的一个模型,它的作用是描述系统的静态结构,包括构成系统的类和对象,它们的属性和操作,及它们之间的关系。,8,一、面向对象与统一建模语言,动态模型由多个状态图组成。,9,一、面向对象与统
3、一建模语言,功能模型由多个数据流图组成,它们指明从外部输入,通过操作和内部存储,直到外部输出,这整个的数据流情况。,10,一、面向对象与统一建模语言,UML(Unified Modeling Language)是下面这些最好的建模方法中最好部分的集成:数据建模的概念(E-R模型)商务流程模型(Work Flow)对象建模方法软构件建模思想 UML是一种用可视化方法对软件系统进行描述、实施和说明的标准语言。支持用不同实现技术进行的软件开发全过程。,11,一、面向对象与统一建模语言,UML的历史,12,一、面向对象与统一建模语言,UML的组成,13,一、面向对象与统一建模语言,UML支持用于系统开
4、发,Classes,application partitioning,Business Objects,Relationships,Business Process,Objects,Use Cases,large scale system,Scenarios,ComponentsMicrosoft,ActiveX/COMMicrosoft,ORDBMSOracle,CORBAOMG,14,一、面向对象与统一建模语言,15,二、软件过程改进与能力成熟度模型,软件过程(Software Process)是人们建立、维护和进化软件产品整个过程中所有技术活动和管理活动的集合。从1984年起每年有软件过
5、程国际研讨会(ISPW),从1991年起开始召开软件过程国际会议(ICSP),每个国家几乎都有自己的软件过程改进网络(SPIN)。主要研究方向:软件过程分析和建模、软件过程支持、软件过程评估和改进。,16,二、软件过程改进与能力成熟度模型,RUP软件过程 XP软件过程 敏捷软件过程 CMM软件过程 PSP个体软件过程 TSP群组软件过程,17,二、软件过程改进与能力成熟度模型,Rational Unified Process(RUP)是Rational公司的一个软件过程产品,其初始版本为5.0,先后经历了5.1、5.1.1、5.5等版本直到最新的Rational Unified Process
6、 2000版本。RUP将项目管理、商业建模、分析与设计等统一起来,贯穿整个开发过程。RUP采用Internet技术,可以增强团队的开发效率,并为所有成员提供最佳的软件实现方案。,基于RUP的软件过程,18,二、软件过程改进与能力成熟度模型,基于RUP的软件过程,19,二、软件过程改进与能力成熟度模型,基于RUP的软件过程,20,二、软件过程改进与能力成熟度模型,基于XP的软件过程,Kent Beck于1997年在Extreme Programming Explained Embrace Change中提出 一种高度动态的过程,它通过非常短的迭代周期来应对软件开发中的变化 强调有效测试和演化设计
7、,21,二、软件过程改进与能力成熟度模型,基于XP的软件过程,Kent Beck于1997年在Extreme Programming Explained Embrace Change中提出 一种高度动态的过程,它通过非常短的迭代周期来应对软件开发中的变化 强调有效测试和演化设计,22,二、软件过程改进与能力成熟度模型,基于XP的软件过程,什么时候需要XP?需求不明确、变化快 高风险:在特定的时间内,面对一个相当难开发的系统 中小型团队(人数不超过10 个),23,二、软件过程改进与能力成熟度模型,基于XP的软件过程,XP项目的状态图,24,二、软件过程改进与能力成熟度模型,基于XP的软件过程,
8、XP的计划反馈循环,25,二、软件过程改进与能力成熟度模型,敏捷软件过程,敏捷(agility)软件过程是Aoyama在1998年提出来的。基于时间的、并行的、分布的、演化的快速软件开发过程。,26,二、软件过程改进与能力成熟度模型,敏捷软件过程,27,二、软件过程改进与能力成熟度模型,软件能力成熟度模型(SW-CMM),80年代,在美国国防部资助下,由卡内基梅隆大学软件工程研究所(CMU/SEI)建立,用于评价软件开发组织的软件过程能力成熟度。1991年,CMM1.0版;1993年,CMM 1.1版 软件过程能力:遵循一个软件过程后能够得到的预期结果的界限范围。该指标是对能力的一种衡量,用它
9、可以预测一个组织在承接下一个软件项目时,所能期望得到的最可能的结果。,28,二、软件过程改进与能力成熟度模型,软件能力成熟度模型(SW-CMM),软件过程成熟度:指一个具体的软件过程被明确地定义、管理、评价、控制和产生实效的程度。成熟度包含着能力的一种潜力,同时也表明了组织实施软件过程的实际水平。关键过程域:是一组相互关联的活动,实现一组对建立过程能力至关重要的目标。规定每一个关键过程域属于某个成熟度级别。每个关键过程域由SEI标识为一个基本结构单元域,以帮助确定机构的软件过程能力和了解要达到软件成熟度级别所需要的过程改进。,29,二、软件过程改进与能力成熟度模型,软件能力成熟度模型(SW-C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 新技术
![提示](https://www.desk33.com/images/bang_tan.gif)
链接地址:https://www.desk33.com/p-235716.html