移动办公系统在新闻门户网站的研发及应用

  • 优秀论文奖
  • 文章作者:中国新闻技术工作者联合会 2021/12/30-04:43 阅读: loading...

    祁江波 陈震

     

    (华龙网 重庆市北部新区青枫北路18号凤凰座A栋7楼 邮编:401320 )

    摘要:本文首先概括地介绍了办公自动化系统的概念,以及办公自动化系统在国内研发和使用的现状。然后,较为全面地介绍了华龙网作为重点新闻门户网站自主研发的移动办公自动化系统(M-Office)的技术架构、功能模块以及产品特点等。最后,分析了该M-Office系统在新闻门户网站的实际应用情况。

    关键词:办公自动化系统(OA) 系统架构 云计算 工作流引擎 中间件 JavaEE 面向对象 办公自动化系统(OA),从其诞生到现在已近30年的历史。在其诞生的初期,主要用于管理组织内的文档,其存储介质主要有磁盘文件、关系数据库;进入发展中期的90年代至21世纪初,OA又加入了网络化、流程管理和即时通讯等重要的元素;最近,云计算、移动办公等新技术也成为当今OA系统的亮点,如今的办公自动化系统是具备人员管理、流程审批、协同工作、公文管理、文档管理、信息中心等核心功能,并兼有沟通工具、计划管理、任务管理、系统集成、门户定制、通讯录、常用工具等辅助功能于一体的企业日常工作最重要的IT基础系统之一。 目前国内的办公自动化系统主要以产品的方式销售。从其采用的技术架构和应用领域可以分为以下几个层面:

    1.采用JavaEE技术,定位中高端市场,它的代表有九思软件、用友致远,它们的产品占领了中国移动、中国电信、海尔集团、浪潮集团、中国石化等国内大型企业和政府机构的绝大份额,它们同时也是东软、浪潮、中软、神码、联通、移动等大公司的OA战略合作商。这些高端的OA产品功能强大、结构复杂、产品成熟、用户量巨大,但产品实施维护周期长,价格也相当高昂。

    2.采用IBM的LOTUS平台,定位高端市场,专注钢铁、航空等行业应用整体解决方案,但由于其技术架构过时,其市场份额已经出现了严重萎缩。

    3.采用微软平台、.net技术,定位中低端市场,其代表有金和软件等。

    4.采用PHP、asp等脚本技术,这种OA产品主要是一些较小的软件公司在使用,其开发周期较快,其产品具有基本的办公系统功能,价格低廉,但其技术架构和软件设计不规范,产品稳定性差,其技术不被大中型软件系统设计所采用。 华龙网做为全国重点新闻网站,同时也是重庆市的新闻门户,近年来,其发展速度非常快,短短几年,alexa世界排名跃身并保持在2000位左右,日均IP在200万、PV在1500万,不仅在重庆有相当的影响力,在全国同类网站中也排名靠前。随着华龙网影响力的扩大,华龙网的分支机构和人员也在不断增加,不同部门、人员、上下级之间的工作协调成为了影响工作效率的重要因素。虽然华龙网有较强的技术实力,但由于工作重心在互联网领域,而内部信息化建设起步较晚,因此,在这种情况下,网站急需一套适合自身的办公自动化系统。 在了解了华龙网办公系统的具体需求后,其需求较为复杂和特殊,许多功能需要定制开发,一般的商业OA产品不能满足,并且华龙网技术部在软件研发上有较强的实力,以及对OA核心技术上的技术储备,同时,考虑节约大量的资金及后期维护的成本,网站决定自主研发该办公自动化系统。 在研发之前,华龙网技术部比较全面地调研了行业同类产品的优劣,并从长远角度规划了该企业级软件的设计蓝图,决定采用软件行业先进的项目管理方法以及JavaEE技术设计这套办公自动化系统(M-Office)。 系统架构如图1: 设计这套M-Office系统时,我们并没有采用了重量级JavaEE设计模型EJB3.0,而是选用了轻量级JavaEE设计模型SSH2(Stuts2 + Spring + Hibernate),这样的选择主要是由于SSH2模型相比EJB3.0模型已经足够成熟,并且非常规范,而且在开发周期和开发成本上SSH2还有较大的优势,而它们的差别:主要是EJB3.0模型在分布式事务和EJB容器等技术上的优势,这些优势对于大多数软件系统却很少触及。使用JavaEE技术架构来组织大型软件系统的开发,不仅可以沿用其在软件行业成熟的项目管理方法、代码开发的规范、文档撰写的标准,而且可以站在众多成熟的中间件技术的巨人肩膀之上,而不被“百层大楼从零起”的传统开发方式所困,为此,我们在该项目中引入了许多成熟高效的中间件技术,比如,M-OFFICE的核心数据流转,我们采用了业内广泛使用的JBPM流程管理引擎;数据访问,采用了成熟的ORMapping框架(对象关系映射)Hibernate等;这些中间件的融入,使M-OFFICE更加的成熟和模块化,并且大大地提高了开发效率。不仅如此,M-OFFCIE系统还有着科学而严谨的分层架构,整个系统严格遵循MVC(模型-视图-控制器)设计模式,同时,为了清晰的区分业务逻辑和兼顾代码的可读性,M-OFFICE系统的所有组件(对象模型)都由Spring容器(对象工厂)统一管理,这样的设计从全局角度保证了系统代码的长期可维护性,是业内公认最为先进的软件设计方法。系统的分层结构如下:客户端采用组件化Javascript框架ExtJs解析服务器传来的Json报文;服务端表现层采用了Struts2技术将Json数据封装并传送给客户端;业务层实现了系统的所有重要逻辑;在持久层(数据层)采用了Hibernate技术隔离底层数据库,使系统可以在Mysql、Oracle等多种数据源之间切换。这样经过表现层--业务层--持久层的分隔,整个M-OFFICE系统在架构设计上十分清晰。同时,我们还对M-OFFICE系统中高频率使用的组件进行了再次封装和抽象,实现了一套自主的高效、优秀的开发框架。由于采用了较为合理的技术架构,M-OFFICE系统可以无缝地在Unix、Linux、Freebsd、Windows等多种操作系统和多种数据库上部署,同时还能针对高负荷实现集群部署方式。 M-Office系统的功能模块设计,充分地从系统的安全性、实用性、扩展性等方面进行了考虑。 登录界面如图2: 在系统安全性的设计上,我们引入了RBAC(基于角色的权限设计模型)的设计理念,并在M-OFFICE的用户模块、权限模块进行了成功的应用。首先,把系统权限细粒度地划分为用户、组织架构、角色、资源、权限等相对稳定的部分,再采用AOP(面向切面编程,主要用于具有横切性质的编程逻辑,如权限、数据库事务、日志等)技术在用户登录和访问相应模块时进行安全的拦截或授权,这样用户权限的变动也就非常的灵活和方便了。 功能列表如图3: 在系统实用性的设计上,我们充分地从使用者的角度出发,设计了美观的界面,系统包括了流程审批、文档管理、信息中心、通讯录等核心模块,精简了不常使用的功能,满足了日常工作的需求,同时缩短了开发和测试的时间。 在系统的扩展性方面,M-OFFICE各模块之间实现了底耦合,任意模块的修改,对其它模块的影响很小;同时在加入新模块时,由于采用了合理的面向对象编程技术,大量通用代码都不用编写,从而使系统在扩展时,也十分易于维护;系统充分考虑到了客户端的变化,具有前瞻性地采用了Json报文(一种传输数据的格式,与平台和客户端无关,比XML更为高效),为苹果、Android等多种客户端的开发预留了通信接口。 M-OFFICE后期的实施过程主要分为三个阶段:首先,在小范围使用,听取核心用户的意见,发现系统的问题,并进行及时的改进。第二个阶段,等系统运行比较稳定后,推广到各部门的业务骨干、中干、网站领导使用,这时出现的问题已经比较少,也便于修改。最终,用户的习惯培养以后,再在全网站推广使用,也就比较顺利了。 该M-OFFICE系统在华龙网已经稳定地使用了一年多的时间,对网站各部门之间、上下级之间的日常工作沟通联系起到了很好的作用,大大提高了工作效率,为华龙网的进一步发展奠定了坚实的基础。

    参考文献: ①(英)福勒(Fowler,M.)著《企业应用架构模式》机械工业出版社 2010.4 14页 ②(美)埃克尔(Eckel,B.)著《Java编程思想(第4版)》机械工业出版社 2007.6 459页 ③ 胡奇著:《jBPM4工作流应用开发指南》,电子工业出版社2010年版,第307页。 ④ 刘伟 著:《设计模式》,清华大学出版社,第47页。 ⑤ 李刚著:《轻量级Java EE企业应用实战-Struts2 + Spring + Hibernate整合开发(第二版)》,电子工业出版社,第642页。 ⑥ 吴春雷 张学辉:“一种基于RBAC扩展模型的Web系统权限控制方法”,《科学技术与工程》,2007(11) ⑦ 蒋彪:“JavaEE是企业级开发首选”,2013(2) CSDN.NET

    编辑:中国新闻技术工作者联合会

    评论 点击评论