教学目标、内容教材.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主讲老师:刘志强 教学目标、内容 了解面向对象程序设计的基本概念 了解面向对象程序设计的特点 什么是面向对象方法? 结构化方法怎么啦? 先从起因说起…… 一、面向对象的基本概念 “面向对象“简称为“OO”。这是目前计算机业界使用的高频词。“OO”代表着一种新的思维方式,代表着一种新的程序设计方法的潮流。 什么是OO方法?什么是OOP?为什么人们要选择它? 1、传统方法学的问题 传统的程序设计方法——结构化程序设计方法对“程序开发”实现软件开发工程化曾经起到了重要的促进作用,部分地缓解了软件危机,用传统方法学成功的指导软件开发的范例很多。 但是,传统方法学并不能完全消除软件危机。方法学本身还存在不可克服的问题。 传统程序设计方法 存在的问题 生产率提高的幅度远不能满足需要 软件重用程度很低 软件维护困难 软件不能真正满足用户的需要 生产率提高的幅度 远不能满足需要 生命周期方法学强调需求分析的重要性,强调每个阶段结束之前必须进行严格的评审和质量把关,这确实加快了软件开发的速度。但所产生的开发率的提高,远远赶不上对软件产品需求率的增长。 据统计资料表明,从50年代到80年代的30年间,美国的软件生产率翻了两翻。但社会对软件的需求每年以两位数字的百分比在增长。软件的开发,已成为影响计算机应用的巨大桎梏和瓶颈。 软件重用程度很低 “重用”也称“再用”或“复用”。显然,软件重用是节约人力,提高软件生产率的重要途径。 传统的程序设计方法没能很好地解决软件重用问题。建立标准函数库和子程序库是人们为追求提高软件的可重用性做出的尝试。但事实证明,标准函数库和子程序库只是对建立在数学模型基础上的应用问题有可重用的功效,而对其它应用问题则不行。 对于传统的SA-SD-SP技术而言,思维成果的可重用性很差。 软件维护困难 按生命周期方法学开发出的软件,维护成本很高,据统计数据表明,软件维护的生产率比软件开发的生产率低几十倍。 80年代,美国一年花费的软件维护费用高达300多亿美元。 90年代,软件维护费用占系统研制、开发总费用的70%~80%。 软件不能真正满足用户的需要 实践表明,用传统方法开发的大型应用系统往往不能真正满足用户的需要。在美国,开发出的系统中: 符合用户需要并顺利投入使用的系统仅占总数的1/4; 中途夭折的系统占1/4; 将近1/2的系统,虽然完成了开发过程,但并未被用户采用或并未被长期使用。 还表现在: 开发出的软件系统与用户预期的系统不一致,不能满足用户的需要。 所开发出的系统不能适应用户经常变化的情况,系统的稳定性和可扩充性不能满足要求。 2.出现问题的原因 僵化的瀑布模型 结构化技术的缺点 僵化的瀑布模型 瀑布模型生存周期的各个阶段之间存在着严重的顺序性和依赖性。 但实践证明,在系统建立起来之前,很难仅仅依靠分析就确定出一套完整、准确、一致、有效的应用需求。更何况预先需求的方法,也不能适应用户需求不断变化的情况。具体表现在: 某些系统需求是模糊的 项目参与者之间存在通信鸿沟 预先定义的系统可能是过时的 ⑴某些系统需求是模糊的 实际情况是: a.有的用户有在计算机上实际使用类似软件的工作经验,能够预先精确地提出全部系统需求。例如,OS类的系统软件、导弹控制系统类的控制软件、图像处理软件、科学计算等软件。 b.但对更多的应用系统,例如,MIS、OA之类的数据处理系统,其需求往往是很难预先准确地指出。 许多用户对他们的需求最初只是模糊笼统的概念,显然让其准确无误地描述出来是不切合实际的。 ⑵项目参与者之间存在 通信鸿沟 由于没有共同语言,因此,双方很难作到完全沟通和相互理解,在需求分析阶段定义的用户需求常常是不完成和不准确的。 传统的定义需求的方法假设利用需求规格说明书之类的文档,就可以进行清晰、准确及有效的沟通。但一般来说,文档本质上被动、静止的通信工具,利用它往往很难准确地描述一个动态系统。因此,即使用户同意了需求规格说明书,也并不能保证根据这份说明书开发出来的软件系统就能真正满足用户的需要。 ⑶预先定义的系统 可能是过时的 目前,开发软件的生产率仍然很低,一个规模较大的软件其开发时间往往需要较长时间。随时间的推移,用户需求可能有较大的不同。按预先指定的需求开发软件,当软件开发出来已经过时。 有时,按生命周期方法学在开发后期修改需求,往往要付出很高的代价,甚至根本不可能修改。 结构化技术的缺点 难于将一个复杂的问题化简、分解 设计方法主观随意性很大 很难修改和扩充 难于将一个复杂的问题 化简、分解 传统方法(结构化方法)的本质是“功能分解”,是围绕实现处理功能的“过程”来构造系统的。 然而,用户需求的变化大部分是针对功能的。因此,这种变化对于基于过程的设计来说

文档评论(0)

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

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

1亿VIP精品文档

相关文档