王 帥 胡立嵩 王 美 冷朝陽 吳悠悠
(武漢工程大學,湖北 武漢 430073)
原型設計是指通過制作系統產品的簡圖或樣本,用來模擬系統真實的工作方式,是系統研發的一個重要組成部分,也是最前期的部分。通過原型設計可完善并確定系統建設的需求和功能,進而設計出高保真、可交互的原型產品,為系統的研發和迭代奠定基礎[1-3]。
地質災害是指在自然因素或人為活動的作用下,與地質作用有關的災難危害,而氣象條件是引發地質災害的主要因素[4]。區域性地災氣象預警系統是基于互聯網技術,并結合地質和氣象條件構建出災害監測預警系統,一般可作為區域性地災綜合防治系統下的二級子系統,也可作為獨立系統進行使用。地質災害防治已成為支持我國經濟社會可持續發展、實現國家未來戰略目標的重要保障因素。因此,構建高效的區域性地災氣象預警系統對減少災害的影響具有重要意義。
本研究先對Axure RP軟件進行詳細介紹,并以Axure RP軟件為基礎,對區域性地災氣象預警系統進行原型設計,并提出系統開發設計的數據庫和系統架構設計構想,為系統進一步研發和地質災害防治工作提供借鑒。
Axure RP是由美國Axure Software Solution公司研發的快速原型設計軟件,常用于軟件和網站的前端開發,能快速設計出APP和Web網站的軟件原型和生成規格說明書,便于產品功能的交互展示[5-7],其能設計出高仿真的項目原型。在軟件開發前,開發團隊就能真實地體驗和直觀地感受即將開發的軟件效果與核心邏輯功能,從而實現精確的需求分析[8-9]。原型HTML文件經優化后可直接用于后期邏輯代碼的開發,避免系統開發初期的編程復雜,是目前業內應用最廣泛的交互原型設計工具,Axure RP軟件有6個主要功能模塊,其功能體系如圖1所示[10]。
圖1 Axure RP功能體系圖
Axure RP軟件的操作界面簡潔清晰,大部分界面的布局設計都可通過線框圖中的元件來完成。與傳統的原型設計工具(如PPT、Photoshop、Illustrator、Dreamweave、Visio)相比,交互設計和共享協作是Axure RP軟件的最顯著優勢,其適用對象更加廣泛。與目前主流的交互設計軟件(如Justinmind、mockplus等)相比,Axure RP軟件操作簡單,更為典型[11]。Axure交互是指在其常規的工作中,不需要寫任何代碼,而是通過創建頁面、線框圖、動態面板以及相關交互條件,就能把靜態線框圖變成可操作的交互式動態界面原型[12-14]。Axure RP軟件的共享協作支持創作者把制作好的原型產品發布到網上,或在云端進行共享。在未安裝原型軟件的前提下,相關人員便能預覽界面,同產品進行基礎互動,方便對多系統原型指標進行測試和評估,便于原型迭代,增強系統的研發效率。
筆者根據自身參與地質災害系統構建的相關經驗,參考目前行業內相關系統構建的實際情況,結合實際需求,對區域性地災氣象預警系統進行需求分析和功能構建設計,利用Axure RP10設計軟件對系統進行原型設計,為區域性地災氣象預警系統的進一步搭建和開發提供方案。
本研究構建的區域性地災氣象預警系統在數據、用戶和功能性、非功能性等方面具有以下要求。
2.1.1 數據需求。系統需要的數據(區域地質數據、災害數據、氣象數據等)由地質局、氣象局等部門提供。其中,區域地質數據包括行政區劃、道路、水系、地層巖性等;災害數據包括隱患點、斷層等數據;氣象數據主要指降雨量數據,包括實況雨量數據和預報雨量數據(一般為24 h預報雨量)。
2.1.2 用戶需求。該系統將用戶分為4類,即行政領導、專業技術人員、行政預警人員和系統管理員,并對不同用戶設置不同的權限。①行政領導。該系統為行政領導提供區域整體地質災害氣象預警數據,以及業務程序審核等權限。②專業技術人員。專業技術人員具有專業監測管理和隱患點信息、雨量數據、模型數據管理等權限,系統還為專業技術人員提供氣象預警產品制作的權限。③行政預警人員。系統為行政預警人員提供區域內地質災害氣象預警數據的整體情況、預警配置、監測信息和災害信息查詢、空間數據管理、成果管理和發布等權限。④系統管理員。除超級管理員外,系統管理員可單獨配置或直接將權限分給行政領導,系統為管理員提供相關的系統管理權限,包括單位管理、角色管理、用戶管理、日志查詢等。
2.1.3 功能性需求。該系統在滿足基本預警業務需求的同時,還能對雨量數據、預警產品制作與發布、預警信息等進行管理,并對系統用戶和角色進行權限控制,從而保障系統訪問和操作的安全。根據上述功能性需求分析,該系統包括雨量管理、預警模型、預警分析、預警成果管理、預警信息發布、系統和數據管理等模塊。
2.1.4 非功能性需求。非功能性需求是指界面需求和性能需求,要保證用戶界面是以用戶為中心,且界面美觀簡潔、布局合理、易操作、符合行業規范,同時在選擇數據傳輸方式和數據庫時,要保證安全可靠、擁有良好的運行和響應速度,可滿足系統長期穩定運行和易于升級的需求。
在系統需求分析的基礎上,系統功能模塊包括地圖基本功能、預警分析、雨量綜合、專業監測、地質災害、數據管理、系統管理等,詳細設計如圖2所示。
圖2 系統功能框架圖
在進行系統設計時,根據區域性地災氣象預警系統的需求和功能框架,采用圖形用戶界面(GUI)的設計原則,使界面簡潔、美觀,讓用戶對界面上的功能一目了然,使用戶能快速熟練掌握該系統[15]。首先對系統原型的主界面進行布局,然后再根據具體功能需求進行詳細的布局設計,系統布局設計圖[16]如圖3所示。
圖3 系統布局設計圖
圖3中,一級功能菜單欄包括預警分析、雨量綜合等6項,可在該區域全部顯示;個人管理菜單欄可對用戶信息進行查看和退出管理;二級功能菜單欄是一級功能下的各二級功能,對應區域可顯示一級功能菜單選中時的對應二級功能;地圖基本操作工具條包括對地圖的放大、縮小、全屏、復位、平移、定位等;地圖和預警信息顯示區域在地圖和信息操作時可進行可視化展示;底圖管理中有圖層控制樹可展示相關的空間數據,選中某個圖層時,系統彈出圖層的圖例,方便多個圖層疊加顯示。勾選隱患點圖層時,在地圖上疊加顯示隱患點,選中某個隱患點,以彈窗的形式顯示該隱患點的編號、災害類型等信息。
根據構建的系統功能框架和布局設計,首先在Axure RP軟件中制作出系統的登錄界面(見圖4)、主界面(見圖5)和各功能模塊內容,將各功能模塊添加到界面中的合適位置。其次是根據系統的功能需求,設置相應功能模塊的動態面板、各項操作進行交互設計,模型參數設置如圖6所示。再按照操作邏輯和功能邏輯對界面和模塊進行交互設計。最后發布制作好的區域性地災氣象預警系統,可發布到Axure Cloud中,或生成原型文件、Word規格說明書等材料,便于用戶進行初步體驗評估。
圖4 登錄界面設計圖
圖5 主界面設計圖
圖6 模型參數設置設計圖
區域性地災氣象預警系統擬采用B/S體系架構,在標準規范體系和安全防護體系的指導和約束下,在IT基礎環境中構建地質災害氣象數據資源體系,實現對地質災害、氣象多源異構數據的采集、匯交、轉換等,從而形成區域性地災氣象預警綜合數據庫,并在此基礎上搭建網頁版區域性地災氣象預警在線系統,為用戶提供專業的業務功能及信息服務。
建立標準統一的區域性地災氣象預警系統數據庫,實現對基礎地理數據、地質災害隱患點數據、氣象雨量數據、預警成果數據、用戶數據等的科學采集和統一管理,為地質災害氣象預警系統的應用提供數據支撐。區域性地災氣象預警系統擬采用SQL Server數據庫。
區域性地災氣象預警系統數據庫包括空間數據庫、地質環境數據庫、氣象預警數據庫、系統管理數據庫等,詳細內容見表1。
表1 數據庫建設信息表
在后續研究中,筆者將在GIS平臺、數據庫的基礎上,擬采用HTML5+Javascript+C#的方式進行開發,采用面向服務的思想進行設計,建立區域性地災氣象預警系統,從而實現對區域內地質災害氣象預警任務的發布。
3.2.1 系統開發環境。區域性地災氣象預警系統開發環境見表2。
表2 系統開發環境
3.2.2 關鍵技術。在系統開發過程中用到Web API技術、WCF技術、WebSocket技術、Owin-SelfHost自宿主、集群和容器技術、多進程技術、Ajax技術、多用戶并發訪問與長事務處理技術、JQuery技術、GIS技術等。
本研究以區域性地災氣象預警系統的原型設計為研究對象,將原型設計軟件Axure RP引入區域性地質災害氣象預警系統的創建中,通過該軟件來理清系統的設計思路,對區域性地災氣象預警系統進行需求分析,完成系統功能框架建立和布局設計,初步構建基于區域性地質災害和氣象的預警系統原型,同時提出系統數據庫和架構設計,為后續開發過程奠定基礎,也為地質災害防治工作者提供借鑒。
在后續的工作中,還可深入考慮以下3個方面。①增強區域性地災氣象預警系統的功能細節。②在使用SQL Server數據庫時,結合MySQL Binlog對系統用戶的操作進行審計,能更好地實現SQL監控。③將區域性地災氣象預警系統與區域性地質災害綜合防治系統進行結合交互。