可重用决策支持系统框架研究
2014年2月08日 09:54 作者:胡震云,雷 明
可重用决策支持系统框架研究中国论文网5[9F:pwk2a]
胡震云,雷 明
1?|&D"g6i.rv#R5W0 (河海大学商学院,江苏南京,210098)中国论文网d g:R'~6}6F
摘要:由于决策支持系统在使用人群、开发周期和架构等方面的特殊性,使得当今决策支持系统框架总体上看可重用性普遍中国论文网M7St5U#iL"p`
较低,因此提出一个基于Web 的决策支持系统可重用框架,该框架包含设计建模和构建技术两方面,其中设计建模包括交互设中国论文网q*L*v%w;Ga)_;B9N
计、内容设计和架构设计;构建技术包括:使用Presentation 模式分离复合构件的表现模型、使用Singleton 和Observer 混
%j+by:be#~ V'Df0合模式建立消息传递机制、使用Module 模式模块化业务逻辑处理模型、使用IoC 与Strategy 的混合模式重构算法库调用流
?UN6{Gw*T&O]0程、使用Command 模式封装长事务请求响应流程。
4x8|d?[
z)k0关键词:决策支持系统;可重用框架;设计建模;构建技术中国论文网QJ\/A!h u"W4dc.Vc
纵观目前对决策支持系统的研究,可以发现决策支持系统在
Wg(A.^5s%OXd;p0可重用性、自适应性和扩展性等方面不够重视,只在本世纪早期中国论文网4d"\1E&rZh;u
有部分研究,在设计模式运用方面没有形成一套完整的体系,系中国论文网8x4a6I?y%f.xj+K
统框架案例匮乏,对框架的可重用性研究不够深入,因此本文提
l&?q8M8r`3Z0出一个基于Web 的决策支持系统可重用框架,旨在提高决策支持
:X^4e7z*HK'SG0系统框架的重用性。
\o$af$s_2n)uY01 可重用决策支持系统的框架体系
_P}7RJ"JK0可重用决策支持系统从原形到框架的构建与设计过程包含
Hlb1^8I0L(t;}0设计建模和构建技术两方面内容,其框架体系如图1 所示。中国论文网;r _
idk
(1)设计建模:以用户原形为起点,通过对系统框架的交互、中国论文网,B ]O Q^%\&W
内容和架构等方面进行分析与设计,在框架构建之前生成框架模中国论文网6r,m N8pc"Tj_-]1G
型。设计建模需要考虑以下几个或全部因素:界面设计、美学设中国论文网4G.X U$k'P2dv-i MK;o
计、信息架构设计、导航设计、功能设计、组件设计。中国论文网3Mr` I,i#tbb
(2)构建技术:以设计建模为框架构建目标,通过对框架的中国论文网E1pk#c9f,]Cs@
逻辑、业务、场景的抽象化和具现化,归纳出可复用框架构建要
h*s q4kgr^TYJ0素,并针对性的选用或改进现有设计模式,从而给出每个要素构
*IR"@QmL0建的可行性方案。其主要包含五个关键要素:解耦、交互、模块化、
l3cxhWV7V Pf0算法库和长事务技术。
qt&t_$oX,A7C)dFr02 可重用决策支持系统的设计建模
gT'~&So%N02.1 以用户为中心的交互设计中国论文网!plFoK.OhH}
(1)界面设计
.VI,EtZ9\wr){ ?%I0界面设计是人机间交换信息的可视化介质,通常包括硬件界
q2{:A/S |0面设计和软件界面设计,优秀的界面设计总遵循如下设计原则:中国论文网L;z qz3n%Z'\XZB
简易性、一致性、可预测性、费茨法则、缩短等待时间、符合用户熟中国论文网\D
M ~'i
悉程度、隐喻性,其通常有以下几个工作流程:① 根据分析建模中国论文网NPM6E}r/o5~YG h
中的用户任务和场景,精化设计需求;② 设计一个精简的界面
OV$] _)qd~8I K%?0布局原型;③ 根据用户任务定义界面行为;④ 利用从美学设计
V7i [f
Ai|0精化页面布局;⑤ 确定实现用户界面所需的界面对象;⑥ 开发中国论文网C t"EC5x
用户与界面交互的过程表示。中国论文网$H*@6`C4[&f%{9v E
(2)美学设计
8X/yk0~OW9v0随着以浏览器为载体的内容设计和导航设计中可展示的信
0kcPpR:m0f0Z&Q0息的“面积”的局限性,现代Web 设计逐步重视美学设计。依托和
a3Q,jU T5^0借鉴传统平面设计体系中的研究理论,构建符合标准的基于Web
4kXxY;s02.0 的界面成为当代Web 美学设计的切入点和研究重心。以下通中国论文网FT Z;H6A2Q
用的美学设计布局规则是值得考虑的:适当的留白、尽量不要使中国论文网%M5i7o
t.W
用滚动条扩展额外空间、设计布局时注意分辨率和浏览器窗口尺中国论文网r.C0F,zv9ss
寸多样性、以从左到右,从上到下的顺序组织内容。中国论文网-F/Y9L-?B*x-S
(1)信息架构设计
6D:K-z2{5jj0信息架构是组织和标记包括网站、企业内部网、在线会议和
2w4r!Q s4D0lgW0可用性支持软件的数据的一门技艺和学科,优良的信息架构具备
0r:qt3je0以下特征:内容与信息的分离、信息与应用的分离、与多种动态中国论文网u0O:K%sG&Q
t,HF f
数据组合、 链接的结构和语义、高规格的信息关系表示。
1R;F1PZE^0(2)导航设计中国论文网5J^ g.uJy@WdI
导航设计展示内容和对象之间的关系,使得用户能掌握当
"`QpmX&G0前应用在系统中的“位置”,给予用户对当前操作进行定位以及完
/V/Uui8h9J0整流程的把控。导航设计通常都遵循以下设计准则:有效的信息中国论文网n%vZ
FTQ2T
架构、语义的简洁准确、操作连贯性、良好的视觉识别度、“三次点中国论文网3N N|,v^6}J
Y
击”原则,同时关注以下四个指标:使用率、点击转化率、有效性、中国论文网-T%_tX%Dp9AXwh
相关性。中国论文网o1}
[:A*o!`!~q
3 可重用决策支持系统的构建技术
X6VIm)oN03.1 使用Presentation 模式分离复合构件的表现模
$k"v
UR
s
KeU$ffy0型
3m ])~@Z6Iy0当前Web 应用的表现层需要承载更为复杂的任务,需要
(w1Y9A"Q3]!t
yx0引入复合构件的概念用以支持层次化的分解逻辑。本框架引入
Yi/Tzk#v0Presentation 设计模式,其目的是将基于编排层面的复合构件
Us,G$mp(v0从表现层中抽离出来,使得表现层回归于纯粹的视图设计,进而
N.]iK'A'y*g0实现构件对象的内部逻辑与外部业务的解耦合。Presentation中国论文网.V'w:VFiya;O2S2a
模式具体采用“拉”模式实现,通过用户操作界面元素改变模型的
Bir}]0状态和行为,处于View 层的基于编排层面的复合构件可由数个中国论文网`r"~_wP+?i*?i
子构件组合而成,每一个View 的表现模型均包含一个对应的基中国论文网3yS"C
?o#L
于编制层面的复合构件用以封装构件的数据和状态。中国论文网"sw#U%T;Ke
3.2 使用Singleton 和Observer 混合模式建立消息
'on0l+xE0传递机制
]jq kIHDS"U0构建扩展性强、易于维护的架构,除了考虑复合构件内部中国论文网F$m`p8D
的解耦要素以外,同时也需要研究被分离后的多个复合构件间
`{8I;}U4R'RF0的通信和相互调用方案。本框架要设计一个耦合松散的架构,即
i1iN Xp&b;pp0一个复合构件中不会包含其他复合构建的实例,因此,可以使用中国论文网V/C%G AO mzSbc
Singleton(单例)模式在复合构建或模块之间建立一个约定的中国论文网)aL(H8R*Rt-T Ru
“通道”,用以实现消息的派发、传递和接收。中国论文网'I d|t[Fe&`
Singleton 模式的意图是:保证一个类仅有一个实例,并中国论文网Jk3x,q,iAW
且提供一个访问它的全局访问点。通常情况下,每个类在整个
N,LE,z@
LL0zJ#|0作用域中只存在独一无二的实例,每个交互域均有唯一的用中国论文网Jj$ysE.\
Ar.UN
Singleton 实现的EventBus 作为域内通讯总线。
&u/x}x7nq{)YW0除了考虑域内的构件监听事件总线绑定的方式,还要考虑
#r` ?)pW:`,A0自定义事件的命名约定和范式。本框架采用Observer 模式构建中国论文网Qxt!_~&S
l)K2sV{
框架的事件监听机制。使用Observer 模式发布和订阅处理在中国论文网jW'lJ?[i2[
EventBus 上传递的数据,使得一个事件分发后可由多个模块被
k"L;QV+z#|0捕获,进而同步更新构建的状态。图3 为Singleton 与Observer中国论文网k2W:c$l1bE8|S
构造消息传递机制示意图。
v5q Q@I03.3 使用Module 模式模块化业务逻辑处理模型
m\2zN2~5ln.k$Q0业务逻辑处理模型基于业务架构设计,是将业务架构设计中
D+n Xn/AG\0相同的事务逻辑进行归纳总结,并针对其解决问题的方法进行精
I6F _N5AB2sd#b0P0炼和抽象而成的模型(Module),其目的是为了削弱各个功能间代中国论文网)fQe,~{P
码依赖关系,减少耦合,从而提高开发的效率,此时,模块间所有
tf'It+mXA0的交互可采用事件传递机制,每个Module 必须保持其各自的私
[|(^Fc0有化状态,这表示封装后的模块无法访问其他Module 的私有化中国论文网R.A/zN+\M7T\H.J
属性,若要实现模块之间的相互调用,则需对模块进行接口设计。
}G6J Rp+yX5Qo6Y0除此之外,模块组件还要关注模块加载时内部组件的生命周中国论文网/Q+W7]&j0nwA
期管理,包括初始化、加载顺序和不同模块间的组件相互通信的
lHGi3|0需求。本框架在使用模块进行开发时,需要为每个模块定义上下中国论文网},Z~3j&y'fy
文环境(Context),加载模块的Application 通常是多Context
)gHWGy:~h'lu0的应用程序,若不定义组件的Context,则自动为其匹配父级的
C,Ln'I3U)Y0g%T~3S,r0Context,子上下文与附上下文分享依赖关系。中国论文网4g$T
w-y+]%`u,Ubq
3.4 使用IoC 与Strategy 的混合模式重构算法库调
3?Bk8H)[;a;n w0用流程
?cEyL"p/|0IoC(Inversion of control)的含义是控制反转,是对组件中国论文网
xH|\m6m8W4Evv
对象控制权的转移,将决定组件依赖逻辑的代码(或配置文件)交
l4P:[L$c\!Q S#f?x0给外部容器,通过容器来管理对象层级关系和组装。控制反转在中国论文网@3o:[,R~:s
框架中有两种主流的实现方式,一种是依赖查询,另一种是依赖中国论文网't0X:zC@Va
注入,依赖倒置原则是依赖注入的另一种抽象化表达方式。依赖
c$[!| x-J"jn0倒置原则不关注组件获取依赖的方式,它只强调高层模块是如何中国论文网J5A8X Dd{+z0h
与低层模块解耦,决策支持系统的变化不在于决策支持流程的变中国论文网h)R:teYk
化,而是产生在模型库与算法库的不断再构造与再优化过程中,
u"YnQ1u|P&SY J0因此,决策支持系统后台模块可借用依赖倒置原则。
2UK0bNn7HOH03.5 使用Command 模式封装长事务请求响应流程
/F} d D-z/SV:Ve
g0DSS 分布式架构的构建难点相比常规Web 应用服务器架构中国论文网\#{!^b%I^8v
并不在于高并发量,而在于每次请求相应的访问时间长,因此,表中国论文网z3M)@-KF]jn&`
现层与后端要进行两个解耦:一个是表现层交互模块的请求方中国论文网#U1s? c1Z
法与应用服务器的处理模块解耦,另一个是请求方法与处理返回中国论文网0\At1[6R`%P7gN
结果的相应方法解耦。命令模式(Command pattern)可解决将发中国论文网3X`$SN5c.R ?5e
送对象的“行为”进行封装,统一该行为的接口,进而实现与接收中国论文网6j3D&F$o~ Kd4T
端解耦的问题。本框架对Command 模式进行流程重构和功能设中国论文网(R!l+W EA7Y&D%I
计,调用者使用事件机制与Command 交互,而Command 对象通过中国论文网8B_ac$v:H
execute() 方法实现,在其内部向服务器进行请求。委托者的作中国论文网G2L!LM1|/k.?;i
用可以由容器替代,通过特定的协议指定负责各个Command 对象
c6E5v"G3Q,e:SUB0的响应方法,即指定Receiver 对象中的执行函数。如此一来,调
0i&`BoX0用者和执行者实现了责任分离和模块解耦,这有助于功能模块开中国论文网swIf,J
发和维护过程的管理和控制,从而增强了框架的可重用性。
A#w:[hc:Q*W_0参考文献
@`0^(B\,oN.Yv:V0[1] 杜江, 孙玉芳. 基于面向对象模型库的DSS 可重用体系结构
u&IMH
N.s.@I2S#l0研究[J]. 系统工程理论与实践, 2000(1):2-7.
W-r:V*n`2@d|'U0[2] 杜顶, 金敏力. 规划和优化模型库的DSS 可重用结构的研中国论文网1|r
X&],^%E8f9M~ TOj ~
究[J]. 沈阳工业学院学报, 2001(9):54-59.
&@'~6G
?0N"a_0[3] 李勇, 肖智, 陈玲. 一类DSS 方法库的可重用体系结构[J].
bl?Z%\(_Mif0}9v0重庆大学学报( 自然科学版),2003(3):102-105.
C,Z
H.J`&L&d0