作为新兴应用软件的协同软件,和作为新型软件架构思想的SOA(面向服务架构,Service-orientedarchitecture),在软件应用领域和在软件技术领域都受到了追捧和热烈探讨。协同软件和SOA的一同出现,是必然还是偶然?是珠联壁合还是阴差阳错?思考这些问题,有助于我们更加了解协同软件和SOA。
协同开始面向组件
协同软件作为一种新的软件门类,其产生和发展不过近几年的事情。但协同软件的应用思想,却是随着管理软件的发展之初就已经存在,只不过当时“协同”并未成为一个成熟和重要的概念被提及。在管理软件应用的早期,MIS(管理信息系统,Management Information System)和OA(办公自动化,Office Automatization)曾经是两个无所不包而又含混不清的信息化应用概念,广泛地被提及。后来,ERP、CRM、SCM等相对更为明确的信息化应用理念,开始从宽泛而无法确指的MIS和OA中脱离出来,成为更为专业的信息化应用领域。
继ERP、CRM、SCM等信息化应用概念之后,协同软件在理论和应用等方面发展都极为迅速,这主要得益于协同软件适应了互联网时代全球一体化协作管理的要求。在协同软件刚刚兴起之初,软件的开发思想已经走过了“面向过程”、“面向对象”的历程,正处在“面向组件”的时期。
这一时期,“面向组件”的应用平台成为最为热门的软件思潮之一,国内许多专业的协同软件厂商都是基于平台化思想,推出自己的协同软件产品。虽然平台化的应用解决了协同软件在开发时的效率问题,但基于平台的应用在业务服务的体现上还是有所不足,许多平台的设置工作还无法在应用层面做到。
2002年12月,在Gartner提出SOA是“现代应用开发领域最重要的课题”的同时,复旦协达即确定了“用SOA思想深入发展协同应用平台”的下一代产品研发道路。SOA作为新一代的软件架构,一经问世便广受赞誉,并迅速在软件研发中予以应用。
Gartner出具的资料还表明:从2003年开始SOA软件需求以20%的比率急剧增长,到2006年,在全球销售出的所有商业应用软件产品,SOA的将超过 80% 。正是在这一背景的促使下,SOA才成为复旦协达等专业软件厂商技术关注的焦点。
抽象与耦合,协同软件的应用精髓
SOA可以简单的理解为“抽象、松散耦合和粗粒度”的软件架构,它可以根据服务请求通过分布式网络对松散耦合的应用群件进行部署、组合和使用。
在协同软件的应用中,参与协同的事务几乎可以包括用户单位的行政办公和业务处理的方方面面,从收文、发文等公文管理,到客户、人事等业务管理,甚至到制造型企业的生产管理等等,协同的身影无处不在。在众多的管理事务中,“表单”和“流程”成为管理事务的两个重要载体,其中,表单成为管理内容的载体,记载管理的各项事务内容项目、流程成为管理的过程载体,以标明事务的流转方向和驱动逻辑条件。抽象出来的“表单”和“流程”通过一定规则进行耦合,可以服务于各项管理事务,并可以分组建立起不同的专项管理应用方案。
以我国首套SOA协同软件复旦协达CTOP协同软件为例,软件中所有的协同事务管理功能,都是由基于SOA的“表单”和“流程”组成。例如:发文这一事务,由一张记载发文的时间、主题、内容、重要级别等内容的表单,和一组从“撰稿”到“核稿”到“会签”的流程,组合在一起用以管理;再例如:人事招聘这一事务,可以在软件中由记载人事招聘相关的内容表单,和一组从招聘发起到最终人员入职的流程,组合在一起完成。
大量定制,协同软件借SOA走向普及
与面向组件的软件开发思想一样,SOA可以实现软件程序的大量复用。与面向组件不同的是,SOA复用的软件程序,不仅仅是在开发层被调用,而是在应用层可以被用户调用。这些被调用的“软件服务”,其功能“粒度”比“软件组件”更粗,因此在应用的时候也更为简便。
直接用户通过调用SOA的程序服务,可以建立适合自己的软件应用功能。SOA带给协同软件在功能和应用上,与传统的ERP、CRM等软件有变革性地突破,软件功能不再被固化,“非结构化”的应用数据和功能大行其道。在软件的“通用”与“个性”之间,SOA为管理软件找到了一条中间路线,软件的大批量定制成为可能。从这一意义上而言,SOA对协同软件的应用普及,具有不可磨灭的功勋!
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。
-
购买应用集成工具可以采取平衡做法
购买应用程序集成工具需要好好看看你的公司需求,知道从供应商里面要寻找哪些关键功能。