摘 要:本文基于軟件工程的設計思想,分析了圖書借閱系統中的需求,利用模塊分析的方法設計系統的登陸、管理、維護、設置四個模塊,在服務器-客戶端的網絡框架下,設計了整個圖書借閱信息化系統。整個系統完善了借閱流程、減輕了工作量、增強了安全保密性、加強了圖書借閱管理。
關鍵詞:圖書借閱;軟件工程;網絡框架
圖書館是傳統獲取信息資源的主要來源地,但隨著信息化時代的到來,當今社會出現了“信息爆炸”現象,Internet上的信息量與日俱增,數量眾多的信息資源給我們便捷的獲取資料方式,傳統人工手動管理下的圖書館面臨形式較為嚴峻,傳統人工手動管理方式存在諸如圖書利用率不高、資料保密性差等許多缺點,對于長時間運行之后產生大量數據資料的查找、更新和維護也是一個較為困難的管理問題[1]。以網絡為中心的計算機技術、通信技術、信息存儲技術的相互滲透、連接,已形成全方位的信息服務網絡。用戶對信息的需求不再只對單一的載體所含的信息感興趣,他們對信息的需求往往需要通過不同的途徑來得到滿足。用戶關心的不再是獲取信息的過程,而是對其獲取的結果感興趣,他們往往要求圖書館能夠圍繞他們關心的信息提供一系列信息資料,用戶對圖書館的評價,取決于圖書館能否提供他們所需的全方位信息。信息資源分布的分散性和信息技術利用的分離狀態使圖書館的作用凸現,而集成化圖書館服務可以按個性和客觀需求,在網絡環境下集中獲取所需信息。服務要求集成化表現在以下兩個方面:一是提供服務的網絡化信息資源的全面、豐富性;二是能滿足信息用戶對信息類型和信息媒體多樣化的需求,如提供包括文字型、數據型、圖像視頻型、音頻型、軟件型等各種數據庫等。
為了減輕圖書管理員的工作量,為用戶提供一個快捷、準確的使用環境,實現對所有圖書進行準確、輕松的管理,本文根據軟件工程的思想,設計一套新型的圖書信息化管理系統軟件,使用信息化技術圖書館的圖書資料信息進行分類管理,實現快速查找、大存儲量、高可靠性、高保密性、長壽命等功能,極大地提高圖書資料管理的效率[2-3]。
1 軟件工程
1.1 軟件工程簡介
軟件工程屬于工程類的學科,主要側重于實踐應用,即是將軟件工程理論和知識應用于實際的軟件設計開發中。軟件工程的主要目的是設計出高質量的軟件系統,它借鑒了數學建模、計算機科學、管理科學和傳統工程科學等多個學科的知識,利用工程科學設計范型、評估成本、權衡風險,應用數學建模和計算機科學構造軟件系統的模型及算法,使用管理科學制定計劃、分配資源、管理質量、控制成本。
1.2 軟件工程的組成
一般來說,軟件工程分為三大部分,即軟件工程包含下列三大過程[5]:
1)項目開發過程,是指系統開發人員設計并開發軟件的過程,主要包括客戶需求分析、軟件系統設計、編碼、系統測試等幾大內容,類比于傳統機械加工中產品在車間的生產過程;
2)項目管理過程,是指項目負責人或產品經理在開發過程初期對軟件開發過程的規劃,并在開發過程中控制開發進度的過程,類比于傳統機械加工中對車間加工過程的管理過程;
3)項目改進過程,即是對上述項目開發過程和項目管理過程的管理和改進,包括對開發過程和項目管理過程的定義與改進,保證高質量產品的生產過程。
可以說,軟件工程包含的三大過程構成了一個系統工程,成為軟件行業的必備基礎。但在現今的軟件項目中,項目開發過程往往受到大家更多的關注,而項目管理過程和項目改進過程經常得到忽視,根據實踐經驗,其實后面兩個過程十分重要,在某些時候其重要性甚至超過項目開發過程。隨著市場需求的變化,對軟件產品的要求也不斷發展,軟件規模越來越龐大,軟件開發也會逐步由個人作坊式開發向工廠流水線化變化,整個軟件項目的開發過程也逐漸向傳統的機械加工行業的生成過程進化,產品內容、產品質量、生產時間、生產成本等都成為項目管理的工作內容,軟件工程逐步向規范化、工程化、工藝化、機械化發展。
1.3 軟件工程的開發方法
1.3.1 結構化開發方法
結構化開發方法由Yourdon和Constantine提出,也被稱為面向數據流的開發方法。結構化開發方法是80年代使用最廣泛的軟件開發方法,它首先用對軟件的需求利用結構化分析法進行需求分析,然后利用結構化設計方法對整個軟件進行總體設計,最后利用結構化編程方法實現系統。它給出的變換型和事務型兩類典型的軟件結構,使得軟件開發的成功率大大提高。
1.3.2 面向數據結構開發方法
面向數據結構的開發方法是把問題分解為可由三種基本結構形式表示的各部分的層次結構,最典型的代表即Jackson方法。三種基本的結構形式包括順序、選擇和重復,這三種基本數據結構可以進行任意組合,最終形成各種形式的復雜結構體系。該方法從系統的輸入、輸出數據結構入手,得到整個程序框架結構,再補充細節,最終得到完整的程序結構圖。該方法對輸入、輸出數據結構明確的中小型系統特別有效。
1.3.3 面向對象開發方法
面向對象和分布式、并行組成了當前計算機業界最流行術語,面向對象開發方法位于當今計算機業主導地位。面向對象技術是一次軟件開發技術的革命,在軟件開發史上具有里程碑的意義。該方法包括面向對象編程、面向對象設計和面向對象分析三個步驟,采用了自底向上歸納與自頂向下分解的相結合方法,以對象為開發基礎,不僅考慮了輸入、輸出數據結構,同時也包含了所有對象的數據結構。該方法通過對象模型的建立,實現基于用戶的需求,同時大大改善系統的可維護性。
2 圖書管理系統的分析與設計
2.1 系統管理需求
系統需求分析是系統開發的基礎,它將客戶的需求抽象為模型,為軟件系統的開發打下基礎。本文中需要實現圖書館管理系統主要針面對普通讀者借閱和管理員管理兩部分:
1)普通讀者:可以登錄系統時不需要輸入用戶名和密碼,可直接查閱圖書信息,也可以通過書名、作者、出版社、ISBN編號等多個選項進行查詢,了解所需借閱圖書的在庫情況,但普通讀者無權修改庫中的數據信息。
2)管理員:登陸時需要輸入管理員密碼,以此保證圖書管理系統的安全,管理員擁有對圖書信息庫數據庫進行操作的權限,系統應該為管理員提供了較完善的數據庫維護功能,可以是管理員方便的進行圖書管理,包括新書入庫、圖書借還、修改圖書信息、圖書信息管理等。通過這些功能,管理員可以對圖書館中所有圖書以及圖書借閱情況進行統一管理。
另外,為了保證整個系統的安全保密性,系統還為管理員提供了修改密碼的權利,這樣是的整個系統的安全保密性得到提高。
2.2 系統模塊設計
本系統主要實現對圖書信息及其借閱情況的管理,根據上述系統管理需求進行分析,本系統大體分為以下幾個模塊:登陸模塊、管理模塊、維護模塊和設置模塊。系統功能模塊圖如圖1所示。
2.3 系統數據庫設計
本系統采用微軟公司的.NET開發,開發語言選擇C#。C#是集合了JAVA、VB等多種高級編程語言的優點的完全面向對象的編程語言。C#語法優雅,代碼較健壯,結合Visual Studio集成開發環境,使得調試過程較為簡單。
.NET平臺包含了微軟最新的數據庫技術——LINQ(Language Integrated Query)。LINQ是一組技術的總稱,使用LINQ的查詢語法,可以讓開發者便捷的對數據源執行復雜的操作,和傳統的SQL語句相比,LINQ查詢語法在語義或性能上沒有區別,但比用SQL語句編寫的等效表達式更易讀。
從安全保密性角度考慮,遠程數據庫比本地數據庫更能夠保證數據的安全,且便于集中管理,存儲的數據也較多。本系統設計為三層構架,客戶端通過服務器的WebService服務訪問數據庫,不與數據庫直接通訊,服務器提供WebService服務作為數據交換代理中心,提供數據的存儲、查詢、維護等功能接口。采用三層構架的設計可以保證訪問數據庫過程的安全性,所有訪問數據庫的代碼都運行在服務器端,客戶端只是通過服務器端的代理程序訪問數據,使得客戶端無法對數據庫進行非法操作。
整個系統的數據庫結構如圖2所示。
2.4 系統流程設計
我們主要用數據流程圖來表述系統數據的處理模式。
3 結論
本系統利用信息化技術,將傳統圖書館手工管理方式利用軟件實現,將各種圖書管理操作集為一體,減輕了圖書館管理人員的工作量,有效的提高了工作效率,增強了管理工作的安全保密性,并利用軟件工程的思想,在分析需求的基礎上,設計了功能模塊,并利用微軟最新的LINQ技術設計系統數據庫。本系統為圖書館實現現代化的管理奠定了一定的基礎。
[參考文獻]
[1]楊娟.計算機圖書管理系統[J].煤炭技術,2010:244-246.
[2]彭曉慶.科技查新檔案管理系統的分析與設計[J].上海高校圖書情報工作研究,2008.
[3]淺談圖書管理系統應用[J].金色年,2010:200-201.
[4]韓萬江,姜立新.系統工程與軟件工程[J].計算機應用,2010,30(6):212-214.
[5]劉威.軟件工程與軟件開發方法[J].孝感學院學報,2008,6:123-125.
[6]張海藩.軟件工程導論[M].北京:清華人學出版社,2003.