平台化软件的设计与应用前景分析

平台化软件的设计与应用前景分析

http://www.cnblogs.com/spring_wang/p/3344305.html

1.背景描述

近年来,在政策和市场的双重拉动下,中国软件市场保持了持续快速的增长。2002年,中国软件市场实现了21.1%的增长率,销售额达到345 亿元。2003年,中国软件市场销售额达到400亿元左右,软件市场进一步升温。在几百亿元的市场规模下,掩盖了这样一个事实:软件项目成功率非常低。根据统计,超过80%的项目不能在最初估计的预算和进度内成功交付。这对用户和厂商都产生了严重的影响,对于软件产业的健康成长也非常不利。用户对厂商的效率和能力产生怀疑,对使用软件的效果产生怀疑。

厂商在项目过程中难以维持健康的现金流和获得足够的利润,无力提升产品研发水平和效率。业界一直在试图解决这种恶性循环,解决方法一是靠软件工程,厂商采用更科学、更规范的流程组织项目开发,如软件生产过程中的CMM(软件成熟度模型)规范;二是靠软件技术。而就软件技术而言,平台化技术是软件产品发展的重要趋势,平台化的软件具有独立性、开放性、可管理性和可扩展性等特点。

平台化软件分为技术支撑型平台和应用实现型平台。技术支撑型平台的用户为软件开发人员,提供商负责平台的维护和升级,用户负责基于平台的上层实现。这类平台包括软件中间件、开发工具、应用服务器等。应用实现型平台的用户为终端用户,提供商不但负责平台的维护和升级,还要负责实现基于平台的上层应用。

例如:一个网站使用应用服务器WebLogic为技术支撑型平台,服务器的提供商(BEA)不会负责具体网站内容的建设。而应用实现型平台(如集尔普的Our-ERP系统)不但负责平台的维护和升级,更重要的是负责上层应用的实现,如企业管理软件中的财务管理,进销存,校园管理中的总务管理,教务管理等。本文章主要描述应用开发型平台的目标,定义,技术架构,实现和应用前景。

如果没有特殊说明,在后面描述中平台化软件指应用开发型平台软件。

2.平台化软件的设计要求

1)具备灵活方便的二次开发能力

传统的管理软件大多脱胎于财务软件和MRPII的结合,这种结合不仅生硬、集成度不高,而且结构僵化、死板,无法适应千变万化的企业环境和需求,在客户化和二次开发过程时往往进度缓慢,实施困难。作为新一代软件系统,平台化软件则应该具备更好的应用开发和维护的工具和接口,实施时可以迅速根据用户的特点进行部署和二次开发,用户可以最大限度地使用贴近自身特点的管理软件。

2)实现分布式应用系统

传统的管理软件局限于内部的资源管理。平台化软件应该将整条产业链上的多家企业通过Internet和数据平台组成一个更加紧密的协同化生产组织,实现企业与企业之间的资源共享,疏通企业的各自的信息孤岛,实现各类功能互连、互通、互动的有效集成。过去以自身为主的企业与企业之间的竞争,转变成为协同化作业的企业链与企业链之间的竞争,极大地增强企业的竞争能力。

3)做到硬件独立和软件环境独立

这样做给用户带来的好处是,用户不必关心采用何种硬件或数据库平台,应用软件也不受硬件平台的迁移的影响。例如,大部分传统的国产管理软件系统只能支持windows操作系统和MS SQL Server数据库,对UNIX、OS/390等大型主机平台以及Oracle、DB2等企业级数据库就无能为力,而新一代的平台化软件则可以支持各种操作系统平台,多种数据库系统,用户可以有更灵活、广泛的选择余地。

4)实现上层应用的技术无关性

平台化软件使运行于上层的应用软件在某种程度上做到与技术无关,而是面向具体业务;一个平台可以运行企业管理系统、校园管理系统或医院管理系统等。

5)采用B/S与C/S结构相结合

B/S结构具有免安装的特点,C/S则具有更高的安全性,不安装无法访问。只要能上网,就可以通过浏览器对B/S结构系统访问,输入帐号和密码后任意机器(如网吧)可以登录系统。所以,对于网上交易、门户网站等可以采用B/S结构,但是对于重要的内部数据,如财务管理、物资管理等内部机密资料和数据,最好采用C/S结构。但是无论B/S还是C/S结构,都必须采用分布式结构,可远程网络访问,平台设计采用三层结构。

此外,工作流、报表图表工具等也应与应用开发工具组合在一起,提供一个支持管理应用开发的平台。

  3.平台化软件的设计思路

1)平台架构

平台架构包括了系统的用户终端、系统管理工具和应用开发工具。用户终端主要用于组织和呈现上层应用系统内容,使用者为终端用户,如会计人员可以在用户终端进行财务数据的处理。系统管理工具主要用于上层应用和运行环境的基本维护,如系统日志查看,人员信息维护等。

应用开发工具在不同阶段可以由不同的人员维护。在应用系统开发期间由平台提供商的系统建模人员使用,用于设计和实现上层应用系统;在系统维护期间,由平台提供商的系统维护人员和用户的系统管理员共同使用(应该主要由平台提供商的系统维护人员负责)。

2)上层应用

由于平台化软件的技术无关性和应用无关性,平台化软件可以广泛使用在社会的各个领域和各个行业,例如企业、学校、医院等,除了特殊需求 (硬件与外部系统接口等)外,其他部分可以通过应用开发工具,实现免编程的应用系统构筑。上层系统的构筑之前应进行相信的需求调研和分析,进行系统的设计和论证,使用平台的应用开发工具进行系统的免编程实现在总体工作量中只能占到1/3-1/4。

3)运行环境及其他

包括应用服务器、数据库系统、远程通讯系统、操作系统。着名的应用服务器厂商包括BEA WebLogic, IBM WebSphere, JBoss Org等。数据库系统包括Oracle、IBM DB2,MS SQL SERVER等。远程通讯系统的设计应优先考虑网络传输速度问题。系统的设计还应该能够跨平台应用,Windows/Unix系统可以联合使用,如应用服务器能够运行在高性能的多CPU的Solaris或OS2操作系统上。

 4.平台化软件的优势

1)应用的广泛性

平台化软件的功能更加全面、覆盖面更加广泛。在过去,各类独立功能的管理软件名目繁多,很难集成,例如客户关系管理(CRM)、人力资源管理 (HR)、物流管理(LM)、教务管理,图书管理等,企业、学校或医院的人、财、物不能得到统一的管理和监控。ERP能有效地将财务管理、销售管理、财务管理、客户关系、采购与库存、人力资源等各种管理模块集成在一起,形成一个庞大的系统。平台化软件的各种信息统一存储,实现管理信息的共享,从而提高各级组织内部有效的协作和快速反应。

2)良好的开发性

与其他软件不同的是,平台化软件是由建立在共同平台上的一个系统,模块相互之间既具有较强的独立性,又可以独立使用,通过统一的数据接口又以可实现相互间的无缝集成,同时可以实现一致的对外接口。因此,平台化软件具有更大程度的灵活性和扩展性,不仅可以根据客户当前的需求进行选择和搭配使用,而且具备了更好的二次开发接口。

3)快捷的适应性

用户需求变更使软件提供商最头痛的事情,但由于双方的沟通和理解不同,软件系统在研发和使用过程中需求变更不可避免。据统计,软件源码 20%以上的变动所需的工作量就不会小于重新开发一套系统,这也是软件系统失败的主要原因之一。平台化软件的上层应用开发工具可以实现免编程的应用系统修改,具有更快捷、方便的适应能力。

    5.平台化软件的应用前景

设计良好的平台化软件应可以普遍应用于企业管理系统、校园管理系统、电子政务、医院管理系统等各行各业。企业管理软件中的销售与分销管理、生产管理、库存与采购管理、客户关系管理、办公自动化、人力资源管理等系统可以完全集成为一个系统,所有的企业资源(人、财、物)全部共享,全面降低企业的运营成本。

校园管理系统中的总务与后勤管理、教务管理、办公自动化、注册与离校系统可以集成为一个系统,实现学校的集中式管理,严格控制支出和消耗。医院管理系统的收费与挂号、财务管理、住院管理、医生站护士站等可以集成为一个系统,实现快捷、方便的医院管理。

2002年初,Gartner公司(ERP/MRPII理论的首创者)在对未来软件架构发展报告中认为平台化软件是管理软件的发展趋势。目前,由于平台化软件不可替代的优越性,SAP、Oracle等国外管理软件公司的产品都已经转向平台化,许多国产管理软件开发商都在宣称要将战略重点转向平台化软件,甚至宣称自己现在的产品就是平台化产品。

进入2004年以后,第一代ERP悄然消退的趋势更加明显。笔者认为,真正的平台化产品不应该在原有的固化的软件基础上的改造,因为原有的系统使用硬写代码的方式实现,无法与新型的平台化软件的运行支撑系统和应用开发工具结合,实现客户个性化需求的免编程定制。新型的平台化产品必须具备两个基本要素,实现应用的完全可定制,而不是原有系统外围的所谓“二次开发”。

由于平台化软件有着诸多优点,许多软件公司准备研发类似产品,十分关心产品研发需要注意的问题。根据统计,平台产品的研发壁垒有三个方面:一是投入资金大,一般一期的产品研发至少要3000万元,而完成成熟产品需要投入近亿元;二是研发周期长,需要2-3年的时间;三是核心技术壁垒高,需要软件技术人员、管理专家的集体参与。

随着中国软件产业的发展,国产管理软件在平台化软件技术和产品上已经有了很大的突破,许多过程的平台化软件产品已经能够与国外软件公司的产品保持同步,这必将给国内众多企业用户带来更大的效益。

声明:转载CIO时代网(www.ciotimes.com)

时间: 2024-10-13 19:22:33

平台化软件的设计与应用前景分析的相关文章

平台化软件开发对企业的优势

软件开发平台化是一种新的软件开发模式,这种模式就是把过去程序员coding开发软件的模式改变为利用稳定的基础架构平台,通过快速的配置的方式将软件开发出来的一种新的开发模式. 从当前的状况来看,软件开发的速度缓慢.价值高昂而又很容易犯错,常常会出产出存在许多缺点的产物,在可用性.可靠性.功用.安全以及其他服务质量方面形成严峻的难题. 依据计算,美国公司每年出资约175,000个软件开发项目,出资额约为2500亿美元.这些项目中只要16%能够在预算内按计划完结.还有31%的项目首要因为质量难题而被撤

连载《一个程序猿的生命周期》-12.费尽心力的平台化构想

作为一名程序猿,在不懂这个行业的人眼里是光鲜的,高收入.高技术.往往我们把自己看成了异类,沉默.少语.只有在回帖的时候才像个正常人,不会人与人面 对面沟通.其实,程序猿和其他行业没有什么区别,只是一个工种而已,喜欢就干,不喜欢就另谋生路.如果仅仅是为了生活,那一切的一切都无所谓了. 严格意义上讲,我只能算作半个程序猿.首先,公司不是IT公司,只是传统行业有软件部分的工作.其次,开发的人员也无所谓全体,算上我只有三个人,在我 来之前也仅仅维护两个上位机软件,一个是VC++开发的,一个是VB开发,分

连载《一个程序员的成长历程》-12.费尽心力的平台化构想

作为一名程序猿,在不懂这个行业的人眼里是光鲜的,高收入.高技术.往往我们把自己看成了异类,沉默.少语.只有在回帖的时候才像个正常人,不会人与人面对面沟通.其实,程序猿和其他行业没有什么区别,只是一个工种而已,喜欢就干,不喜欢就另谋生路.如果仅仅是为了生活,那一切的一切都无所谓了. 严格意义上讲,我只能算作半个程序猿.首先,公司不是IT公司,只是传统行业有软件部分的工作.其次,开发的人员也无所谓全体,算上我只有三个人,在我来之前也仅仅维护两个上位机软件,一个是VC++开发的,一个是VB开发,分别负

(转)关于软件产品化,平台化的思考

国内很多软件企业尤其是行业软件企业是从开发一.二个软件项目起家的,而且项目规模和复杂度也不大,依赖其中一两个高手,他们能够在客户适度满意的状态下成功完成项目.基于以往研究,成功的主要因素是项目具备以下特点: 如果是需求定制形的项目,项目需求明确且范围不大,变动不多.这样的项目要么客户方需求明确,要么企业对需求足够了解,这样,意味着项目双方至少有一个人对需求有全面并且细致的了解:双方合作氛围很好,这可以减少需求变更的量和避免冲突尖锐. 如是技术引领型的项目,则依赖于企业的独特技术. 企业有一两名技

大数据教你IT运维管理产品选择,专业化or平台化能否兼具?

IT部门在进行IT运维产品选购时,虽然不是什么纠结的事,但是没有选择好,对于你以后在公司的运维工作生活将会寝食难安,你再后悔当初选购时没有生死决择已经晚了,所以在初期会有一个大方向需求,我综合多年和客户沟通需求大数据平台分析,会告诉你在进行IT运维管理时,应该使用什么类型的产品? 那么我们首选的一个标准是专业,所谓的专业主要有两层意思,一是产品在某一领域具一定的权威,专业解决某一应用,比如现在一些IT运维产品单独的机房监控.单独的虚拟机,用户如果管理多个业务需求,就得购买安装多个这样的单独应用系

平台化测试难度大?京东教你如何用无人测试实现产品质量效率双提升

本文内容节选自第六届全球软件案例研究峰会,时任京东B2B产品质量团队负责人杨瑾老师分享的<无人测试如何助力京东提升产品测试效率与质量>实录,重点分享:无人测试,创新测试方法论,接口测试案例.(PPT+文稿). 杨瑾老师拥有10年以上互联网及传统行业测试经验,擅长自动化测试.业务质量测试.性能测试以及持续集成等多领域:行业内资深测试专家,京东测试技术开放日发起人. 编者按:2017年11月9-12日,第六届全球软件案例研究峰会在北京国家会议中心盛大开幕,现场解读2017年「壹佰案例榜单」.时任京

微信&SP平台化策略

从平台架构师的视角看<微信&小程序>平台化策略 By 高焕堂  2017/03/10   1.微信&小程序(SP)的角色 微信的创始人张小龙先生是一位非常杰出的产品和平台设计师.他最近开始让著名的微信(We Chat)产品逐渐迈向平台化,并且巧妙地设计了<小程序(SP)>来衔接到QQ云平台.这是非常有助于让<QQ云+微信>两者携手从产品迈向平台化,并进而建立一个庞大的产业生态. 依据我(高焕堂)的平台战略思维,上图里的平台就像花轿,花轿必须要会动,才是轿

目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行、国家安全等行业领域

目前网络上大部分的网站都是由ASP或PHP开发,并且java平台的软件购买成本不适合中小企业客户,一般适用于银行.国家安全等行业领域. 要求建设开发大型复杂的网站,但仅有一个idea,不能够提供网站详细要求的客户.大型网站的建设开发的过程,是一个严谨的有详细规范的逻辑流程,必须要形成文字(文档)形式的网站建设需求,炎帝科技才能够在网站设计/网站开发的过程中控制网站建设项目质量,顺利成功完成.此类最典型的客户口头禅就是“我要做一个类似facebook的网站”,“我要做淘宝那样的网站”,此类客户自己

用扁平化的界面设计吸引用户

在传统的网页开发乃至现在针对移动设备所做的设计,复杂炫目的效果对产品而言未必是一个好的选择. 尤其在移动设备上,过于复杂的效果非但很少能为应用吸引用户,反而时常让用户在视觉上产生疲劳,对产品界面中最基本的功能产生认知上的障碍.因此我们在设计中就需要参考“扁平化”的美学.UI界面设计 什么是扁平化设计 在实际当中,“扁平化设计”一词所指的是抛弃那些已经流行多年的渐变.阴影.高光等拟真视觉效果,从而打造出一种看上去更“平”的界面.北京UI设计 Layervault的设计师Allen Grinshte