陳亞非
(涿鹿縣交通運(yùn)輸局,河北張家口,075600)
C++在C 語言的基礎(chǔ)上,繼承了C 語言運(yùn)行效率高等優(yōu)勢(shì),同時(shí)還拓展了類的概念,使之既成為一種面向?qū)ο蟮母呒?jí)編程語言,又能兼容C 語言成為一種面向過程的高級(jí)編程語言。
QT 是基于C++的跨平臺(tái)圖形界面應(yīng)用程序開發(fā)框架,既支持GUI 程序,也支持控制臺(tái)程序。Qt Creator 是QT的跨平臺(tái)IDE,能夠讓Qt 開發(fā)人員快速完成應(yīng)用程序的環(huán)境配置和編譯調(diào)試。QT 可支持多種編譯器,同時(shí)還能通過Qt Quick 支持自身規(guī)范的QML 語言編寫應(yīng)用程序。Qt 自帶了很多實(shí)用的庫(kù),方便開發(fā)人員提高效率。
MySQL 使用的是C/S 架構(gòu),因此實(shí)際由兩部分構(gòu)成:MySQL 服務(wù)程序(mysqlld),運(yùn)行在服務(wù)端,負(fù)責(zé)接收并處理客戶端的請(qǐng)求并返回相對(duì)應(yīng)的數(shù)據(jù);MySQL 客戶端程序,主要向服務(wù)端建立連接,發(fā)起數(shù)據(jù)庫(kù)操作(增刪改查)請(qǐng)求,以及接收服務(wù)器返回的數(shù)據(jù)。
本系統(tǒng)的角色包括兩種類型,分別是系統(tǒng)管理員和用戶,對(duì)于不同的用戶角色,其特點(diǎn)還是有區(qū)別的,主要分析如下:
管理員一般是系統(tǒng)中的最頂層的角色,它是系統(tǒng)各個(gè)功能的維護(hù)人員,具有在系統(tǒng)中最高的權(quán)限,管理員在系統(tǒng)中主要的作用是為了保證平臺(tái)正常、穩(wěn)定地運(yùn)行,同時(shí)還可以幫助其他角色處理信息,幫助平臺(tái)用戶更好地使用系統(tǒng)。本系統(tǒng)的管理員主要具有登錄、用戶管理、車輛管理、訂單管理、個(gè)人中心、修改密碼等功能模塊;
用戶是系統(tǒng)的使用者,用戶可以直觀地感受系統(tǒng)實(shí)用性,當(dāng)用戶遇到問題時(shí),可以找系統(tǒng)的管理員尋求幫助。本系統(tǒng)的用戶主要具有登錄、車輛信息查詢、租賃車輛、歸還車輛、我租的車等功能。
3.1.1 系統(tǒng)架構(gòu)設(shè)計(jì)
本系統(tǒng)的整體架構(gòu)包括系統(tǒng)界面層(view)、業(yè)務(wù)應(yīng)用層(control)、數(shù)據(jù)模型層(model)和系統(tǒng)軟件層四部分內(nèi)容,如圖1所示。其中,系統(tǒng)界面層主要包括了本系統(tǒng)的一些功能模塊,用戶通過點(diǎn)擊這些功能模塊,系統(tǒng)將功能請(qǐng)求發(fā)送給業(yè)務(wù)應(yīng)用層;業(yè)務(wù)應(yīng)用層則是主要包括系統(tǒng)功能的邏輯實(shí)現(xiàn)和一些重要的接口實(shí)現(xiàn),系統(tǒng)主要通過調(diào)用這些接口,實(shí)現(xiàn)具體的功能;數(shù)據(jù)模型層則是包括對(duì)數(shù)據(jù)庫(kù)的連接、數(shù)據(jù)庫(kù)的新增、修改、刪除和查詢等一系列的數(shù)據(jù)請(qǐng)求,通過數(shù)據(jù)請(qǐng)求才能順利地訪問數(shù)據(jù)庫(kù)并進(jìn)行操作;系統(tǒng)軟件層則包括本文使用的數(shù)據(jù)庫(kù)、操作系統(tǒng)、驅(qū)動(dòng)軟件等。
3.1.2 功能模塊設(shè)計(jì)
通過對(duì)系統(tǒng)的需求進(jìn)行詳細(xì)地分析,結(jié)合管理系統(tǒng)開發(fā)的基本特點(diǎn),本系統(tǒng)主要包括管理員模塊和用戶模塊兩部分。其中,管理員模塊主要負(fù)責(zé)系統(tǒng)數(shù)據(jù)和權(quán)限的管理工作,基本的功能將包括登錄、用戶管理、車輛管理、訂單管理、個(gè)人中心、修改密碼等功能模塊。用戶模塊是系統(tǒng)的主要操作對(duì)象之一,用戶可以借助本系統(tǒng)展開登錄、車輛信息查詢、租賃車輛、歸還車輛、我租的車等操作,這些操作都是在用戶能夠順利地注冊(cè)并登錄到系統(tǒng)中之后才能完成的,從而進(jìn)一步保障系統(tǒng)數(shù)據(jù)的安全和準(zhǔn)確性。如圖2所示是租車管理系統(tǒng)的功能模塊圖。

圖2 系統(tǒng)功能模塊圖
3.2.1 登錄設(shè)計(jì)
由于系統(tǒng)包括管理員和用戶兩種類型的角色,因此各類角色所具有的權(quán)限是不一樣的,他們?cè)诘卿浵到y(tǒng)之后,所操作的系統(tǒng)頁面的功能也是不相同的。但是兩類用戶在進(jìn)入系統(tǒng)之前都需要進(jìn)行注冊(cè)和登錄,當(dāng)用戶輸入正確的用戶名和密碼,并被本系統(tǒng)驗(yàn)證通過之后,才能合法的進(jìn)入到系統(tǒng)頁面之中,否則系統(tǒng)將會(huì)返回“用戶密碼錯(cuò)誤”的提示,進(jìn)行重新登錄。如圖3所示是登錄時(shí)序圖。

圖3 登錄時(shí)序圖
3.2.2 用戶管理
用戶管理模塊主要負(fù)責(zé)用戶信息的信息進(jìn)行管理,任何用戶登錄到系統(tǒng)之后,都有權(quán)力對(duì)自己的個(gè)人信息進(jìn)行管理,包括修改用戶名、密碼、地址以及聯(lián)系方式。管理員還可以對(duì)普通用戶進(jìn)行新增、修改、刪除和查詢操作,當(dāng)通過系統(tǒng)界面操作完之后,點(diǎn)擊“保存”按鈕,系統(tǒng)就會(huì)將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,并返回存儲(chǔ)結(jié)果。如圖4所示是用戶管理序列圖。

圖4 用戶管理序列圖
3.2.3 車輛管理
車輛管理模塊又可以細(xì)化分為車輛信息的新增、修改、查詢和刪除等四個(gè)小的功能模塊,本模塊實(shí)現(xiàn)了對(duì)自身資料信息的完善和信息化管理功能,可以使用戶的信息清晰可見,方便管理者對(duì)其進(jìn)行篩選,避免了管理麻煩的現(xiàn)象。
用戶只需要通過賬號(hào)和密碼進(jìn)行登錄,然后點(diǎn)擊車輛管理按鈕,即可通過系統(tǒng)進(jìn)行數(shù)據(jù)的操作和處理。如圖5 是車輛管理模塊時(shí)序圖。

圖5 車輛管理模塊時(shí)序圖
3.2.4 訂單管理
訂單管理模塊主要包括添加訂單、編輯訂單和刪除題目四部分內(nèi)容,在刪除功能中,系統(tǒng)在用戶點(diǎn)擊“刪除”按鈕時(shí)會(huì)提示“是否刪除”,避免用戶誤刪;在編輯和新增功能中,系統(tǒng)也設(shè)計(jì)了比較人性化的界面,方便用戶操作。如圖6 是訂單管理序列圖。

圖6 訂單管理序列圖
3.3.1 概念結(jié)構(gòu)設(shè)計(jì)
在整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)過程中,最重要的部分則是概念結(jié)構(gòu)設(shè)計(jì),通過概念結(jié)構(gòu),可以非常清晰地將實(shí)體之間的關(guān)系進(jìn)行關(guān)聯(lián),進(jìn)而以行化的模式表示實(shí)體之間的關(guān)系,本系統(tǒng)不同實(shí)體之間的E-R 圖如下所示。
(1)管理員
管理員的E-R 圖具體見圖7,其包括編號(hào)、密碼、賬號(hào)等屬性。

圖7 管理員
(2)用戶
用戶的E-R圖具體見圖8,其包括編號(hào)、地址、性別等屬性。

圖8 用戶
(3)車輛
車輛的E-R 圖具體見圖9,其包括編號(hào)、租金、品牌等屬性。

圖9 車輛
(4)訂單
訂單的E-R 圖具體見圖10,其包括編號(hào)、狀態(tài)、時(shí)間等屬性。

圖10 訂單
(5)狀態(tài)狀態(tài)的E-R 圖具體見圖11,其包括編號(hào)、名稱等屬性。結(jié)合實(shí)體E-R 圖,可以確定本系統(tǒng)實(shí)體和實(shí)體之間的關(guān)系,進(jìn)而得到系統(tǒng)的總體E-R 圖,如圖12所示。

圖11 狀態(tài)

圖12 E-R圖
3.3.2 物理結(jié)構(gòu)設(shè)計(jì)
如表1所示是administrator 管理員信息表,其中Id是系統(tǒng)自動(dòng)生成的,是數(shù)據(jù)庫(kù)的主鍵,不能為空,另外還包括管理員名稱、密碼、角色等信息。

表1 administrator管理員信息表
如表2所示是user 用戶信息表,其中Id 是系統(tǒng)自動(dòng)生成的,是數(shù)據(jù)庫(kù)的主鍵,不能為空,另外還包括用戶名、密碼、郵箱、聯(lián)系方式等信息。

表2 user用戶信息表
如表3所示是car 車輛信息表,其中Id 是系統(tǒng)自動(dòng)生成的,是數(shù)據(jù)庫(kù)的主鍵,不能為空,另外還包括編號(hào)、名稱、價(jià)格、類型等信息。

表3 car車輛信息表
本文針對(duì)系統(tǒng)的測(cè)試覆蓋范圍包括:功能測(cè)試、性能測(cè)試以及安全性測(cè)試,每一輪測(cè)試都需要嚴(yán)格按照測(cè)試方案進(jìn)行,在進(jìn)行每一項(xiàng)測(cè)試的時(shí)候,都需要嚴(yán)格按照測(cè)試規(guī)范進(jìn)行。以下分別對(duì)功能測(cè)試、性能測(cè)試和安全性測(cè)試進(jìn)行說明。
功能測(cè)試主要通過對(duì)系統(tǒng)軟件的各部分功能進(jìn)行驗(yàn)證,測(cè)試人員一般根據(jù)測(cè)試用例檢查系統(tǒng)軟件功能是否滿足要求。本文的功能測(cè)試主要包括登錄模塊、用戶管理模塊和權(quán)限管理模塊。
性能測(cè)試在軟件測(cè)試中具有重要的作用,是保證系統(tǒng)軟件的基礎(chǔ),性能測(cè)試包括的測(cè)試內(nèi)容非常的豐富,例如系統(tǒng)的響應(yīng)速度、用戶并發(fā)訪問等,本文主要模擬用戶并發(fā)訪問,測(cè)試多用戶并發(fā)訪問同一個(gè)應(yīng)用、同一個(gè)模塊或者數(shù)據(jù)記錄時(shí)是否存在死鎖或者其他性能問題,測(cè)試結(jié)果如表6所示。

表4 功能測(cè)試權(quán)重表

表5 功能測(cè)試表

表6 性能測(cè)試結(jié)果表
為了進(jìn)一步提高系統(tǒng)產(chǎn)品的安全質(zhì)量,保證系統(tǒng)的安全使用,系統(tǒng)必須進(jìn)行安全性測(cè)試,驗(yàn)證系統(tǒng)是否符合產(chǎn)品質(zhì)量標(biāo)準(zhǔn),如表7所示安全性測(cè)試結(jié)果表。

表7 安全性測(cè)試結(jié)果表
近幾年,互聯(lián)網(wǎng)技術(shù)在全球范圍內(nèi)得到了快速的發(fā)展,對(duì)各行業(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)運(yùn)而生,系統(tǒng)利用先進(jìn)的開發(fā)技術(shù)和工具,是實(shí)現(xiàn)了信息的科學(xué)化管理,提高了管理水準(zhǔn)。