系统采用三层体系结构设计。所谓三层体系结构[6],即用户层、应用层和数据库服务器。用户层主要指用户界面,要求尽可能地简单,使最终用户不需要进行任何培训就能方便地访问信息;第二层是应用服务器,也就是常说的中间层,即组件层,所有的应用系统、应用逻辑、控制都在这一层,系统的复杂性也主要体现在应用层;最后的数据存储层中,数据库服务器存储大量的数据信息和数据逻辑,所有与数据有关的安全、完整性控制、数据的一致性、并发操作等都是在第三层完成。
在系统中,用户层采用Delphi7编制,为最终用户提供操作界面。用户在操作界面上可以输入信息,显示查询结果。具有操作简单,信息显示方式多样等特点。
业务逻辑层也采用Delphi7编制。这一层是整个系统的关键,系统每个功能的具体实现算法,各服务构件均在本层实现。
数据库服务器为Windows2003 Server+SQL Server2000模式。在数据库服务器上通过大量使用视图、触发器和存储过程实现数据的完整性控制、数据的一致性和并发操作。
采用三层体系结构设计可以有效降低开发和维护成本,简化管理,可适应不断变化的业务需求,有效提高系统安全性。这样的好处显而易见:
(1)由于数据访问是通过中间层进行的,因此客户端不再与数据库直接建立数据连接。即建立在数据库服务器上的连接数量将大大减少;
(2)可维护性得以提高。因为业务规则、合法性校验存在于中间层,因此当业务规则发生改变时,只需更改中间层服务器上的某个组件(如某个DLL文件),而客户端应用程序不需做任何处理,有些时候,甚至不必修改中间层组件,只需要修改数据库中的某个存储过程就可以了;
(3)良好的可重用性;
(4)事务处理更加灵活,可以在数据库端、组件层、MTS(或COM+)管理器中进行事务处理。
本文以一个门诊部信息管理系统软件架构为例,分析研究了基于构件技术的系统软件架构,为下一步系统设计与实现提供了重要依据。与传统软件开发方法按照设计进行编程以实现目标系统不同,构件化软件的基本功能单元已经以可复用构件的方式实现,所以按照设计好的软件架构来复用构件,如何尽可能充分、正确、有效地复用软件框架,成为了下一步构件化软件实现的主要工作之一。
参考文献
[1] 软件构件技术概述[EB/OL].http://dev.csdn.net/develop/artICle/13/13254.html.2007.
[2] Len Bass.软件架构实践[M].车立红,译.北京:清华大学出版社,2004.
[3] BROWN A W著.大规模基于构件的软件开发[M].赵文耘,张志,译.北京机械工业出版社,2003.
[4] Katharine Whitehead 著.基于组件的开发[M].王海鹏译.北京:人民邮电出版社,2003.
[5] 黄柳青,王满红.构件中国[M].北京:清华大学出版社,2006.
[6] 阎宏.软件的架构与设计模式[EB/OL].http://SOFt.yesky.com/lesson/495/2012495.shtml.2005.