SE8面向对象的分析及设计方法课件.ppt

SE8面向对象的分析及设计方法课件.ppt

ID:57059216

大小:2.24 MB

页数:106页

时间:2020-07-30

SE8面向对象的分析及设计方法课件.ppt_第1页
SE8面向对象的分析及设计方法课件.ppt_第2页
SE8面向对象的分析及设计方法课件.ppt_第3页
SE8面向对象的分析及设计方法课件.ppt_第4页
SE8面向对象的分析及设计方法课件.ppt_第5页
资源描述:

《SE8面向对象的分析及设计方法课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第八章面向对象的分析及设计方法软件工程本章要点数据对象使用实例类—对象模型对象—关系模型对象—行为模型基于数据对象分析方法面向对象的设计模型系统设计对象设计领域对象设计思考题软件开发中为什么要使用面向对象方法?面向对象分析方法与结构化分析方法有哪些相似之处?有何区别?面向对象方法是对过去的一个完全突破,还是“换汤不换药”?传统方法学的缺点存在的问题:生产率提高的幅度远不能满足需要;软件重用程度很低;软件仍然很难维护;软件往往不能真正满足用户需要。出现上述问题的原因很多,最根本的是瀑布型开发模型和结构化技术的缺点。传统方法学的缺点瀑布型模型的缺点:僵化瀑布模型要求:生命周期各

2、阶段间遵守严格的顺序。实际情况:软件开发往往在反复实践中完成。瀑布模型要求:预先定义并“冻结”软件需求。实际情况:某些系统的需求的一个逐渐明确的过程,且预先定义的需求到软件完成时可能已经过时。传统方法学的缺点结构化技术的缺点:本质上是功能分解,以实现功能的过程为中心,而用户的需求变化主要是针对功能的。这就使基于过程的设计不易被理解;且功能变化往往引起结构变化较大,稳定性不好。系统有明确的边界定义,且系统结构依赖于系统边界的定义,这样的系统不易扩充和修改。结构分析技术对处理的分解过程带有任意性,不同的开发人员开发相同的系统时,可能经过分解而得出不同的软件结构。数据与操作分开处

3、理,可能造成软构件对具体应用环境的依赖,可重用性(reusability)较差。解决问题的途径新的软件开发模型,如快速原型方法、螺旋模型方法等;新的软件开发方法学——面向对象方法学。南京北京Post-officeMessageSendbymethod对象ObjectObject=数据AttributeAttributes:location;employee;……+操作MethodMethods:send;sell;……注意:Object内部的attributes不允许外部用户直接改动,只有当它提供了相应的服务method时,用户才能通过发送message来提请它执行我想把邮

4、局搬到我家门口,多加几个邮递员,24小时都开门……对不起,本邮局不提供此类服务唉,那就先送束花吧——Post_office.Send(request,payment)面向对象方法学(OOM)面向对象方法学OOM特点:尽可能模拟人类习惯的思维方式,即问题域与求解域在结构上尽可能一致与传统方法相反,OOM以数据或信息为主线,把数据和处理结合构成统一体——对象。这时程序不再是一系列工作在数据上的函数集合,而是相互协作又彼此独立的对象的集合OOM=Object+Class+Inheritance+Communicationwithmessages面向对象方法学OOM传统方法数据与过

5、程是分离的对象把数据和处理数据的方法封装成一个单元数据实体输入过程2过程1过程3输出属于该对象的数据对象处理数据的方法消息消息传统方法和面向对象方法的比较传统方法和面向对象方法的比较传统方法系统是过程的集合过程与数据实体交互过程接受输入并产生输出面向对象方法系统是交互对象的集合对象与人或其它对象交互对象发送与响应消息把问题当作一组相互作用的实体,并确定实体间关系面向功能,把系统看成一组功能OOM:以object为核心,强调对现实概念的模拟而不强调算法。“面向对象方法学的基本原则,是按照人们习惯的思维方式建立问题域的模型,开发出尽可能直观、自然地表现求解方法的软件系统”。C

6、lass:由特殊到一般的归纳(induction)Inheritance:由一般到特殊的演绎(deduction)①传统方法:面向过程设计,以计算为核心,数据与操作分离,不易理解。OOM的优点OOM:以object模拟实体,需求变化不会引起结构的整体变化,因为实体相对稳定,故系统也相应稳定。②传统方法:结构依赖于功能,不稳定。③传统方法:通过建立标准函数库来重用软构件。但标准函数缺少必要的“柔性”,难以适应不同场合的不同需要。OOM:一个class(类)所有的instances(实例)都可重用它的代码;由inheritance(继承)派生出的新的class可重用其父类的代

7、码,并且可以修改、扩充而不影响其父类的使用。OOM的优点稳定性好:软件功能需求的变化不牵动全局,只需局部修改;Class独立性强:只要修改不涉及class的对外接口,则内部修改完全不影响外部调用;继承性(Inheritance)和多态性(polymorphism)使其很容易被修改和扩充;容易理解;④传统方法:可维护性是最令人头痛的问题。OOM:从以下几方面改善了可维护性——有这一条就什么都好办了!容易测试、调试。这一点还可商榷OOM的优点注:OOM并不是减少了开发时间,而是通过提高可重用性、可维护性,进行扩充和修

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。