陳亞非
(涿鹿縣交通運輸局,河北張家口,075600)
C++在C 語言的基礎(chǔ)上,繼承了C 語言運行效率高等優(yōu)勢,同時還拓展了類的概念,使之既成為一種面向?qū)ο蟮母呒壘幊陶Z言,又能兼容C 語言成為一種面向過程的高級編程語言。
QT 是基于C++的跨平臺圖形界面應(yīng)用程序開發(fā)框架,既支持GUI 程序,也支持控制臺程序。Qt Creator 是QT的跨平臺IDE,能夠讓Qt 開發(fā)人員快速完成應(yīng)用程序的環(huán)境配置和編譯調(diào)試。QT 可支持多種編譯器,同時還能通過Qt Quick 支持自身規(guī)范的QML 語言編寫應(yīng)用程序。Qt 自帶了很多實用的庫,方便開發(fā)人員提高效率。
MySQL 使用的是C/S 架構(gòu),因此實際由兩部分構(gòu)成:MySQL 服務(wù)程序(mysqlld),運行在服務(wù)端,負(fù)責(zé)接收并處理客戶端的請求并返回相對應(yīng)的數(shù)據(jù);MySQL 客戶端程序,主要向服務(wù)端建立連接,發(fā)起數(shù)據(jù)庫操作(增刪改查)請求,以及接收服務(wù)器返回的數(shù)據(jù)。
本系統(tǒng)的角色包括兩種類型,分別是系統(tǒng)管理員和用戶,對于不同的用戶角色,其特點還是有區(qū)別的,主要分析如下:
管理員一般是系統(tǒng)中的最頂層的角色,它是系統(tǒng)各個功能的維護(hù)人員,具有在系統(tǒng)中最高的權(quán)限,管理員在系統(tǒng)中主要的作用是為了保證平臺正常、穩(wěn)定地運行,同時還可以幫助其他角色處理信息,幫助平臺用戶更好地使用系統(tǒng)。本系統(tǒng)的管理員主要具有登錄、用戶管理、車輛管理、訂單管理、個人中心、修改密碼等功能模塊;
用戶是系統(tǒng)的使用者,用戶可以直觀地感受系統(tǒng)實用性,當(dāng)用戶遇到問題時,可以找系統(tǒng)的管理員尋求幫助。本系統(tǒng)的用戶主要具有登錄、車輛信息查詢、租賃車輛、歸還車輛、我租的車等功能。
3.1.1 系統(tǒng)架構(gòu)設(shè)計
本系統(tǒng)的整體架構(gòu)包括系統(tǒng)界面層(view)、業(yè)務(wù)應(yīng)用層(control)、數(shù)據(jù)模型層(model)和系統(tǒng)軟件層四部分內(nèi)容,如圖1所示。其中,系統(tǒng)界面層主要包括了本系統(tǒng)的一些功能模塊,用戶通過點擊這些功能模塊,系統(tǒng)將功能請求發(fā)送給業(yè)務(wù)應(yīng)用層;業(yè)務(wù)應(yīng)用層則是主要包括系統(tǒng)功能的邏輯實現(xiàn)和一些重要的接口實現(xiàn),系統(tǒng)主要通過調(diào)用這些接口,實現(xiàn)具體的功能;數(shù)據(jù)模型層則是包括對數(shù)據(jù)庫的連接、數(shù)據(jù)庫的新增、修改、刪除和查詢等一系列的數(shù)據(jù)請求,通過數(shù)據(jù)請求才能順利地訪問數(shù)據(jù)庫并進(jìn)行操作;系統(tǒng)軟件層則包括本文使用的數(shù)據(jù)庫、操作系統(tǒng)、驅(qū)動軟件等。
3.1.2 功能模塊設(shè)計
通過對系統(tǒng)的需求進(jìn)行詳細(xì)地分析,結(jié)合管理系統(tǒng)開發(fā)的基本特點,本系統(tǒng)主要包括管理員模塊和用戶模塊兩部分。其中,管理員模塊主要負(fù)責(zé)系統(tǒng)數(shù)據(jù)和權(quán)限的管理工作,基本的功能將包括登錄、用戶管理、車輛管理、訂單管理、個人中心、修改密碼等功能模塊。用戶模塊是系統(tǒng)的主要操作對象之一,用戶可以借助本系統(tǒng)展開登錄、車輛信息查詢、租賃車輛、歸還車輛、我租的車等操作,這些操作都是在用戶能夠順利地注冊并登錄到系統(tǒng)中之后才能完成的,從而進(jìn)一步保障系統(tǒng)數(shù)據(jù)的安全和準(zhǔn)確性。如圖2所示是租車管理系統(tǒng)的功能模塊圖。
圖2 系統(tǒng)功能模塊圖
3.2.1 登錄設(shè)計
由于系統(tǒng)包括管理員和用戶兩種類型的角色,因此各類角色所具有的權(quán)限是不一樣的,他們在登錄系統(tǒng)之后,所操作的系統(tǒng)頁面的功能也是不相同的。但是兩類用戶在進(jìn)入系統(tǒng)之前都需要進(jìn)行注冊和登錄,當(dāng)用戶輸入正確的用戶名和密碼,并被本系統(tǒng)驗證通過之后,才能合法的進(jìn)入到系統(tǒng)頁面之中,否則系統(tǒng)將會返回“用戶密碼錯誤”的提示,進(jìn)行重新登錄。如圖3所示是登錄時序圖。
圖3 登錄時序圖
3.2.2 用戶管理
用戶管理模塊主要負(fù)責(zé)用戶信息的信息進(jìn)行管理,任何用戶登錄到系統(tǒng)之后,都有權(quán)力對自己的個人信息進(jìn)行管理,包括修改用戶名、密碼、地址以及聯(lián)系方式。管理員還可以對普通用戶進(jìn)行新增、修改、刪除和查詢操作,當(dāng)通過系統(tǒng)界面操作完之后,點擊“保存”按鈕,系統(tǒng)就會將數(shù)據(jù)存儲到數(shù)據(jù)庫中,并返回存儲結(jié)果。如圖4所示是用戶管理序列圖。
圖4 用戶管理序列圖
3.2.3 車輛管理
車輛管理模塊又可以細(xì)化分為車輛信息的新增、修改、查詢和刪除等四個小的功能模塊,本模塊實現(xiàn)了對自身資料信息的完善和信息化管理功能,可以使用戶的信息清晰可見,方便管理者對其進(jìn)行篩選,避免了管理麻煩的現(xiàn)象。
用戶只需要通過賬號和密碼進(jìn)行登錄,然后點擊車輛管理按鈕,即可通過系統(tǒng)進(jìn)行數(shù)據(jù)的操作和處理。如圖5 是車輛管理模塊時序圖。
圖5 車輛管理模塊時序圖
3.2.4 訂單管理
訂單管理模塊主要包括添加訂單、編輯訂單和刪除題目四部分內(nèi)容,在刪除功能中,系統(tǒng)在用戶點擊“刪除”按鈕時會提示“是否刪除”,避免用戶誤刪;在編輯和新增功能中,系統(tǒng)也設(shè)計了比較人性化的界面,方便用戶操作。如圖6 是訂單管理序列圖。
圖6 訂單管理序列圖
3.3.1 概念結(jié)構(gòu)設(shè)計
在整個數(shù)據(jù)庫設(shè)計過程中,最重要的部分則是概念結(jié)構(gòu)設(shè)計,通過概念結(jié)構(gòu),可以非常清晰地將實體之間的關(guān)系進(jìn)行關(guān)聯(lián),進(jìn)而以行化的模式表示實體之間的關(guān)系,本系統(tǒng)不同實體之間的E-R 圖如下所示。
(1)管理員
管理員的E-R 圖具體見圖7,其包括編號、密碼、賬號等屬性。
圖7 管理員
(2)用戶
用戶的E-R圖具體見圖8,其包括編號、地址、性別等屬性。
圖8 用戶
(3)車輛
車輛的E-R 圖具體見圖9,其包括編號、租金、品牌等屬性。
圖9 車輛
(4)訂單
訂單的E-R 圖具體見圖10,其包括編號、狀態(tài)、時間等屬性。
圖10 訂單
(5)狀態(tài)狀態(tài)的E-R 圖具體見圖11,其包括編號、名稱等屬性。結(jié)合實體E-R 圖,可以確定本系統(tǒng)實體和實體之間的關(guān)系,進(jìn)而得到系統(tǒng)的總體E-R 圖,如圖12所示。
圖11 狀態(tài)
圖12 E-R圖
3.3.2 物理結(jié)構(gòu)設(shè)計
如表1所示是administrator 管理員信息表,其中Id是系統(tǒng)自動生成的,是數(shù)據(jù)庫的主鍵,不能為空,另外還包括管理員名稱、密碼、角色等信息。
表1 administrator管理員信息表
如表2所示是user 用戶信息表,其中Id 是系統(tǒng)自動生成的,是數(shù)據(jù)庫的主鍵,不能為空,另外還包括用戶名、密碼、郵箱、聯(lián)系方式等信息。
表2 user用戶信息表
如表3所示是car 車輛信息表,其中Id 是系統(tǒng)自動生成的,是數(shù)據(jù)庫的主鍵,不能為空,另外還包括編號、名稱、價格、類型等信息。
表3 car車輛信息表
本文針對系統(tǒng)的測試覆蓋范圍包括:功能測試、性能測試以及安全性測試,每一輪測試都需要嚴(yán)格按照測試方案進(jìn)行,在進(jìn)行每一項測試的時候,都需要嚴(yán)格按照測試規(guī)范進(jìn)行。以下分別對功能測試、性能測試和安全性測試進(jìn)行說明。
功能測試主要通過對系統(tǒng)軟件的各部分功能進(jìn)行驗證,測試人員一般根據(jù)測試用例檢查系統(tǒng)軟件功能是否滿足要求。本文的功能測試主要包括登錄模塊、用戶管理模塊和權(quán)限管理模塊。
性能測試在軟件測試中具有重要的作用,是保證系統(tǒng)軟件的基礎(chǔ),性能測試包括的測試內(nèi)容非常的豐富,例如系統(tǒng)的響應(yīng)速度、用戶并發(fā)訪問等,本文主要模擬用戶并發(fā)訪問,測試多用戶并發(fā)訪問同一個應(yīng)用、同一個模塊或者數(shù)據(jù)記錄時是否存在死鎖或者其他性能問題,測試結(jié)果如表6所示。
表4 功能測試權(quán)重表
表5 功能測試表
表6 性能測試結(jié)果表
為了進(jìn)一步提高系統(tǒng)產(chǎn)品的安全質(zhì)量,保證系統(tǒng)的安全使用,系統(tǒng)必須進(jìn)行安全性測試,驗證系統(tǒng)是否符合產(chǎn)品質(zhì)量標(biāo)準(zhǔn),如表7所示安全性測試結(jié)果表。
表7 安全性測試結(jié)果表
近幾年,互聯(lián)網(wǎng)技術(shù)在全球范圍內(nèi)得到了快速的發(fā)展,對各行業(yè)產(chǎn)生了巨大的影響,越來越多研究學(xué)者開始重視起來,租車管理也是在這種情況下發(fā)展起來的。通過調(diào)查發(fā)現(xiàn),傳統(tǒng)的管理方式較為復(fù)雜,隨著人數(shù)的增多,管理成本也越來越大,租車管理系統(tǒng)作為互聯(lián)網(wǎng)技術(shù)的子系統(tǒng)應(yīng)運而生,系統(tǒng)利用先進(jìn)的開發(fā)技術(shù)和工具,是實現(xiàn)了信息的科學(xué)化管理,提高了管理水準(zhǔn)。