胡晗光
(南京圖書館,江蘇 南京 210018)
隨著圖書館逐步邁入“智慧時代”,公共圖書館OA系統也迎來了新的變革和需求。新一代OA系統基于信息流模型,進一步提高了信息共享與協同辦公的效率,對資源管理、流程審批、決策依賴等方面加強了規范化和可控化的管理。新一代OA系統通過分布式架構、移動互聯網等技術的運用,為館員提供了高效、便利、界面友好、迭代穩定的辦公服務體驗。
OA系統是指一切可滿足于企事業單位,能夠促進單位內部信息交流、共享、流轉處理,實現辦公自動化并提高工作效率的各種信息化設備和應用軟件[1]。OA系統的核心業務是辦公審批流程的提交,涵蓋錄入申請、決策審批、流程監控、簽名授權等功能。本文以南京圖書館為例,探尋基于微服務架構的定制化智慧OA辦公系統分析與實現,以滿足其業務需求。
智慧化OA系統是下一代圖書館服務平臺[2]的大膽嘗試。圖書館信息建設的智慧化體現在通過大數據、云計算、人工智能等技術的支持,堅持“以人為本”的服務導向,形成智慧閱讀、智慧服務、智慧平臺的有機聯動。智慧化OA系統相較于傳統OA系統,應提供更加便捷化、智慧化、個性化的服務,對用戶的信息服務應做到應知盡知、智能響應、流程閉環、輔助決策。
建設服務于全館的協同OA系統,能從根本上提高工作效率,減少辦公開支,降低管理成本,為各級領導宏觀管理和科學決策提供高效便利的服務,真正實現管理高效化、規范化和科學化[3]。
2.1.1 核心審批工作流智能化
區別于傳統OA的審批工作流,南京圖書館OA系統的審批流程操作更加簡便。例如:審批崗的簽名操作自動將簽名圖片適配到動態表單的相應位置,省去了拖拽編輯的步驟;當工作人員選擇下一步流程人時,根據表單自有流程屬性自動篩選名單;若流程審批人重復,自動合并流程步驟,提高審批效率。該系統通過盡可能地簡化用戶操作,秉承軟件敏捷開發的思想,為用戶帶來更加高效、便捷的使用體驗。
2.1.2 OA系統網絡安全及數據安全
傳統的OA系統部署于企事業單位的內網環境,為了保證核心數據的安全性,一般不對外網開放。南京圖書館智慧OA系統為滿足館外訪問的需求,獨立部署外網登錄服務器,采用與內網分離驗證的方式,通過數據加密、數據簽名、短信認證、圖形化驗證等方式,保證了館外訪問的安全性和可靠性。OA系統通過第三方安全機構掃描,消除系統漏洞、代碼漏洞導致的安全隱患。
2.1.3 OA系統可用性及可靠性
OA系統由于其內部使用的固有屬性,一般采用簡單的分層架構,但是分層架構的缺點也是顯而易見的,包括可擴展性弱、軟件升級引起服務暫停、服務宕機不易察覺等問題。鑒于以上問題,為達到24 h不間斷服務的目標,南京圖書館OA系統采用分布式微服務架構,通過對業務模塊進行劃分,以微服務的方式分布式部署,單獨的服務升級或宕機并不影響整體系統的響應,從而保證了系統的可用性及可靠性。
2.1.4 OA系統簡潔及個性化
南京圖書館OA系統不僅適配個人計算機(Personal Computer,PC)瀏覽器,同時自適應各類型手機端。菜單結構根據瀏覽器屬性自動縮放、自動排版以兼容用戶的界面訪問需求。為滿足不同用戶的喜好,提供個性化主題功能,用戶可自行選擇頁面整體布局、顏色、樣式。在功能方面,根據用戶的權限,OA系統提供按鈕級權限校驗。因此,不同的用戶所展現的OA系統界面及數據內容有所不同,體現了個性化需求。
2.2.1 模塊化及微服務
微服務架構基于表現層狀態轉換應用程序編程接口(Representational State Transfer Application Programming Interface,REST API)、事件流和消息代理,在單個應用中通過眾多松散耦合且可以單獨部署運行的組件或服務,根據業務進行模塊劃分、互相關聯但保持各自的獨立性。在南京圖書館OA系統中具體表現在將業務拆分成用戶模塊、業務模塊、工作流模塊,由服務治理控制器統一注冊、配置、分發。客戶端負載均衡器提供各服務間的超時、重連、重試算法。斷路器負責保證系統的健康狀態,檢測故障并控制故障范圍,提高整體系統的可靠性。API網關提供反向代理,協調注冊中心完成路由尋址、路徑分發。微服務架構采用微服務架構,大幅提高了OA系統的負載能力和穩定性,分布式部署能夠得以保證,即使部分物理機出現故障也不會影響系統的正常運行。
2.2.2 審批流程智能算法
審批流程智能算法整體采用工廠模式和策略模式。針對不同的表單、流程、參與人,工廠模式將依據配置對同一個基類衍生工廠子類及實例。雖然參與條件是不同的,但表單流程都具有錄入、提交、審批、退回等相同的操作方式,因此,使用策略模式可以有效避免多重條件判斷,使得算法之間靈活切換,擴展性良好。審批流程本質上是一種工作流,前流程決定了后續流程的操作空間。因此,本文采用動態規劃算法,保持數據流的穩定性以及整體流程的靈活性。在前端頁面,一鍵簽名可將簽名圖片自動匹配到正確位置并帶入簽名日期,該算法需要記錄頁面局部表格的相對坐標并記錄,在表單回溯時提供坐標信息以適配不同的瀏覽器及分辨率。
2.2.3 智能鑒權
當用戶訪問南京圖書館OA系統時,首先由南京圖書館動態感知系統判斷網際互聯協議(Internet Protocol,IP)訪問源,在通過防火墻鑒權的前提下,判斷內、外網并跳轉至OA系統的不同登錄服務器。當用戶通過外網登錄南京圖書館OA系統時,除了需要賬號、密碼、圖形驗證碼外,用戶還需要通過手機號驗證碼進行驗證。而手機號必須提前在內網登錄OA系統編輯錄入,這就保證了館外訪問的用戶必定是館員。而內網登錄則相對簡便,僅需要賬號、密碼即可。該方案充分考慮了軟件設計的便捷性和安全性,在矛盾中找到了相對的平衡點。
南京圖書館OA系統架構如圖1所示,以控制層、業務層、數據層為主線,業務微服務為橫向拓展。傳統的圖書館信息管理系統的整體架構不能滿足當下社會管理工作和服務工作的需要,新型智慧圖書館的出現,可以加快圖書館智能化的進程[4]。

圖1 南京圖書館OA系統架構
數字技術可以滿足用戶和管理人員對OA系統的業務需求。數字技術賦能圖書館智慧化服務不在于炫技,而在于如何更好地運用技術來捕捉用戶的真實需求,為用戶服務[5]。
3.2.1 用戶側業務分析
(1)個人基本信息。系統滿足用戶對個人基本信息的編輯,包括顯示名稱、手機號、郵箱、性別、簽名圖片等。
(2)個性化設置。用戶可自定義界面的顯示風格,包括菜單橫豎展示方式、主題顏色、全屏模式、鎖屏模式等。
(3)表單申請。OA系統為用戶開啟實際的業務表單申請流程,不同的表單按要求填寫內容后,提交至下一步審批人。表單支持草稿模式,暫存表單信息。表單支持多文件、多格式附件上傳,用以補充表單內容。表單類型包括固定資產請購單、事項請示單、設備維修單等十余種不同業務流程,并且具有良好的可擴展性。
(4)待辦事宜。OA系統為審批人員展示需要處理的工作表單,并針對表單類型、處理狀態、表單時間等屬性提供條件篩選,審批人員首先進行一鍵簽名操作,填寫意見后選擇是否通過。若流程通過,則繼續選擇下一步審批人;否則,退回至申請人。
(5)業務追蹤。申請人和審批人都可以通過業務追蹤查詢業務的實時狀態。業務追蹤提供表單類型、處理結果、處理時間等篩選條件,并展示每一步流程的審批人姓名、部門、審批時間等相關信息。
(6)業績管理。目前的業績管理提供成果上報功能,根據提供的模板填報材料年份、成果類型、上報狀態等信息。
(7)意識形態審核。在講座、展覽、館情速報、微信端等途徑發布的內容信息,需要進行嚴格審核,等級上分為全館級和部門級,館員用戶通過描述和附件的方式上報材料,審核后予以發布。
(8)表單瀏覽。原則上表單流程的數據是保密的,對于特定部門及崗位涉及的統計需求,OA系統需要針對性地開放表單類型級的瀏覽功能。
3.2.2 管理端業務分析
(1)系統管理。系統管理是指對整個OA系統進行初始化數據編輯,包括部門管理、角色管理、菜單管理、崗位管理、字典管理、通知公告等。其中多個主體之間存在一對多、多對多的關系,尤其是角色、菜單、權限之間需要進行嚴格的按鈕級數據權限控制,用以保證數據信息的安全性。
(2)用戶管理。南京圖書館OA系統的用戶全部是館內職工,因此不允許私自注冊賬號信息,需要管理端人員配置用戶信息及簽名信息。當用戶部門、崗位、權限發生變化時,需要及時更新,保證用戶信息的時效性。
(3)日志管理。日志管理分為登錄日志和操作日志。管理員可實時監控并查看使用用戶的相關信息和操作內容,但操作內容不包括詳細信息,保證了用戶的隱私。
(4)系統監控。系統監控包括在線用戶、數據監控、服務監控、緩存監控。其中,數據監控需要更高級別的賬號密碼才可以查看具體業務的API調用情況。服務監控用于展示各服務器的運行狀態,包括中央處理器(Central Processing Unit,CPU)、內存、網絡帶寬占用等信息,以決策是否橫向擴展微服務。
(5)定時任務。南京圖書館OA系統提供可配置化的定時任務,是指在指定的時間點執行某些代碼操作,例如定時短信通知審批人查看代辦事宜,及時處理業務等。
3.3.1 安全框架
南京圖書館OA系統選擇shiro作為安全框架,執行身份認證、授權、密碼和會話管理。對整體系統的可訪問域提供管理,例如除登錄頁之外的所有頁面必須進行會話安全驗證,否則強制跳轉到登錄頁面。對外接口方面則采用auth認證、數據簽名,對數據內容進行密鑰對稱加密。安全框架可以最大限度地保證系統的數據保密性和抗干擾性。
3.3.2 漏洞防護
系統本身在代碼級層面通過各類測試防止重大漏洞和攻擊安全隱患。在服務器部署方面,系統加強服務器或其他中間件的版本升級,抵御已知風險。結合館內動態感知系統,OA系統對外來攻擊進行及時預警和封鎖。
3.3.3 數據備份
數據備份分為2類。一是代碼備份,通過云盤備份和物理備份2種方式,定期保持代碼的有效性。二是數據庫備份,數據庫采用自動增量備份的方式,異機保存備份數據,并支持熱切換操作。
國內圖書館界較多集中在智能圖書館建設和智慧服務研究方面[6]。南京圖書館智慧化OA系統是智慧圖書館建設背景下的一次努力嘗試,時刻遵循操作便捷化、流程智能化、辦公高效化的原則?;谇把氐幕ヂ摼W技術,深入結合公共圖書館的業務需求,兼顧安全和效率,目前已平穩運行2年左右。未來,隨著科技的不斷進步和突破,南京圖書館OA系統也會與時俱進,在保證已有業務平穩推動的前提下,繼續創新發展,以人為本,服務至上。