信息化 频道

XML 面向 B2B 供应链的信息重组

    在B2B供应链中应用XML的利弊分析

    XML作为现代计算机发展的一种新兴技术,已经成为一种潮流和标准,尤其在商业领域,随着各种主流的编程语言及软件平台纷纷提供了对XML的支持,使得我们可以快速开发出基于XML的各类商业应用。具体在我们的B2B电子商务供应链系统开发中,如果使用XML来传递与处理信息流,可以为开发者与使用者带来如下好处:

    ·XML是经过检验的国际标准,使用XML可以放心使用与其相关的现成技术; 

    ·XML是面向数据与具体应用无关的,因此在一个应用模块中引用XML不会影响到其它应用; 

    ·数据的定义与实际应用相独立,有利于模块化开发和测试工作。 

    ·产品BOM表结构通常都是树状的,使用XML可以方便的建立、修改、维护、查询BOM树; 

    ·在供应链系统中存在大量的单据信息,同一份单据可能在多个应用模块间流转,使用XML可以简单的对单据进行校验、转化、显示及同步; 

    ·XML的编程接口是一套中性的API,常用的编程语言如JAVA、C++、VB等都可以对XML数据进行编辑,检索,如果用XML进行数据传递,各应用模块就可以采用不同的编程语言编写; 

    ·通过外部定义的不同规格的DTD或Schema,可以对同一套XML数据作出不同的与环境相适宜的解析; 

    ·本系统将来若要与外部另一使用不同DTD定义的应用平台进行数据交换,只要做一DTD<->DTD的映射即可(通过XSLT),XML数据至XML数据的转换较传统的结构化数据转换要便捷得多; 

    ·由于使用了XML,将来另一批开发人员要开发一个应用程序与我们的系统进行通讯就非常方便,只要参照我们制定的DTD/Schema就可以了; 

    ·目前所有的主流数据库管理系统都开始支持XML,比如在ORACLE 8i以上,DB2 7.0以上,SQL Server2000中,都直接支持XML文档到数据库的双向数据读写; 

    ·XML采用了典型的树型结构,因此对一个XML对象的操作如遍历、查询、删减、添加、重建等只要遵循经典的树操作便可; 

    ·系统内部使用格式规范,定义统一的数据集,无需中间件的翻译,从而简化了数据流程、节约了系统资源。 

    尽管XML具有如此多优点,不过毕竟还是一种正在发展中的新技术,目前在中国还缺少成功的商业案例,而从一个开发人员的角度而言,把一个项目确实的完成是最重要的,所以在项目的可行性研究阶段还是应充分考虑使用XML有可能遇到的困难:

    ·如使用DOM接口编程,需要在内存中还原整个XML对象树,而这对于一些大的XML文档而言不仅会占用许多系统资源,还会造成处理的延时; 

    ·XML及目前基于XML的网络协议本身并不提供安全保密设置,由于XML默认使用Unicode编码,而且具有面向数据的特性,因此很容易在传输过程中被人破译出其中的商业机密; 

    ·若客户原有部分计算机应用并不想丢弃,而我们的项目要共享原有的数据库系统,由于采用了XML,势必对原数据库系统进行改造;如果为了保证原系统的完整性,将我们的系统独立运行于一个新的平台,显然又会造成资源的浪费; 

    ·XML的使用是全程的,这意味着对几乎所有开发人员而言,都必须了解XML的相关知识和编程接口,从而有可能延长开发周期; 

    ·使用XML的重要目的是想为系统带来优良的可扩展性,及将来在不同系统、不同平台间转换数据时可简化流程。然而这种期望是有前提的,即我们设计的这套DTD/Schema本身是科学的、灵活的、标准的。基于中国的国情、企业的规模,行业的专门性,如何定制一套合理的商业XML规范非常关键也非常困难; 

    ·XML目前是V1.0,还很不完善,将来也必然会有所改动,而且XML发展太快,尤其在中国,其未来的方向不可预见,将来几年内在某些行业是否会有标准推出尚不可知,如何与将来接轨,对于开发人员而言实在难以把握; 

    ·如何建立XML规范,XML对象树的根节点定义在哪一级上,是制定一个基本的XML规范,以后再在此基础上做向上兼容的标记扩充;还是制定一套完整的用于作为行业标准的XML规范,后一种,不仅需要有熟悉企业及行业机制的人士参与制定,还应参照已有的相关的国际标准如BIZTALK、EDI等,才有可能使其与国际标准相接轨; 

    ·对于一般应用,是否需要调用外部定义的DTD/Schema,还是将XML规范隐含在应用程序内部,这样,尽管会减少程序设计的负责度,但同时也会丧失基于XML信息处理的可扩展性; 

    ·XML能够为系统运行减少中间环节、节省资源是显然的,然而作为一种新技术,在系统设计中需要开发人员掌握新的开发知识,因此要先强化技术人员的XML知识、选择合理的XML开发工具,这些工作的时间量在安排开发周期时都必须考虑到。
 

0
相关文章