面向对象的系统分析与设计(王海燕)绪论.pptVIP

面向对象的系统分析与设计(王海燕)绪论.ppt

  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文档。上传文档
查看更多
MDA(Model-Driven Architecture) MDA?是?OMG?于?2001?年提出来的。其核心思想是抽象出与实现技术无关、完整描述业务功能的核心平台无关模型,然后针对不同实现技术制定多个转换规则,通过这些转换规则及辅助工具将其转换成与具体实现技术相关的平台相关模型,最后转换成代码。 1.3 面向过程与面向对象 面向过程方法 面向对象方法 面向对象的困难 面向过程的困难 困难的本质:面向过程方法将世界看作是过程化的,一个个紧密相连的小系统,构成这个系统的各个部分之间有着密不可分的因果关系。 面向对象方法的重要特点 抽象层次 只需要面对有限的复杂度和有限的对象结构,从而可以专心的了解这个层次上的对象是如何工作的 低层次的零件更换不会影响高层次的功能 面向对象与面向过程的不同 不再把世界看作一个紧密关联的系统,而是看成一些相互独立的小零件,这些零件依据某种规则组织起来,完成一个特定的功能。 面向对象和面向过程的不同导致整个分析设计方法的革命:分析设计从过程分析变成了对象获取,从数据结构变成了对象结构。 面向对象的困难 对象怎么被抽象出来的?(Why?) 对象之间怎样组合?(How?) 对象组合表达什么含义?(What?) 解决方法 需要: 一种把现实世界映射到对象世界的方法 一种从对象世界描述现实世界的方法 一种验证对象世界行为是否正确反映了现实世界的方法 UML是可视化语言 UML是图形化语言,图形便于交流 UML是一种可以详细描述的语言 所建的模型是精确的,无歧义和完整的 UML是用于构造系统或理解系统的语言 UML不是一种可视化的编程语言,但用UML描述的模型可与各种编程语言直接关联 UML是文档化语言 UML可以为系统的体系结构以及系统的所有细节建立文档 建模工具的比较 RUP与UML 类似于音乐理论与五线谱的关系 RUP与UML是独立的 UML是一种语言,用来描述软件生产过程中要产生的文档 统一过程则是指导如何产生这些文档以及这些文档要讲述的方法 RUP与软件工程 RUP是一个庞大和复杂的知识体系,几乎囊括了软件开发所需要知识的方方面面。 RUP追求开发稳定架构,控制变更,立足于长期战略,适用于指导大中型软件产品的开发。 提高软件成熟度 提高软件技术水平和质量 * 一幅图胜过千言万语 UML本身就不是为他编译、执行而生,它旨在一个更高层次的交流和沟通,使参与各方都能答成普遍的共识,已降低在实施过程所固有的风险,以提成功的机率。 最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统, 由于各工具开发商有不同的定位、能力和市场策略,使得每一种UML工具都不同程度地实现了UML标准的不同子集,当然有些厂商、咨询公司和专家甚至还发明、提供了非标准的UML扩展集(profile)。尽管市面上的UML工具基本上都能提供UML规范所定义的主要功能,但不同产品甚至同一产品的不同版本,在具体的功能实现上总存在一些差异,表现出各自的特性而具有不同的适用面。在我国,广大软件开发人员使用较多的是ROSE,Visio和PowerDesigner。 RUP吸收了很多已经在商业上得到证明的软件开发的最佳经验,使其能够适用于广泛的项目和组织。 1、迭代式开发   在软件开发的早期阶段就想完全、准确的捕获用户的需求几乎是不可能的。实际上,我们经常遇到的问题是需求在整个软件开发工程中经常会改变。迭代式开发允许在每次迭代过程中需求可能有变化,通过不断细化来加深对问题的理解。迭代式开发不仅可以降低项目的风险,而且每个迭代过程都可以执行版本结束,可以鼓舞开发人员。 2、管理需求   确定系统的需求是一个连续的过程,开发人员在开发系统之前不可能完全详细的说明一个系统的真正需求。RUP描述了如何提取、组织系统的功能和约束条件并将其文档化,用例和脚本的使用以被证明是捕获功能性需求的有效方法。 3、基于组件的体系结构   组件使重用成为可能,系统可以由组件组成。基于独立的、可替换的、模块化组件的体系结构有助于管理复杂性,提高重用率。RUP描述了如何设计一个有弹性的、能适应变化的、易于理解的、有助于重用的软件体系结构。 4、可视化建模   RUP往往和UML联系在一起,对软件系统建立可视化模型帮助人们提供管理软件复杂性的能力。RUP告诉我们如何可视化的对软件系统建模,获取有关体系结构于组件的结构和行为信息。 5、验证软件质量   在RUP中软件质量评估不再是事后进行或单独小组进行的分离活动,而是内建于过程中的所有活动,这样可以及早发现软件中的缺陷。 6、控制软件变更   迭代式开发中如果没有严格的控制和协调,整个软件开发过程很快就陷入混乱之中,RUP描述了如何控制、跟踪、监控、修改以确保成功的迭代开发。RUP通过软件开

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档