通用办公业务平台开发框架研究系列(1)-开发框架的必要性

来源:互联网 发布:java重写例子 编辑:程序博客网 时间:2024/04/27 10:24

    目前,大部分的政府部门和企业已经或多或少的建立起来了一些软件应用系统,用于支撑日常的办公活动和业务,但是这些系统通常只是定位于解决某一方面的工作任务,系统之间缺乏必要联系和组织。简单的来说,这些系统可以分为两大类:办公自动化系统(OAOffice Automation System)和业务管理系统(OMOperation Management System)。通常来说,OA系统是面向整个组织的,主要关注的是信息的传递和共享,从而提高组织日常工作的效率和可控性;而OM系统是面向的是组织中的部分人或部门,主要关注依据特有的业务规则,完成业务信息的加工和管理。
    经过多年发展,
OA系统的功能越来越丰富,像公文管理、工作流、电子邮件、即时通信等都已经成为“标配”,与此同时OM系统的功能也越来越强大。当用户的日常工作越来越依赖于这两类系统时,用户便开始关注OA系统和OM系统之间的整合问题了。实际上,用户希望得到的就是一个统一的、综合的办公业务平台,他可以在这个平台上完成所有的日常工作。SOA的迅速发展是这个问题最好的证明。  
    所以说为最终用户提供一个
OA+OM的通用办公平台是大势所趋。  
    软件开发组织总是希望具备快速交付高质量系统的能力。而具备这种能力的最佳途径就是尽可能的追求重用,追求产品化的方向。从目前情况看,追求
OM系统的完全产品化几乎是不可能的,基本上都还要采用定制开发,而OA系统已经较为成熟,市场上已经存在很多产品。结合这两方面的情况看,形成一个半产品化的通用办公业务平台开发框架是一个合适的方向。
    除了考虑市场因素外,还应该考虑软件开发组织长期发展的需要。对于一个软件开发组织来说,加强代码的重用只是提高生产力的一个方面,更重要的是关注知识的积累。而一个持续发展的开发框架不仅要作为快速交付高质量系统的基础,还是进行知识积累最好的介质。一个以项目为工作核心的开发组织,不论在业务上还是技术上都缺乏进行知识积累的有效手段,知识更多的存在于头脑中,难以进行传递和重用。由于知识不能在组织内得到有效的积累,所以每一个项目几乎都要从头开始。虽然每一个项目多少会有些进步,但是在时间和资源的压力下这些进步几乎没有意义,结果就是不断在低水平上重复开发工作。对于一个组织来说,这绝不仅仅是能否以低成本交付一个好系统的问题,关键在于这种周而复始导致参与其中的成员逐渐失去对工作的热情和乐趣,要不然就选择消沉,要不然就选择离开,结果又进一步导致失去积累。所以,以自有开发框架为介质,建立一套有效的知识积累机制对于组织的长期发展具有重大积极意义。

    从技术的角度看,随着开源社区的壮大,很多基础功能的都可以采用拿来主义,实现一个通用办公业务平台不存在任何技术障碍。实现开发框架的主要任务就是挑选适当的、开放的成果,将它们集成起来。现在已有的各种开发框架或平台,不论是商用的还是私有的也基本上都是采用这种方式构建,不同的只是集成的方式和程度。    综上所述,不论从市场的角度,组织长期发展的角度,还是技术的角度,建立一个通用办公业务平台(GOO Generic Office Operation Platform)开发框架都是适当的、必须的选择。