唐小玲
(四川工業(yè)科技學(xué)院,四川 德陽 618000)
對于企業(yè)而言,企業(yè)核心競爭力主要通過“資質(zhì)”來體現(xiàn),很多企業(yè)參與投標(biāo)也會(huì)將資質(zhì)信息作為標(biāo)書的一部分內(nèi)容,使客戶可以透過資質(zhì)了解企業(yè)實(shí)力。資質(zhì)管理在企業(yè)中負(fù)責(zé)資質(zhì)原材料管理,具體包含原材料儲(chǔ)存、外借等,傳統(tǒng)資質(zhì)管理模式不僅工序繁瑣,也無法保證資料的安全性,還會(huì)浪費(fèi)企業(yè)資源。當(dāng)企業(yè)業(yè)務(wù)領(lǐng)域拓寬之后,運(yùn)營規(guī)模也隨之?dāng)U大,原來資質(zhì)管理不再適用于當(dāng)前企業(yè)管理需求。企業(yè)轉(zhuǎn)型升級(jí)之后,信息化建設(shè)成為新的目標(biāo),利用各項(xiàng)信息數(shù)據(jù),推進(jìn)企業(yè)管理自動(dòng)化、數(shù)字化與智能化。在此基礎(chǔ)上企業(yè)資質(zhì)管理開始與信息化融合,構(gòu)建資質(zhì)管理系統(tǒng),提高資質(zhì)材料管理效率。企業(yè)構(gòu)建資質(zhì)管理系統(tǒng)時(shí),SSM 框架的效果最為理想,本文在SSM 框架基礎(chǔ)上開發(fā)資質(zhì)管理系統(tǒng),為企業(yè)資質(zhì)管理工作提供支持。
企業(yè)開發(fā)資質(zhì)管理系統(tǒng),SSM 框架作為開發(fā)工具,是由Spring、SpringMVC、MyBatis 這三個(gè)開源框架組成。以往企業(yè)開發(fā)系統(tǒng)采用SSH 框架(Struts+Spring+Hibernate),相比該框架SSM 框架采用輕量級(jí)配置,并體現(xiàn)了注解開發(fā)的優(yōu)勢,ORM 更具靈活性,SQL 也到很大改善[1]。SSH 框架的重點(diǎn)在于配置開發(fā),Hibernate 在JDBC 封裝性上,更多是面向?qū)ο?,增刪改查數(shù)據(jù)維護(hù)在實(shí)施中也更加自動(dòng)化,然而SQL 優(yōu)化效果卻不是非常理想。結(jié)合當(dāng)前SSM 框架在資質(zhì)管理系統(tǒng)開發(fā)中的應(yīng)用經(jīng)驗(yàn),相關(guān)技術(shù)分析如下:
Spring 為輕量級(jí)開源框架,其中IOC 容器與AOP是該技術(shù)的核心,見圖1。應(yīng)用IOC(Inversion of Control,即控制反轉(zhuǎn))進(jìn)行系統(tǒng)設(shè)計(jì),IOC 對于已經(jīng)完成設(shè)計(jì)的對象,轉(zhuǎn)移至容器控制,容器具有創(chuàng)建、查找依賴對象的功能,同時(shí)可注入到組合對象中[2]。AOP(Aspect Oriented Programming,面向切面編程),在系統(tǒng)設(shè)計(jì)中提取與系統(tǒng)有關(guān)的編程,保證獨(dú)立性的同時(shí),利用切面切入系統(tǒng)之中,以免業(yè)務(wù)邏輯代碼混合了其他系統(tǒng)邏輯。
圖1 Spring 框架
Spring MVC 框架為輕量級(jí)Web 框架,設(shè)計(jì)前端控制器模式時(shí),也利用該技術(shù)設(shè)計(jì)請求驅(qū)動(dòng)框架,見圖2。
圖2 Spring MVC 框架
MyBatis 是在iBatis 基礎(chǔ)上延伸而來,屬于持久層框架,見圖3。應(yīng)用中通常只需要了解SQL,無需花費(fèi)大量精力處理JDBC 過程代碼[3]。MyBatis 利用XML、注解,可對待執(zhí)行statement 進(jìn)行合理配置,同時(shí)采用Java 對象、statement 的sql,映射之后可形成sql 語句,再利用MyBatis 框架便可完成sql 的執(zhí)行,結(jié)果映射為Java 對象后便可返回。
圖3 MyBatis 框架
資質(zhì)管理系統(tǒng)架構(gòu)需要在B/S 架構(gòu)、SSM 框架基礎(chǔ)上展開設(shè)計(jì),由前端界面層、后端Web Service 層組成[4]。界面層聯(lián)系用戶,瀏覽器內(nèi)用戶按照需求執(zhí)行對系統(tǒng)的操作,向應(yīng)用層傳輸HTTP 請求,應(yīng)用層處理請求之后在界面層顯示處理結(jié)果。Shiro 技術(shù)認(rèn)證前端傳輸數(shù)據(jù),認(rèn)證之后的數(shù)據(jù)向后端Web Service 層傳輸。Spring 容器、Activiti 工作流引擎會(huì)存在于Web Service 層之中[5]。
資質(zhì)管理系統(tǒng)的功能模塊設(shè)計(jì)需要用到類圖(class diagram),代表系統(tǒng)內(nèi)部靜態(tài)結(jié)構(gòu)。類圖即提高了程序代碼和數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)的規(guī)范性。資質(zhì)管理系統(tǒng)功能模塊包括技術(shù)人員資質(zhì)模塊、企業(yè)資質(zhì)模塊、系統(tǒng)管理模塊等[6]。技術(shù)人員資質(zhì)模塊用例核心類表示,分為Qualification Controller 類、Qualification Service 類、技術(shù)人員類、技術(shù)人員資質(zhì)類,技術(shù)認(rèn)證類、上傳文件類、下載記錄類、生成文檔類、反饋信息類、PicWordDAO 接口等。其中Qualification Controller 類負(fù)責(zé)校驗(yàn)請求參數(shù)、用戶權(quán)限,調(diào)取Qualification Service 類的業(yè)務(wù)邏輯和Dao接口數(shù)據(jù)庫的各項(xiàng)操作。
因?yàn)镸ySQL 的體積不大,且運(yùn)行速度非???,具有開源免費(fèi)的優(yōu)勢,資質(zhì)管理系統(tǒng)開發(fā)應(yīng)用MySQL 這一關(guān)系型數(shù)據(jù)庫,一般會(huì)在數(shù)據(jù)庫表中儲(chǔ)存資質(zhì)管理所需的各項(xiàng)數(shù)據(jù)。設(shè)計(jì)數(shù)據(jù)庫時(shí),已經(jīng)簡化處理的原始信息進(jìn)行轉(zhuǎn)換,為需要信息項(xiàng)目提供支持,定義表列屬性也更加詳細(xì),資質(zhì)管理系統(tǒng)內(nèi)有存儲(chǔ)需求的類,也可轉(zhuǎn)換為關(guān)系型數(shù)據(jù)表?;谛枨蠓治銎陂g形成的領(lǐng)域模型可以直接生成核心類。按照需求分析用例,還可通過核心用例設(shè)計(jì)數(shù)據(jù)庫。核心數(shù)據(jù)庫表包括用戶信息表、技術(shù)人員信息表、企業(yè)資質(zhì)信息表、角色信息表等。
構(gòu)建資質(zhì)管理系統(tǒng)架構(gòu),可實(shí)現(xiàn)系統(tǒng)內(nèi)部所有模塊功能,此環(huán)節(jié)需要用到j(luò)ar 文件、源碼包、mvc-dispatcher-servlet.xml 文件等,整合SSM 技術(shù)框架。其中mvcdispatcher-servlet.xml 文件在系統(tǒng)中依靠自動(dòng)掃描控制器實(shí)現(xiàn)相關(guān)的功能,自動(dòng)化搜索類,對相關(guān)對象進(jìn)行初始化處理。經(jīng)過框架整合后,在其中導(dǎo)入源碼包,便可構(gòu)建完成資質(zhì)管理信息系統(tǒng)的架構(gòu)。
資質(zhì)管理系統(tǒng)中的管理模塊,包括登錄認(rèn)證模塊、用戶權(quán)限模塊、角色管理模塊,負(fù)責(zé)用戶注冊賬號(hào)、賬號(hào)與管理、系統(tǒng)各個(gè)角色管理等工作。要想使資質(zhì)管理系統(tǒng)運(yùn)行更加安全,管理模塊設(shè)計(jì)應(yīng)該在用戶角色訪問控制基礎(chǔ)上展開,即系統(tǒng)管理員負(fù)責(zé)管理模塊的各項(xiàng)操作。如果有用戶想要登錄系統(tǒng)主頁,判斷其角色,若確定非管理員,便會(huì)對其隱藏管理模塊入口。登錄認(rèn)證模塊的設(shè)計(jì)時(shí),用戶面對系統(tǒng)顯示的登錄界面,輸入賬號(hào)、密碼后可進(jìn)入。SpringMVC 框架中包括DispatcherServlet,主要負(fù)責(zé)接收用戶提出的各項(xiàng)請求信息,以此為依據(jù)利用URL 調(diào)取LoginController 包含的login 方法,認(rèn)證用戶信息。用戶權(quán)限模塊設(shè)計(jì)時(shí),盡管安全框架有通配符負(fù)責(zé)權(quán)限校驗(yàn),然而在設(shè)計(jì)過程中依然需要緊密聯(lián)系企業(yè)中的業(yè)務(wù)授權(quán)模塊,劃分模塊權(quán)限,再進(jìn)一步分配給每一名用戶,如管理員、銷售、普通用戶等。角色管理模塊的訪問者只有管理員,負(fù)責(zé)在資質(zhì)管理系統(tǒng)中增刪角色。一般管理員聯(lián)系企業(yè)業(yè)務(wù)的具體需求,在系統(tǒng)中添加相應(yīng)的角色信息、分配權(quán)限。管理員在角色管理頁面中調(diào)取SysController 中l(wèi)ist,由該方法包含的Dao 中selectAllUalidList,獲取相應(yīng)角色的信息,向前段反饋。最后儲(chǔ)存角色信息,SysController 的addRo1e 中post 可以處理角色信息。
資質(zhì)管理系統(tǒng)設(shè)計(jì)之后,需要對各項(xiàng)功能進(jìn)行測試。因?yàn)镻owerBuilder 可以在系統(tǒng)測試時(shí),發(fā)現(xiàn)代碼錯(cuò)誤,所以系統(tǒng)設(shè)計(jì)過程中,便已經(jīng)完成所有代碼測試。資質(zhì)管理系統(tǒng)測試的重點(diǎn),在于數(shù)據(jù),測試時(shí)分析可能會(huì)漏掉的條件,并輸入合理性差的數(shù)據(jù),已經(jīng)明確的數(shù)據(jù)也需要輸入系統(tǒng)中及時(shí)檢查結(jié)果,對比提前計(jì)算的一致性。經(jīng)過上述流程,可以糾正資質(zhì)管理系統(tǒng)存在錯(cuò)誤,從而在SSM 框架基礎(chǔ)上完成資質(zhì)管理系統(tǒng)開發(fā)。
登錄功能測試階段,針對用戶注冊、登錄、密碼修改等功能進(jìn)行了測試。測試人員分別采取填寫注冊信息、輸入不同的密碼、輸入空密碼、填寫錯(cuò)誤的原密碼等形式進(jìn)行功能測試,最終測試結(jié)果均與系統(tǒng)設(shè)計(jì)預(yù)期一致,而且能夠保證登錄模塊運(yùn)行的功能。
對于技術(shù)人員資質(zhì)功能進(jìn)行測試,測試內(nèi)容包括添加信息權(quán)限、技術(shù)人員與資質(zhì)信息、查看信息與身份證、信息查詢、下載等。測試過程中從管理員審核權(quán)限、下載模板、刪除資質(zhì)信息等發(fā)方面進(jìn)行此模塊功能的檢驗(yàn),測試結(jié)果與設(shè)計(jì)預(yù)期相符。
對資質(zhì)管理系統(tǒng)中企業(yè)資質(zhì)模塊進(jìn)行測試,測試內(nèi)容分別為企業(yè)資質(zhì)信息、信息查看、信息下載、信息刪除等。測試人員在系統(tǒng)測試階段,輸入顯示的所有信息、查看詳細(xì)的企業(yè)資質(zhì)信息、根據(jù)不同條件查詢信息、將企業(yè)資質(zhì)信息刪除,最終測試效果與系統(tǒng)運(yùn)行功能一致。
資質(zhì)管理系統(tǒng)測試階段,系統(tǒng)功能實(shí)現(xiàn)進(jìn)行驗(yàn)證。對于非功能性的測試,主要是針對資質(zhì)管理系統(tǒng)性能、安全性、兼容性等進(jìn)行。當(dāng)結(jié)束了非功能性測試之后,系統(tǒng)開發(fā)人員與測試人員,綜合分析非功能性測試所得結(jié)果,如果測試發(fā)現(xiàn)與預(yù)期結(jié)果不符,便要對相應(yīng)的功能進(jìn)行改進(jìn)。下面針對資質(zhì)管理系統(tǒng)功能瀏覽器的兼容性和性能進(jìn)行測試,測試結(jié)果如下:(1) 測試目的。資質(zhì)管理系統(tǒng)的所有功能,分別檢驗(yàn)所有功能在火狐、IE8 等瀏覽器中的有效性;(2) 測試用例級(jí)別。此項(xiàng)功能的測試重點(diǎn)測試兼容性;(3) 測試流程。資質(zhì)管理系統(tǒng)的測試人員,分別利用Chrome、IE8、360 等瀏覽器進(jìn)行功能測試。測試之后,確定各個(gè)瀏覽器頁面布局不存在異常,而且所有功能均得到實(shí)現(xiàn),滿足資質(zhì)管理系統(tǒng)兼容性要求。
總而言之,資質(zhì)管理系統(tǒng)最大的作用在于提升資質(zhì)管理工作效率,利用系統(tǒng)中業(yè)務(wù)方面的需求,并對比所有框架技術(shù)。系統(tǒng)設(shè)計(jì)與開發(fā)采用SSM 框架,搭建系統(tǒng)技術(shù)架構(gòu),使資質(zhì)管理系統(tǒng)頁面更為豐富,并將資質(zhì)管理原本的操作流程加以簡化。通過UML 建模語言(圖4)所包含的用例圖,總結(jié)資質(zhì)管理系統(tǒng)功能需求,結(jié)合資質(zhì)管理系統(tǒng)開發(fā)的目標(biāo)與要求,在系統(tǒng)設(shè)計(jì)之前必須要搭建好SSM 框架,并在框架中融入Activiti、Quartz、Shiro等技術(shù)。除此之外,開發(fā)人員還應(yīng)該科學(xué)掌握所有系統(tǒng)開發(fā)方法,在資質(zhì)管理方面實(shí)現(xiàn)所有資質(zhì)搜索、下載,按照系統(tǒng)中查詢所得結(jié)果,確定下載資質(zhì)信息。資質(zhì)管理員向所有用戶分配相應(yīng)的權(quán)限,普通用戶不能在系統(tǒng)中直接下載資質(zhì)信息,而是必須通過了資質(zhì)管理員審批方可下載。
圖4 UML 用例圖
綜上所述,企業(yè)資質(zhì)管理在開展信息化、自動(dòng)化轉(zhuǎn)型期間,為了使原本的資質(zhì)管理模式轉(zhuǎn)變?yōu)樽詣?dòng)化管理,非常注重資質(zhì)管理系統(tǒng)的開發(fā)。設(shè)計(jì)系統(tǒng)過程中,針對企業(yè)資質(zhì)管理的各項(xiàng)業(yè)務(wù)需求,采用SSM 框架,制定資質(zhì)管理系統(tǒng)開發(fā)、設(shè)計(jì)方案。資質(zhì)管理系統(tǒng)在企業(yè)中運(yùn)行、應(yīng)用,不僅可以提高資質(zhì)管理工作的效率,還可以推進(jìn)資質(zhì)管理實(shí)現(xiàn)自動(dòng)化,減少人力資源耗損,也在企業(yè)管理基礎(chǔ)上融入SSM 框架,資質(zhì)管理員具有資質(zhì)分配權(quán)限,在資質(zhì)管理系統(tǒng)的幫助下,使資質(zhì)分配、資質(zhì)信息下載等更加高效地進(jìn)行,將原本資質(zhì)管理的業(yè)務(wù)流程簡化,有利于提高企業(yè)資質(zhì)管理水平。