盧慶華 熊才權(quán)
湖北工業(yè)大學計算機學院 湖北 430068
辯論是人們解決意見分歧的一個重要手段,辯論目的是極力勸說對方接受自己的主張,或力求否認對方主張,它具有很強的對抗性。但是在辯論過程中隨著辯論的不斷深入無疑會產(chǎn)生大量的信息。這些信息內(nèi)容豐富,結(jié)構(gòu)復雜,容易產(chǎn)生信息過載,使人們很難分析和準確處理所有信息,抓住辯論中的主要問題。辯論支持系統(tǒng)可以對研討信息進行簡化和有效管理,并能辯論信息可視化處理展示辯論推理過程,并調(diào)用辯論算法自動得出辯論結(jié)果。這樣辯論人員能更方便、高效地獲取辯論過程中產(chǎn)生的各種數(shù)據(jù),跟蹤辯論態(tài)勢,把握辯論進程,降低辯論復雜度,更好地進行人機交互,使辯論更具有針對性和目的性,從而提高辯論效率和辯論質(zhì)量。而現(xiàn)有的辯論支持系統(tǒng)、談判支持系統(tǒng)、群體決策支持系統(tǒng)、智能會議系統(tǒng)對于解決這類復雜問題還存在許多不足,有些系統(tǒng)在辯論信息組織和可視化方面做了大量工作,但這些系統(tǒng)要么是單純的會議系統(tǒng),系統(tǒng)只能滿足辦公室或小范圍的局域網(wǎng),而且支持辯論方式有限,系統(tǒng)保密性也不夠高,對如何從辯論信息中自動得出研討結(jié)論沒有提出相應的辦法,因而其應用受到了較大限制。國外類似的系統(tǒng)有的已發(fā)展為商用軟件,但這些系統(tǒng)也是重在信息表示,沒有較強的爭議評價功能,因而其應用也不普及,不能滿足社會發(fā)展需求便于人機交互。
本文分析了系統(tǒng)需求和主要功能,采用基于J2EE的B/S多層 WEB體系結(jié)構(gòu)和目前 WEB開發(fā)最流行的 Struts2+Spring2.5+Hibernate3.1整合框架技術(shù),編程實現(xiàn)了辯論支持系統(tǒng),大幅度提高了軟件的質(zhì)量和效率,使系統(tǒng)易于擴展、維護。
根據(jù)項目實施方案,辯論支持系統(tǒng)是建立在WEB平臺之上的支持與會人員在線、離線同時同地或異時異地針對復雜決策問題進行有針對性辯論,同時對辯論信息可視化,動態(tài)顯示辯論進程,辯論結(jié)束時能自動得出辯論結(jié)論的一種全新的開放式智能決策支持系統(tǒng),可用于決策和辯論思維能力訓練。系統(tǒng)以“辯論支持系統(tǒng)”為核心,同時與“會議系統(tǒng)”、“交互白板系統(tǒng)”和“視頻系統(tǒng)”進行整合,為解決復雜和非結(jié)構(gòu)化問題提供支持。
辯論支持系統(tǒng)包括八大功能模塊,主要功能如圖1所示。
圖1 辯論支持系統(tǒng)結(jié)構(gòu)
(1)用戶管理模塊
它主要實現(xiàn)可以創(chuàng)建、修改、刪除超級管理員、管理員、主持人、參會人員的操作,創(chuàng)建管理員時可以給不同的管理員賦予不同的權(quán)限,超級管理員也可以對自身的信息進行更新修改,超級管理員擁有所有操作權(quán)限,管理員只能根據(jù)超級管理員賦予的權(quán)限進行操作,一般正常狀態(tài)下的管理員可以創(chuàng)建、修改、刪除用戶的操作,并能修改個人注冊基本信息,用戶只可修改個人密碼。
(2)會議管理模塊
主要是對會議進行管理,在主題確定后,進行相關(guān)會議的添加、修改、刪除。對會議要實現(xiàn)分級查看,也就是主持人和參會人員只能查看與自己有關(guān)的會議,領(lǐng)導可以實現(xiàn)相關(guān)主題及子主題會議的查詢等。
(3)遴選模塊
主要負責對參會人員進行選擇,參會人員的選擇方式包括會議管理員手動選取人員和系統(tǒng)智能選取兩種方式。
(4)電子郵件模塊提供了郵件管理功能
它提供了寫信、發(fā)信功能,并能將郵件按時間順序進行排列;自動存儲已經(jīng)發(fā)送和未發(fā)送的E_MAIL,添加聯(lián)系人,刪除或批量刪除已廢棄的E_MAIL,同時對通訊錄進行維護。
(5)辯論研討環(huán)境模塊
構(gòu)建虛擬的辯論環(huán)境,與會人員針對某一主題,在主持人的引導下進行辯論。
(6)可視化
系統(tǒng)能對發(fā)言信息進行合理的組織,不僅能使與會人員發(fā)言更具有明確的目的性和針對性,而且還能確定發(fā)言之間的語義關(guān)系,對發(fā)言信息可視化,讓與會者及時了解辯論動態(tài),辯論結(jié)束對能可視化顯示辯論結(jié)果。
(7)新聞發(fā)布
對各種會議信息實時顯示和管理,能對新聞信息進行編輯修改。
(8)資源共享模塊
系統(tǒng)用戶可以下載、上傳各種文檔資料和音視頻文件。
本系統(tǒng)基于J2EE平臺,采用主流基于MVC模式的Struts框架和基于 IoC模式的 Spring框架以及對象/關(guān)系映射框架Hibernate組合框架。SSH 架構(gòu)分為表現(xiàn)層、業(yè)務邏輯層、持久層、域模塊層,結(jié)構(gòu)如圖 2所示。傳統(tǒng)的 jsp+servlet+javabean模式開發(fā),它需要在jsp頁面中嵌入很多的java代碼,這樣jsp、html、java代碼混合在一起,使頁面看起來比較混亂,servlet和javabean負責頁面的跳轉(zhuǎn)和運算工作,耦合度增加,組件的復用性差。而Struts2+Spring+Hibernate采用四層架構(gòu)設計實現(xiàn)四層的相互分離,每個層在處理程序上都有一項明確的責任,在功能上不與其它層混合,按層將系統(tǒng)分開,這樣就互不干涉,可以很好地實現(xiàn)分工開發(fā),讓開發(fā)人員各盡其職。三個框架相互配合,優(yōu)勢互補,提高組件的可復用性,降低層與層之間的耦合度,有利于系統(tǒng)的可維護性和可擴展性。
圖2 SSH框架結(jié)構(gòu)
(1)系統(tǒng)視圖層
是應用和用戶之間的接口,是向用戶展現(xiàn)軟件系統(tǒng)的功能,響應用戶的請求,并向用戶呈現(xiàn)處理的結(jié)果。Struts2框架主要負責視圖層,視圖主要由 JSP生成頁面完成,Struts提供豐富的JSP標簽庫,這有利于分開表現(xiàn)邏輯和程序邏輯。負責控制業(yè)務邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務邏輯層,并將業(yè)務數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn)。
(2)業(yè)務層
采用Spring框架對業(yè)務組件進行組裝關(guān)聯(lián)。Spring作為業(yè)務層框架,它提供的職責主要有:處理應用的業(yè)務邏輯和業(yè)務校驗;管理事務;允許與其他層進行交互的接口;管理業(yè)務級對象之間的依賴性;加入了表示層和持久層之間的靈活性,以便它們不需要彼此進行直接通信;從表現(xiàn)層暴露上下文給業(yè)務層以獲得業(yè)務服務;管理從業(yè)務層到表現(xiàn)層的實現(xiàn)等。Spring的作用貫穿了整個中間層,將Web層、Service層、DAO層及PO無縫整合,其數(shù)據(jù)服務層用來存放數(shù)據(jù)。
(3)持久層
采用Hibernate來實現(xiàn),Hibernate是一個數(shù)據(jù)持久層框架,是一種實現(xiàn)對象和關(guān)系之間映射(O/R Mapping)的工具,它對JDBC進行了輕量級的對象封裝,使程序員可以使用對象編程思想來操作數(shù)據(jù)庫。它不僅提供了從Java類到數(shù)據(jù)表的映射,也提供了數(shù)據(jù)查詢和恢復機制。相對于使用JDBC和SQL來操作數(shù)據(jù)庫,使用Hibernate能大大的提高實現(xiàn)的效率。
(4)域模塊層
將現(xiàn)實世界對象抽象為域?qū)ο?,是ORM思想的產(chǎn)物。ORM 用對象關(guān)聯(lián)數(shù)據(jù)表,將這些對象的集合歸為一個專門的層,即領(lǐng)域模型層。領(lǐng)域?qū)ο笫歉鲗又g數(shù)據(jù)通信的載體,實際上領(lǐng)域?qū)ο笠彩且粋€完完全全的業(yè)務對象。通過業(yè)務的對象化,有利于業(yè)務邏輯的重用。領(lǐng)域模型層讓開發(fā)者不必構(gòu)建和維護不必要的數(shù)據(jù)傳輸對象。
系統(tǒng)實現(xiàn)的開發(fā)環(huán)境可分為硬件環(huán)境和軟件環(huán)境,其中硬件環(huán)境包括:
(1)網(wǎng)絡環(huán)境:WAN網(wǎng)絡或LAN局域網(wǎng);
(2)服務器:數(shù)據(jù)庫服務器和Web服務器各一臺;
(3)視頻會議器材:標準視頻、數(shù)據(jù)、語音采集設備、麥克風、耳機、音響、表決器等。
軟件環(huán)境包括:
(1)客戶端操作平臺:Windows XP;
(2)瀏覽器:Windows IE 7.0;
(3)服務器端操作系統(tǒng):Windows XP;
(4)視頻會議服務器:Macromedia Flash Media Server2.0;
(5)Web服務器:TOMCAT6.0;
(6)開發(fā)工具:MyEclipse7.0,Rational Rose;
(7)數(shù)據(jù)庫軟件:Oracle10g;
(8)系統(tǒng)集成:與其他系統(tǒng)集成的軟件產(chǎn)品及二次開發(fā)平臺環(huán)境等。
辯論環(huán)境是一個基于INTERNET的收斂型群思考工具,參會人員在其中根據(jù)議題進行規(guī)范化辯論,可以發(fā)表觀點,也可以支援或攻擊他人觀點如圖3所示。所有登錄研討環(huán)境的人員會在頁面左部以列表形式顯示他們的姓名。頁面最中間是發(fā)言信息顯示區(qū),右邊是研討結(jié)果圖形化表示顯示區(qū),底部是發(fā)言信息結(jié)構(gòu)化分解區(qū)和輔助發(fā)言區(qū),本研討界面能實時反映研討狀態(tài),便于主持人對辯論會場進行引導,提高辯論的效率與質(zhì)量。
圖3 辯論環(huán)境界面
辯論環(huán)境界面組成元素如表1所示。
表1 辯論環(huán)境界面組成元素
本文介紹了基于J2EE的B/S方式的辯論支持系統(tǒng)的結(jié)構(gòu)及軟件的主要功能,應用SSH技術(shù)架構(gòu)進行系統(tǒng)開發(fā),縮短了系統(tǒng)開發(fā)時間,提高了系統(tǒng)的可維護性、可擴展性和安全性,使得系統(tǒng)能夠較好地適應辯論的需求,本系統(tǒng)經(jīng)過一段時間的試運行已經(jīng)取得了明顯的效果,系統(tǒng)支持在線或離線,同時同地或異時異地的辯論,不僅能幫助人們解決日常生活中問題,也能用于訓練人的辯論、推理和科學論證能力。
[1]宿彥,薛惠鋒,孫景樂,蔣御柱.用戶驅(qū)動的研討信息可視化平臺的設計與實現(xiàn).計算機工程與應用.2007.
[2]曹偉.如何進行軟件需求分析[EB/OL].http://se.csai.cn/Requirement/No020.htm.
[3]梁建全,周力.精通Java EE框架整合方案.北京:人民郵電出版社.2008.
[4]胡曉雯,王娟,周梅紅.基于 J2EE的地稅網(wǎng)上申報系統(tǒng)的設計與實現(xiàn).
[5]徐明華.Java Web整合開發(fā)與項目實戰(zhàn)——JSP、Ajax、Struts、Hibernate[M].北京:人民郵電出版社.2008.
[6]三揚科技.開發(fā)者突擊:Struts 2核心技術(shù)與Java EE框架整合開發(fā)實戰(zhàn)[M].北京:電子工業(yè)出版社.