劉健
摘 要: 為了提高軟件評測業務效率,開發與設計了基于B/S架構的軟件評測管理系統。以.NET為平臺,采用B/S架構中常用的MVC設計模式,以及ASP.NET、CSS+DIV 等技術進行系統開發,通過SQL Server建立系統數據庫,并由ADO.NET組件實現數據庫的操作,完成了軟件評測管理系統的報告錄入、分配、提交審核、歸檔等功能。實際應用表明,基于.NET的軟件評測管理系統能夠實現評測業務的無紙化操作,提升了業務的流轉效率。
關鍵詞: .NET; B/S; 管理系統; 數據庫
中圖分類號:TP315 文獻標志碼:A 文章編號:1006-8228(2018)09-99-03
Abstract: In order to improve the efficiency of software testing & evaluating, this paper develops and designs a software testing & evaluating management system of B/S structure, which uses the frequently-used MVC design pattern on the .Net platform, uses ASP. Net, CSS+DIV to develop, and builds the database by SQL Server, uses ADO.Net components to access it. This system realizes the function of report input, distribution, submission, verification, filing etc. It realizes the paperless operation for the software testing & evaluating management and improves the efficiency of business flow.
Key words: .NET; B/S; management system; database
0 引言
目前,檢驗所受理軟件評測業務后由人工分發到各工程師,工程師完成評測報告后提交審核,審核通過后歸檔整理,并由受理人員告知客戶評測報告進度,整個過程類似生產流水線。這種傳統方式存在一些缺點:評測業務分發到的工程師需人工登記,等待評測的客戶聯系評測事宜時受理人員需手動翻閱記錄本,查找對應工程師,操作上低效耗時,客戶體驗不佳;宏觀上來講這種方法也不便均衡每個工程師的業務量,不利于監控每個評測業務所處階段,導致評測報告完成時無法第一時間通知到客戶。針對以上存在的弊端,結合計算機網絡技術,設計一種信息管理系統,滿足軟件評測業務的需求,讓評測業務流程化運作起來,推動執行力,方便安排任務、跟蹤監督任務以及最終評估任務完成情況。
1 總體設計
1.1 系統分析
軟件評測管理系統需求上包括以下幾個方面:評測業務登記、分發、提交、審核、歸檔。涉及到的角色有受理人員、分發人員、工程師、審核人員。流程及人員關系如圖1所示。
根據實際業務在系統中分發人員由受理人員和組長組成,分發有兩個層級,第一層級分發由受理人員將評測業務分配到組長,第二層級分發由組長分配到工程師。系統中共設計受理人員、組長、工程師、審核人員四種角色。
1.2 系統環境
在.NET架構中的公共語言運行庫組件提供了對多種語言的支持,如C#、J#、C++、VB.NET等,本文所設計的系統采用C#語言編寫,通過局域網網絡連接服務器,在客戶端使用瀏覽器實現信息的錄入、更新、查詢及分析。開發的服務器端軟件運行在Windows 2003中,數據庫采用SQL Server 2005[1],使整個系統能夠兼容,并且還具有安全性及控制能力。
2 軟件設計
2.1 系統功能設計
本系統根據需求將功能按角色分配,各角色共有的功能包括系統注冊、登錄系統、查詢評測業務。
受理人員功能:登記評測業務,分配評測業務到組長,歸檔已完結的評測業務。
組長功能:分配評測業務到組員,提交評測業務。
工程師功能:提交評測業務。
審核人員功能:審核評測業務。
其中查詢評測業務具有權限控制,工程師只能查詢自己的評測業務,組長可查詢組員的評測業務,受理人員和審核人員可查詢所有組長及工程師的評測業務。為跟蹤業務進度將業務狀態分為“尚未分發”、“評測中”、“審核中”、“已完成”、“已歸檔”,各狀態以當前時間所處階段來劃分,時間節點分別為“送到日期”、“分發日期”、“提交日期”、“完成時間”、“歸檔日期”。如圖2所示。
2.2 數據庫設計
本文采用的是MVC三層結構[2],前臺作頁面設計和布局,中間層作業務邏輯處理,后臺使用數據庫存取數據,因此數據庫設計是系統的一個重要環節。根據數據庫設計的方法和步驟,首先進行數據的收集與分析,然后在此基礎上建立一種抽象的數據模型及E-R圖,最后把E-R圖轉換成相應的關系模式。根據對系統的功能分析,提取出本數據庫的幾大實體及實體間的聯系,通過相互作用形成數據流動[3],如圖3所示。
將E-R圖轉變為SQL Server數據庫系統支持的數據模型,從而得到系統需要的信息表及字段,系統主要數據庫表如表1-表3所示。
3 系統實現
3.1 母版頁的設計與實現
在.NET中,母版頁與頁面模板一樣,使用母版頁創建統一的用戶界面與樣式,可以將Web應用程序中的靜態文本,如網站標志、廣告條、導航條、版權聲明、HTML元素和服務器控件預定義布局等內容整合到母版頁中。當用戶請求內容頁時,將母版頁的布局與內容頁中的內容組合在一起輸出。本文的母版頁設計如圖4所示。
3.2 數據庫連接
將連接數據庫的地址、用戶名、密碼等信息配置到Web.Config文件中的appSettings標簽中。每一次的數據庫操作都通過讀取appSettings中的值實現數據庫的連接。
String strCon=ConfigurationSettings.AppSettings
["ConnectionString"];
try
{ SqlConnection conn=new SqlConnection(strCon);
conn.Open();
…… //數據庫的讀寫、查詢
conn.Close();
}
catch
{}
3.3 用戶登錄
以用戶登錄的驗證為例,如果賬戶和密碼不是空值,那么查詢用戶賬號是否存在的。如果沒有存在,提示“用戶未注冊,請注冊后再登錄”。如果存在,判斷用戶名和密碼是否相同,如果相同,用戶就能夠訪問系統,如果不相同,提示“密碼輸入有誤”。為保證系統中用戶密碼的安全性,數據庫中存儲的密碼為加密后的密文,故在判斷密碼時先要將明文轉換為密文。
byte[] result=Encoding.Default.GetBytes
(TextBox_password. Text);
MD5 md5=new MD5CryptoServiceProvider();
byte[] output=md5.ComputeHash(result);
string sCipher=BitConverter.ToString(output).Replace("-", "");
3.4 數據管理
用戶能夠通過系統頁面實現業務數據的管理,包括數據的插入、修改、刪除、查詢。通過報告錄入界面將業務數據寫入到數據庫,使用SQL語句更新業務所屬的工程師和時間節點,同時可在主頁中查詢業務相關信息,本系統使用GridView控件綁定數據源,如圖5。
SqlDataAdapter da=new SqlDataAdapter(strQuery, conn);
DataSet ds=new DataSet();
da.Fill(ds);
GridView_main.DataSource=ds.Tables[0].DefaultView;
3.5 系統的測試
系統的測試[4]主要包括系統的功能、性能、可用性、客戶端兼容性、安全性測試,細分為鏈接、表單、設計語言、數據庫、負載、壓力、連接速度、導航、圖形、整體界面、內容、平臺、瀏覽器、登錄、日志安全、超時限制、系統漏洞等的測試。根據.NET 系統的封裝及抽象特點,使用黑盒測試,對系統的可用性及功能進行測試。通過不斷的調試及反復測試,系統基本滿足設計需求,實現了開發目標。系統的功能測試詳見表4。
4 結束語
基于.NET的軟件評測管理系統具有良好的穩定性,代替了傳統的紙質管理,提高了業務分配的公平性和效率。通過研究表明,該系統在信息管理尤其涉及到流水作業方面具有一定的通用性,能夠滿足用戶的基本需求。除了.NET技術還有J2EE等技術架構也可實現類似的管理系統,通過不同技術之間對比,找到各自優劣,實現快速高效地開發,提升系統的擴展性和可維護性始終是我們將來需要進一步探索研究的工作。
參考文獻(References):
[1] 龍馬工作室.新編ASP.NET 2.0+SQL Server 2005 從入門到精通[M].人民郵電出版社.2008.
[2] Grady Booch,Robert A. Maksimchuk,Michael W.Engel,etal.王海鵬,潘加宇譯.面向對象分析與設計(第3版)[M].人民郵電出版社,2009.
[3] 劉敬敬.基于B/S構架的學生信息管理系統的研究[J].無線互聯科技,2014.11(6):75-76
[4] 劉晶.基于.NET的學校信息管理系統的研究[J].電子設計工程,2017.25(21):164-168