趙小廈 南京技師學院
近些年國內外都在對云計算和云存儲展開積極研究和探討,目前已經有很多技術或理論研究成果。國內政府也積極鼓勵和倡導云計算的研究,尤其各行各業是云計算實際應用的展開,即“云落地”。但是在云計算和云存儲在學校教學領域的應用幾乎沒有開始。而恰恰學校具備豐富的符合云計算展開應用的物理設備資源。一方面,學校有大量的機房,除了上課時間有用,其他時間都處于閑置狀態。另一方面,計算機行業硬件更新換代比較快,學校里每年都會因為更新教學和辦公設備,換下來很多舊電腦,這些舊電腦具有內存不足,硬盤空間有限等特點,而當成耗費品處理或閑置。這些劣勢,正好可以采用云存儲關鍵技術可以得到規避。
目前云存儲在教學資源管理這方面還沒有成型的系統實現。目前我校及大部分院校的現狀是教學電子資源沒有統一的管理和存儲。一般表現在:任課教師自行管理教學資源;教學資源手動拷貝和傳遞文件,不利于教師間、師生間共享資源;教學資源存儲重復,且版本不一致;學校教學檢查需要手動收集電子教學資源,甚至要求打印出來。
另外目前移動互聯網發展廣泛,互聯網+教育層出不窮,手機終端應用普遍,該系統配套研發移動終端APP應用,這樣可以實現教師隨時隨地備課,學生隨時隨地學習。
本項目基于學校現有的云存儲物理資源的良好基礎,研發出一個管理教學資源系統,配合任課教師教學工作的展開,做到教學資源的統一管理和共享,有利于提高教師的教學質量以及學生的自主學習能力。
存儲管理模塊部分,包括資源的分配、存儲和訪問調度等的設計和實現。管理系統平臺部分,實現一個完整的信息管理系統,包括教師登陸,可以看到其對應的課程的資源信息列表,教師可以對電子資源進行增加、刪除、修改和查看,同時可以對資源進行上傳和下載;教務員登陸,可以看到各個教師的授課計劃、電子教案等資源列表,可以進行分類查詢和打分。學生登陸,可以看到本學期所修的課程的相應電子資源,可以進行查看或下載;系統管理員登陸,可以對用戶信息和權限以及各種教學資源進行管理。移動終端APP部分,教師和學生安裝APP應用后,可以在手機終端查看和下載電子教學資源,教師可以隨時隨地備課,學生可以隨時隨地進行學習。
該課題研究采用云存儲技術設計出符合管理教學電子資源的存儲框架方案,同時開發管理系統平臺,實現教育教學信息化管理和應用。同時采用移動互聯網技術,實現教學過程移動化應用。
系統包括三部分:一是基于學校機房環境的云存儲技術的教學電子資源存儲管理模塊;二是管理系統平臺的實現;三是系統移動終端的實現。
該系統的服務器和PC端的實現主要是基于SSM框架開發,云存儲管理和實現是采用OpenStack環境部署及Java應用開發,移動終端是使用Android語言開發,使用的數據庫是SQL Server 2012。
SSM是由三大框架合成的,其中Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架;Spring MVC分離了控制器、模型對象、分派器以及處理程序對象的角色;MyBatis是一個基于Java的持久層框架,MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJOs映射成數據庫中的記錄。
采用的在Linux服務器上部署和實施OpenStack。OpenStack提供開放源碼軟件,建立公共和私有云,提供了部署云的操作平臺或工具集。
使用Android平臺進行開發,Android開發四大組件分別是:Activity、Service、BroadcastReceiver和Content Provider。
本系統管理部分使用的數據庫是SQLServer 2012,云存儲部分使用的數據庫是MySQL。
這里主要的工作是實現云計算部署,具體是在Linux服務器上部署OpenStack框架,建立空間可擴充的虛擬機群。其次還需開發在集群上管理文件的軟件,具備類似于云盤的功能,這部分采用java程序開發,且使用的數據庫是MySQL。
(1)系統平臺的開發。在管理系統做好詳細設計后,采用Eclipse工具進行開發,在項目中部署好SSM框架的各個部分,并遵循各框架的開發規范進行開發。
(2)生成項目數據庫。部署好數據庫環境后,新建數據庫,按照詳細設計中數據庫的設計建立項目所需要的數據表、視圖、觸發器等。同時生成一些假數據供項目開發過程進行調試和測試。
(3)項目發布和實施。采用Apache Tomcat服務器進行項目的發布和實施。
對本系統的終端做好詳細設計后,開始部署Android開發環境。下載Android SDK,在eclipse上ADT進行開發。開發過程遵循Android開發四大組件的開發規范。終端APP應用與整個系統平臺間采用POJO實體進行通訊交互。
本文所介紹的基于云存儲的教學資源管理系統,可以推廣應用到任何學校,具有廣泛的市場應用價值。通過本文的閱讀能對該項目從系統功能、系統架構、關鍵技術和實現方式上有比較專業系統的認識。可為其他類似系統的設計和實現提供思路和方法上的借鑒。