1.1 ZLSOFT产品发展的平台之路
信息化应用软件行业是一个快速变化的产业,一个激动人心、充满困惑和挑战的领域,中联作为行业内受到客户普遍尊重软件公司,始终致力于提高适应性和用户自主性,从而提供技术先进、质量上乘、功能最贴近用户需要的精品软件。
1.1.1 ZYGL/ZYSC,自动代码生成
上世纪九十年代初,蹒跚学步的中联还耕耘在基于UNIX操作系统的多用户财务软件领域,为屏蔽操作系统和设备的复杂性,提高开发效率,就在产品底层设计了一个基础平台ZYGL,随后基于它开发的中联管理软件生成器ZYSC;面对日益增加的用户信息化需求,其他厂商还在分析应该开发什么业务应用的时候,中联已经给很多客户完全按自身要求全自动地生成了若干小型独立的管理系统;首次平台成功的研制体验,以及由此带来的高效率和全面满足客户思想的欣喜触动,让中联在往后的每次新技术应用和产品领域拓展台阶上,都不可或缺并不由自主地要进行平台思考…
1.1.2 ZLHIS,第一个商品化的行业大型应用软件
ZLHIS(ZhongLian Hospital Information System)是中联从上世纪末进入医院信息化行业开始,研发的各种医院信息化应用系统的产品总称,至今已经在全国同类软件中拥有绝对最多的医院用户,也是该行业第一个商品化的大型应用软件。
藉由对医院各类业务特性的抽象包容,业务本质的认知和业务规律变化的分析,辅以自定义和参数化等措施,充分满足了几千家客户的应用需要。抛弃了生成代码更换为解释驱动,包括注册式客户端功能导航台(框架)、自定义报表编制发布运行工具、消息管理器、服务器管理工具、系统任务管理等一系列颇具平台特征的产品,以及单点登录、自适应界面调整、个性化参数保存、结构化病历文档等诸多技术特性成为ZLHIS商品化和长期适应性的重要保证,伴随中联不断成长壮大。
ZLHIS突破了大型软件无法商品化的宿命论,从财务后勤到临床医疗再到检验检查等各种医院主体业务,以相比项目化更统一的技术、更完善的服务、更有保障的质量、更低廉的成本和持续发展能力,为中国医院信息化的蓬勃发展做出了积极的贡献。
1.1.3 ZLBH,独树一帜的新平台
伴随全社会信息化的快速发展,人们的生活工作方式也在发生极大的变化,电子邮件、即时通讯、电子文档、手机短信、电子签名已经成为基本的工具和手段;伴随企业内部信息化应用的发展,各种业务全面信息化的要求、各种业务系统之间信息交换共享的要求、按最贴合自身当前需要进行信息化建设的要求等不断提出。
拥有长期商品化软件经验和广泛用户基础的中联,厚积而薄发,在2008年6月成功发布基于.NET多层技术架构的ZLBH (ZhongLianBusiness Home,中联业务平台)。它首先是一个全面的企业协同管理产品;并以全新的全面资源管理视角不断将包含最新技术的业务模型模式划为治下,配合灵活的组织模型,成为企业信息化的强大支持平台;同时基于业务模型的层次理论,为企业提供了零编码的应用快速构建和快速维护能力、不同层次多种应用的整合能力;开发的标准接口,使其本身能不断融入新技术、新知识,从而具备长期适应各种新应用的能力。ZLBH,在提升的信息化基础层次上,再次独树一帜地解决了软件适应性自主性问题、应用整合的问题,并极大提高了企业级信息化的开发部署维护效率。
时间 产品 客户•应用 操作系统•架构 数据库
1993 ZYGL&ZYSC 小企业,独立的小型应用 Union FoxPro
1999 ZLHIS 各级医院,全面业务应用 Windows,C/S Oracle
2008 ZLBH 不限行业,各类信息系统 Windows, C/A/S Oracle、SQL-Server…
MDX分析源
表1 中联平台发展历程
利用我们在医疗行业长期的业务积累,已经利用ZLBH成功构建出三个方面的产品:充分体现先进管理思想的高端医院管理系统ZLNEC、满足社区卫生信息化应用需要的ZLCHS,配合ZLHIS实现医院行政管理与决策支持的中联E智系统,并成功应用。此外,在极端的时间内容,ZLBH已经成功应用于一些医疗外的行业;这些都成为ZLBH卓越能力和优良品质的有力证明。
1.2 平台思维&MDA&敏捷开发
1.2.1 平台思维:抽象与封装
粗略地观察一下软件表述方式(语言)的发展:从打孔纸带到汇编语言到高级语言再到面向对象语言和所谓第四代语言…应当留意:每一代的语言并不是在取代前一代语言,而是用上一代语言来“写”下一代语言,这就是典型的封装。在这个由简单到复杂的自然进化道路上,软件的体系结构、软件开发的体系结构、软件开发工具的体系结构等等,都呈现出层级的特征;在不断的抽象和封装过程中,系统平台和软件技术向前发展。
图1 软件产品及平台的几个层次
早期的编程,我们必须自行控制存储、分配回收内存;通过对硬件的抽象,对各种设备驱动程序的封装,操作系统平台不断的向前发展,使软件开发过程中硬件接口的复杂性不断地被屏蔽;通过对数据存储及其方法、结构、关系的定义和数据查询检索方法等抽象,形成了数据库系统平台。
同样我们通过系统间交换信息的通讯指令的封装,各种服务接口的制定,有效屏蔽了网络传输和服务协调的复杂性,形成了ZLBH的应用框架(AF, Application Framework);通过对业务环境的信息及其组织表现、处理方法等内容的抽象形成了业务类型、资源类型、智能组件等ZLBH的上层组成;可以认为ZLBH是一个跨越软件基础架构和业务基础软件两个层次的融合业务系统平台。
抽象和封装,这一不变的平台思维,成为提升应用软件开发部署维护效率的重要方法,推动着软件技术的跨越式前行。
1.2.2 MDA,将模型与实现分离
通常企业信息化的基本目的就是把组织自身的业务信息、管理方法和工作流程以软件系统的形式固化下来,通过软件的运行来降低成本、提高速度、强化管理。由于我们所处社会环境、经济环境正在日益复杂化,组织及其业务、架构、外部环境都在不断的发展变化中,导致今天的企业级应用软件需要应对变化越来越快、越来越严苛、更加全面细致的需求,必须不断的更改或升级信息系统,还要保持系统的安全性、可靠性、稳定性。
但过去传统的按照系统、模块、功能逐个叠加组件的软件系统,业务逻辑与具体实现方式紧耦合的形式组织,在面对处理方式和业务流程都不断变化的企业应用时,其固化的处理方式是不足以适应各种灵活多变的软件功能需求的。
MDA(Model Driven Architecture,模型驱动架构)是OMG组织提出的一种新的软件开发方法学。其目的是提供一种“业务逻辑模型的描述与设计跟具体的开放接口技术和实现技术相分离”的新的业务开发模式;同时在MDA白皮书中,将“平台”定义为通过接口或具体使用模式来对外提供一致功能和技术的集合体,基于平台的应用可以不关注平台提供的功能是如何实现的。
业务建模是通过一定步骤方法,对实际对象的特性和发展变化模式进行分析提炼总结,得到抽象的动态模型的过程。由于企业是非常复杂的系统,很少一个模型描述清楚的情况,因此业务模型体系由一组模型组成,在不同的层次上完成企业某一个局部特性的描述,典型的包括:信息模型、功能模型、流程模型、组织模型。
信息模型:是从信息的分类组成和相互约束关系的角度描述,以支持存储、处理、维护企业相关的各种信息。
功能模型:以从功能行为活动的角度描述,表现的是操作的组织方式和执行关系,支持事务处理行为规范的实施。
流程模型:通过定义组成活动及其活动之间的关系来描述工作流程的模型,以支持活动的规范化运行。
组织模型:描述组织的团队、人员、岗位及相关关系等,以支持系统的安全管理、权限控制等。
下图,手术预约处理的业务模型层次分解示范,可帮助认识业务模型的几层组成。
模型的层次化,正是它能够描述一个企业复杂系统的优势,也是业务平台务必依赖的基础理论。
图2 手术预约处理的业务模型层次分解示范
1.2.3 敏捷开发催生平台要求
敏捷开发,今天倍受关注的新型软件开发方法之一;相对于“非敏捷”,更强调与业务专家紧密协作、面对面沟通(认为比书面的文档更有效)、频繁交付软件新版本、紧凑而自我组织型团队、能很好适应需求变化的方法等。
虽然衡量敏捷方法的适用性:从产品角度看,适用于需求萌动且快速改变的情况;从组织结构的角度看,组织结构、组织文化也是关联的成功因素。但很好理解:敏捷开发适用性中最重要的因素是规模;规模增长,面对面的沟通就愈加困难。应用软件系统的规模往往由用户决定;在既定项目规模下,保持精炼的人员组织,才能保证沟通的畅通;软件平台以大幅削减编码的特性(甚至零编码,直接由业务专家完成构建),成为压缩程序员(往往是项目组织中的最大比例)的最好支持。
|
|