结构化方法与面向对象方法的比较分析

结构化方法与面向对象方法的比较分析

ID:32171682

大小:51.50 KB

页数:4页

时间:2019-02-01

结构化方法与面向对象方法的比较分析_第1页
结构化方法与面向对象方法的比较分析_第2页
结构化方法与面向对象方法的比较分析_第3页
结构化方法与面向对象方法的比较分析_第4页
资源描述:

《结构化方法与面向对象方法的比较分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、结构化方法与面向对象方法的比较分析吴松娇(凯里学院信息工程学院,09本(1)班,2009406012)摘 要:剖析了结构化方法和面向对象方法这两种软件开发方法具体的分析设计过程,讨论了各自在不同软件开发中的应用及局限性,提出了在选用面向对象方法开发大型软件系统的同时可结合结构化方法.通过对具体实例的剖析,揭示DFD与UML之间的对应关系,从而提出结构化软件分析方法与面向对象软件分析方法存在的对应关系,在软件需求分析方法上实现了二者的相互转换,这种对应与转换关系对现有结构化软件的维护及再工程具有指导意义。关键词:软件开发;结构化方法;面向对

2、象方法;问题域20世纪60年代以来,软件的发展一直受到开发综合症“软件危机”的影响.为了提高软件质量,软件开发方法不断推陈出新,其中结构化方法[1,2]经过30多年的研究及应用,最为成熟且影响最大,直到现在仍有许多系统是用它开发的.而面向对象方法[1,3]是在结构化方法、信息建模方法等基础上发展起来的,近10年来发展较快,现已呈现出取代结构化方法的趋势.本文具体分析两者在软件开发中的差别以及面向对象方法的优越性.1 结构化方法结构化方法基于功能分解设计系统结构,通过不断把复杂的处理逐层分解来简化问题,它从内部功能上模拟客观世界.用结构化开

3、发的软件运行效率较高,且能够增加软件系统的可靠性.1.1 结构化分析它是面向数据流进行需求分析的方法,在该阶段力求寻找功能及功能之间的说明.它主要采用的工具是数据流图DFD(DataFlowDiagram),利用DFD描述边界和数据处理过程的关系.1.2 结构化设计结构化设计是将数据流图表示的信息转换成程序结构的设计描述,在该阶段力求寻找功能的实现方法,采用系统结构图表示系统所具有的功能和功能之间的关系.设计过程分两步完成,第一步以需求分析的结果作为出发点,构造出一个具体的系统设计方案,决定系统的模块结构(包括决定模块的划分、模块间的数据

4、传递及调用关系).第二步详细设计即过程设计,在总体设计的基础上,确定每个模块的内部结构和算法,最终产生每个模块的程序流程图.因此,结构化方法比较适合于像操作系统、实时处理系统等这样的以功能为主的系统.1.3 结构化方法的局限(1)结构化方法在需求分析中对问题域的认识和描述不是以问题域中固有的事物作为基本单位,而是打破了各项事物之间的界限,在全局范围内以数据流为中心进行分析,所以分析结果不能直接反映问题域.同时,当系统较复杂时,很难检验分析的正确性.因此,结构化分析方法容易隐蔽一些对问题域的理解偏差,与后续开发阶段的衔接也比较困难;(2)结

5、构化方法中设计文档很难与分析文档对应,因为二者的表示体系不一致.结构化方法的结果2数据流图(DFD)和结构化设计结果2模块结构图(MSD)是两种不同的表示体系,从分析到设计的“转换”实际上并不存在可靠的转换规则,而是带有人为的随意性,容易因理解上的错误而埋下隐患,使得设计文档与问题域的本来面貌相差甚远;(3)结构化方法对需求变化的适应能力比较弱,软件系统结构对功能的变化十分敏感,功能的变化会引起一个加工和它相连的许多数据流的修改,同时设计出的软件难以重用,延缓了开发的过程.2面向对象方法面向对象方法是从内部结构上模拟客观世界,其基本思想为

6、:对象是对现实世界客观实体的描述,均由其属性和相关操作组成,是系统描述的基本单位.面向对象方法更强调运用人类在日常的逻辑思维中经常采用的思想方法和原则,例如抽象、分类、继承、聚合、封装等,这使得软件开发者能更有效地思考问题,并以其他人也能看得懂的方式把自己的认识表达出来.OOA和OOD的软件开发方法层出不穷,其中有代表性的有Coad和Yourdon的五层次分析方法和四组件设计方法、Booch的静态和动态的描述方法以及Rumbaugh的三种模型描述法等,这些方法都有各自的特点.但总的来说,这些方法还不完善.目前OO方法所采用的统一建模语言U

7、ML(UnifiedModelingLanguage)[4~6],它是面向对象开发中一种通用的、图形化的模型语言,是近代软件工程环境中对象分析和设计的重要工具.以下通过UML语言来分析OOA和OOD过程.2.1 面向对象分析OOA阶段是通过行为分析法认定对象及它们之间的关系.具体过程如下:(1)使用用例图1(UseCaseDiagram)从用户角度描顾客述系统功能并指出各功能的操作者.用例(UseCase)是指用户使用系统时所执提供商品行的一个与行为相关的事务序列,这个序列是在与系统的会话中完成的.用例处理电话请求类型之间存在三种关系:角

8、色(Actor)与用例使用关系之间的连接,用例之间的使用(Use)和订购商品扩展(Extend)关系,通过角色执行用例,可以识别出不同的用例.图1显示了顾扩展关系客和销售商通过电话联系的用例模

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

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

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