面向对象编程与面向流程编程
如果说面向对象技术是实现了对类的复用的话,不同的用例可以通过重新组装已有的类,使得这些类进行合作完成此用例的功能。那么基于流程的应用是要解决什么的复用?目标是要完成对流程的重组、重设计的支持,在变化的是活动间的顺序编排以及相关的数据流向等,那么就要求实现活动级的复用,否则变化的东西太多了,什么技术也无法作到随需应变呀。这里假定不增加新的活动,而可以快速地进行流程重组(设计),完成对流程的灵动性。那么,既然说到活动级的复用,自然要求对用例层面的复用,因为各个活动对应的就是用例或用例组合。可见,面向流程的视角来审视系统比纯面向对象的视角来看待系统复用粒度更大。其实,软件工程方面任何一种先进的技术都是要体现出复用,那么怎么复用率才更高呢?当然是越抽象的东西越容易复用了!抽象就体现出全局观,不能太细节,如果太细节了,即使复用也只是小范围的,面对环境的变化,灵动性自然不高,还需要code才能搞定。现在这个知识经济时代,就是要高效,敏捷性。
既然复用率高,自然就要求相应的需求收集、分析方式进行相应的改变,否则无法达到目标的。读者可以发现,面向流程的视角看企业应用、领域应用更直观、更全局。任何组织发挥作用的是靠团队,靠合作。出了成绩是领导,失败了是下属,已经不符合时代潮流。创造业绩的是流程,是团队,是团队间的合作。这要求我们在做需求收集、分析时以业务流程为主线进行业务梳理,进行业务模型的建立。以外,我们进行需求收集与分析都逃不了子系统,其实出现子系统就使得我们在需求收集分析阶段将流程割裂,后期再来做数据接口与集成始终都只是亡羊补牢,虽然有些效果,但始终只是部分数据的复用。
而现今风靡一时的SOA,则强调以服务为统一口径,进行数据和软件功能(也就是系统用例)的复用,其抽象程度与面向流程有异曲同工之妙。
复用的脚步不会停止,时代的车轮永远转动,让我们的软件拥抱变化,总有一天我们可以自豪地静观变化多端的世界。
原文链接:http://gocom.primeton.com/blog12719_19935.htm
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。
-
联合创新,携手共赢 华为与Commvault签署全球合作联盟协议
【中国,上海,2015年9月19日】在2015年华为云计算大会上,全球领先的信息与通信解决方案供应商华为与美国知名的数据管理软件及相关服务主要供应商Commvault签署全球合作联盟协议。基于合作协议,双方将会加大投入数据中心备份解决方案在云化环境下的“可服务化”技术研究 。Commvault公司全球业务发展副总裁Andreas May、华为IT数据中心解决方案总裁马力出席签约仪式。