陳松祥 甘開孟 陳小奎
摘要:為了滿足客戶的需求,設(shè)計(jì)了一套工程材料信息查詢系統(tǒng),可操作者分為商家和用戶兩個(gè)部分。為了系統(tǒng)的易于推廣使用Android平臺(tái)下的java語(yǔ)言進(jìn)行開發(fā),并使用數(shù)據(jù)庫(kù)技術(shù)用以存儲(chǔ)數(shù)據(jù),用以確??梢源娣糯罅康臄?shù)據(jù),并使用了客戶/服務(wù)器架構(gòu)用以實(shí)現(xiàn)前后臺(tái)的連接,與數(shù)據(jù)庫(kù)的聯(lián)系。系統(tǒng)的交易過(guò)程通過(guò)第三方支付平臺(tái),用以確保安全性。并對(duì)軟件進(jìn)行了測(cè)試,確保了可行性。
關(guān)鍵詞:Android系統(tǒng);工程材料信息查詢系統(tǒng);第三方支付
中圖分類號(hào):TP919 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)30-0062-03
隨著互聯(lián)網(wǎng)技術(shù)與信息軟件技術(shù)的發(fā)展,移動(dòng)硬件設(shè)備的成熟,人們的生活越發(fā)便捷,越發(fā)離不開互聯(lián)網(wǎng)與移動(dòng)設(shè)備。移動(dòng)設(shè)備上層出不窮的App,小程序給人們帶來(lái)了各種各樣的快捷享受,其中的核心便是信息。
工程建造是社會(huì)也是一個(gè)城市的基礎(chǔ),不同的工程所需要的材料的數(shù)量和質(zhì)量也大不相同,在常規(guī)的方法中人們需要上門詢問(wèn)和觀察過(guò)多個(gè)商家的商品后,相互比對(duì),結(jié)合自身的需求和經(jīng)濟(jì)情況做出分析,才能得出較為滿意的方案。該App與大量的可信賴的商家簽訂質(zhì)量和信譽(yù)保障協(xié)議,收集了大量的優(yōu)質(zhì)建筑材料的信息,用戶可快速準(zhǔn)確的查詢到所需建造材料的各種信息,并在室內(nèi)就可以做出比對(duì)和選擇,從而得出成本內(nèi)最讓自己滿意也是質(zhì)量最為可靠的方案,除此之外還可以聯(lián)系專業(yè)的公司和廠家進(jìn)行咨詢或預(yù)約上門服務(wù),從而節(jié)省大量的時(shí)間和精力,讓寶貴的人力資源得以更高效的利用。
1 相關(guān)技術(shù)信息
1.1 Android系統(tǒng)
Android是一種以Linux與Java為基礎(chǔ)的開放源代碼操作系統(tǒng),主要用于便攜設(shè)備,對(duì)比于其他平臺(tái)Android平臺(tái)有幾大優(yōu)勢(shì)。
首先是它的開放性,任何移動(dòng)終端廠商加入聯(lián)盟中來(lái),有利于人員的積累,同時(shí)會(huì)產(chǎn)生豐富的軟件源。
第二是掙脫了運(yùn)營(yíng)商的束縛,從各種功能到網(wǎng)絡(luò)的接入,過(guò)去手機(jī)會(huì)受到運(yùn)營(yíng)商的各種制約,Android可以讓用戶對(duì)軟件的下載更加輕松,與網(wǎng)絡(luò)的連接也更加的快捷。
第三是豐富的硬件選擇,由于Android的開放性,許多廠商會(huì)推出各種各樣的產(chǎn)品,功能上的差異與特色卻不會(huì)影響數(shù)據(jù)同步和軟件兼容。
第四是Google應(yīng)用的無(wú)縫結(jié)合,Google從搜索巨頭到如今深入互聯(lián)網(wǎng)的各個(gè)方面,地圖,郵件等,Android都將很好地適應(yīng)使用這些服務(wù)。
1.2 MySQL數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)的種類有很多,MySQl數(shù)據(jù)庫(kù)是其中一種,它有體積較小、速度較快、成本相對(duì)較低、開放源代碼的特點(diǎn),許多中小型網(wǎng)站都選擇它作為網(wǎng)站的數(shù)據(jù)庫(kù)。
它是一個(gè)支持多用戶,多線程的數(shù)據(jù)庫(kù)服務(wù)器,同時(shí)sql語(yǔ)言是世界上應(yīng)用最廣泛,最為標(biāo)準(zhǔn)化的數(shù)據(jù)庫(kù)語(yǔ)言,使得對(duì)數(shù)據(jù)庫(kù)的添加、更新、刪除等操作更加便捷。
1.3 第三方支付
所謂第三方支付,就是一些具備足夠?qū)嵙εc信譽(yù)的第三方獨(dú)立機(jī)構(gòu)在與國(guó)家和各大銀行達(dá)成協(xié)議后所建立的交易平臺(tái)。在通過(guò)第三方支付進(jìn)行的交易中,由買方選購(gòu)商品后,使用第三方的賬戶進(jìn)行付款,第三方通知賣家貨款已達(dá),進(jìn)行發(fā)貨,等到買家確認(rèn)過(guò)貨物后,確認(rèn)付款給賣家,第三方再將支付款轉(zhuǎn)至賣家。
2 系統(tǒng)分析
2.1 系統(tǒng)總體分析
通過(guò)掃描二維碼進(jìn)入到App首頁(yè),用戶可通過(guò)輸入手機(jī)號(hào)碼獲取驗(yàn)證碼的方式進(jìn)行用戶注冊(cè),注冊(cè)完成后回到首頁(yè)選擇自己想要進(jìn)行的操作。首頁(yè)功能有聯(lián)系建材裝修公司進(jìn)行咨詢,選擇的聯(lián)系方式有電話,郵箱和QQ,若用戶想自己購(gòu)買建材進(jìn)行裝修,可點(diǎn)擊建材市場(chǎng),可查詢到關(guān)于各種建材的價(jià)格等信息,選擇想購(gòu)買的材料后添加到購(gòu)物車,完善購(gòu)買信息后就可以進(jìn)行交易,系統(tǒng)模塊圖如下圖所示。
2.2 系統(tǒng)模塊分析
1)注冊(cè):用戶注冊(cè)通過(guò)輸入手機(jī)號(hào)碼,獲取驗(yàn)證碼,然后完善個(gè)人密碼,用戶名稱等信息等完成注冊(cè),注冊(cè)信息會(huì)錄入數(shù)據(jù)庫(kù),完成用戶注冊(cè)。
2)登錄:用戶登錄時(shí)需要輸入用戶名和密碼,點(diǎn)擊登錄后,后臺(tái)程序會(huì)將用戶名和密碼進(jìn)行信息校驗(yàn),然后判斷是否正確然后是否授權(quán)登錄。
3)商家對(duì)商品信息進(jìn)行操作:商家可以對(duì)自己在商城上發(fā)布的商品信息進(jìn)行修改或添加新的商品信息,操作完畢后信息會(huì)存入數(shù)據(jù)庫(kù)。
4)用戶對(duì)商品的操作:用戶可以自主在商城中查詢商品信息,也可以聯(lián)系商家進(jìn)行咨詢,提供多種聯(lián)系方式。
5)咨詢商家:用戶可以通過(guò)電話、郵箱、QQ等方式聯(lián)系商家,咨詢商品的價(jià)格,通過(guò)自己的描述商家給出合適方案,還可以聯(lián)系商家上門裝修。
6)購(gòu)買商品:當(dāng)用戶選定好合適的商品后,可將商品加入購(gòu)物車中,完善地址信息以及聯(lián)系方式等信息后,通過(guò)第三方支付平臺(tái)進(jìn)行支付。
2.3 系統(tǒng)需求分析
系統(tǒng)除了滿足用戶的需求外,還需要滿足一些除了功能性之外的需求,例如安全需求、穩(wěn)定需求、頁(yè)面交互需求。
1)安全性需求:系統(tǒng)通過(guò)手機(jī)號(hào)碼實(shí)名注冊(cè),還保存了用戶的個(gè)人信息,用戶的隱私安全和支付安全都需要安全性的保障
2)穩(wěn)定性需求:用戶需要在各個(gè)界面進(jìn)行跳轉(zhuǎn),系統(tǒng)的前后臺(tái)的數(shù)據(jù)需要交互,用戶進(jìn)行支付,這些都要求系統(tǒng)需要良好的穩(wěn)定性來(lái)支持。
3)頁(yè)面交互性需求:為了提高用戶的體驗(yàn),系統(tǒng)需要提供良好的視覺頁(yè)面,商品信息和用戶信息會(huì)根據(jù)商家和用戶的修改進(jìn)行實(shí)時(shí)更新。
3 數(shù)據(jù)庫(kù)模塊分析
該表給出了存儲(chǔ)在數(shù)據(jù)庫(kù)中的各個(gè)實(shí)體以及各個(gè)實(shí)體存儲(chǔ)在數(shù)據(jù)庫(kù)中的屬性,屬性值可隨軟件上的操作進(jìn)行更新。
該圖表現(xiàn)出了各個(gè)實(shí)體與它的屬性,給出了各個(gè)實(shí)體間的關(guān)系以及不同實(shí)體間所能進(jìn)行的操作,用以更新屬性值。
4 系統(tǒng)模塊設(shè)計(jì)
4.1 系統(tǒng)功能模塊設(shè)計(jì)
系統(tǒng)采用客戶端到服務(wù)器的架構(gòu)模式,通過(guò)客戶端發(fā)送操作命令,服務(wù)器對(duì)數(shù)據(jù)進(jìn)行管理,并對(duì)客戶端發(fā)送的請(qǐng)求服務(wù)命令做出相應(yīng)的反應(yīng)操作。數(shù)據(jù)庫(kù)是實(shí)現(xiàn)商品信息數(shù)據(jù)管理的重要部分。數(shù)據(jù)庫(kù)設(shè)計(jì)的合理性是重要的,合理的數(shù)據(jù)庫(kù)可以提高系統(tǒng)運(yùn)行速度,增強(qiáng)用戶的體驗(yàn)感。使用大數(shù)據(jù)相關(guān)知識(shí)對(duì)獲取的數(shù)據(jù)分析,在數(shù)據(jù)庫(kù)中建立相應(yīng)的數(shù)據(jù)表,根據(jù)各商品的銷售情況,合理的進(jìn)行商品需求調(diào)整,以適應(yīng)市場(chǎng)的發(fā)展方向。
4.2 系統(tǒng)界面模塊設(shè)計(jì)
1)注冊(cè)界面:用戶掃描二維碼下載App后,系統(tǒng)會(huì)進(jìn)入注冊(cè)界面,用戶輸入手機(jī)號(hào)碼,獲取驗(yàn)證碼后輸入,完善個(gè)人信息如密碼,用戶名,聯(lián)系方式等即可完成注冊(cè),用戶的個(gè)人信息會(huì)保留到數(shù)據(jù)庫(kù)中,界面如下。
2)系統(tǒng)首頁(yè)界面:用戶信息校驗(yàn)正確登錄成功后進(jìn)入首頁(yè),首頁(yè)功能有聯(lián)系建材公司,進(jìn)入建材市場(chǎng),裝修選材等功能,點(diǎn)擊相應(yīng)區(qū)域進(jìn)入相應(yīng)界面,主界面如下。
3)商品信息界面:用戶若想自行購(gòu)買商品,點(diǎn)擊建材市場(chǎng)區(qū)域進(jìn)入到商品信息界面,其中有石材,鋼材,木材,水泥等商品信息。點(diǎn)擊相應(yīng)的商品后會(huì)進(jìn)入相應(yīng)商品的具體信息,品牌,價(jià)格等。
4)咨詢商家界面:用戶若想聯(lián)系商家咨詢商品信息或詢問(wèn)商家給出材料方案,可通過(guò)點(diǎn)擊預(yù)約區(qū)域進(jìn)入商家聯(lián)系界面,聯(lián)系方式有電話、QQ、郵箱以及在線預(yù)約。
5)添加進(jìn)入購(gòu)物車及購(gòu)買界面:用戶查看商品信息后若想購(gòu)買商品,可將商品添加進(jìn)購(gòu)物車中,然后完善購(gòu)買信息例如地址,電話號(hào)碼等,即可通過(guò)第三方平臺(tái)完成支付。
5 系統(tǒng)部分代碼
public void insert(String name, String id) {
SQLiteDatabase db = super.getWritableDatabase();
// 取得數(shù)據(jù)庫(kù)操作對(duì)象
ContentValues cv = new ContentValues() ;
// 定義ContentValues對(duì)象
cv.put("name", name) ; // 設(shè)置name字段內(nèi)容
cv.put("id",id) ;// 設(shè)置id字段內(nèi)容
db.insert(TABLENAME, null, cv) ; // 增加操作
db.close() ; // 關(guān)閉數(shù)據(jù)庫(kù)操作
}
public void delete(int id) {
SQLiteDatabase db = super.getWritableDatabase();
String whereClause = "id=?" ; // 刪除條件
String whereArgs[] = new String[] {String.valueOf(id)} ; // 刪除id
db.delete(TABLENAME, whereClause, whereArgs) ; // 刪除操作
db.close() ; // 關(guān)閉數(shù)據(jù)庫(kù)操作
}
}
public void update(int id, String name, String phone) {
SQLiteDatabase db = super.getWritableDatabase(); // 取得數(shù)據(jù)庫(kù)操作對(duì)象
String whereClause = "id=?" ;
// 更新條件
String whereArgs[] = new String[] {String.valueOf(id)} ; // 更新id
ContentValues cv = new ContentValues() ;
// 定義ContentValues對(duì)象
cv.put("name", name) ;
// 設(shè)置name字段內(nèi)容
cv.put("id", id) ;
// 設(shè)置id字段內(nèi)容
db.update(TABLENAME, cv, whereClause, whereArgs) ; // 更新操作
db.close() ; // 關(guān)閉數(shù)據(jù)庫(kù)操作
}
6 系統(tǒng)測(cè)試與分析
6.1 測(cè)試的意義
軟件開發(fā)出來(lái)后,經(jīng)常并不是我們預(yù)想的結(jié)果。要想得到我們的最終產(chǎn)品,我們就要了解開發(fā)出來(lái)的軟件,了解它的功能、缺點(diǎn)和不足。因此我們就需要借助測(cè)試來(lái)完善開發(fā)的軟件,從而得到我們預(yù)想中的結(jié)果。
6.2 測(cè)試的目的
1)用戶希望得知軟件的可靠性和正確性,軟件可能出現(xiàn)的錯(cuò)誤以及發(fā)生錯(cuò)誤的嚴(yán)重程度和幾率,從而考慮是否使用該軟件。
2)軟件開發(fā)人員也希望通過(guò)測(cè)試能得知軟件的缺陷與漏洞,從而對(duì)此做出修改和完善,更好地滿足用戶的需求,提高軟件的可靠性,確立人們對(duì)于軟件產(chǎn)品的質(zhì)量信心。
6.3 測(cè)試方法
1)白盒測(cè)試。從內(nèi)部結(jié)構(gòu)考慮,按內(nèi)部結(jié)構(gòu)情況設(shè)計(jì)測(cè)試。已知產(chǎn)品的內(nèi)部結(jié)構(gòu)測(cè)試內(nèi)部動(dòng)作是否按照規(guī)格說(shuō)明正常進(jìn)行。
2)黑盒測(cè)試。不必考慮內(nèi)部結(jié)構(gòu),僅在界面進(jìn)行。通過(guò)了解產(chǎn)品的功能,測(cè)試功能是否能正常使用。
6.4 測(cè)試分析
功能測(cè)試主要是對(duì)系統(tǒng)的注冊(cè)、登錄、查詢商品信息以及完善購(gòu)物信息等模塊進(jìn)行測(cè)試。測(cè)試包括正常和非正常兩種方式。
性能測(cè)試是對(duì)軟件質(zhì)量的優(yōu)劣評(píng)價(jià)的一種測(cè)試。該測(cè)試主要通過(guò)虛擬機(jī)測(cè)試程序的響應(yīng)時(shí)間。從而得到評(píng)價(jià)依據(jù),以便考慮是否有必要升級(jí)產(chǎn)品,挺高用戶的體驗(yàn)感和產(chǎn)品的好評(píng)率。
7 結(jié)束語(yǔ)
本篇文章介紹了在Android平臺(tái)下工程材料信息查詢系統(tǒng),實(shí)現(xiàn)了對(duì)工程材料靈活快速查詢,該系統(tǒng)可以有效解決建造材料的方案得出問(wèn)題。未來(lái)可以與更多的商家合作,收集更多的商品信息,并實(shí)現(xiàn)與互聯(lián)網(wǎng)的實(shí)時(shí)更新交互。不過(guò)大量的數(shù)據(jù)需要穩(wěn)定的服務(wù)器來(lái)支持處理,隨著用戶數(shù)量的增加也需要對(duì)系統(tǒng)進(jìn)行優(yōu)化用以提高用戶的體驗(yàn)。
參考文獻(xiàn):
[1] 蓋索林.Android開發(fā)入門指南[M]. 2版.北京:人民郵電出版社,2012.
[2] 錢雪忠.數(shù)據(jù)庫(kù)原理及應(yīng)用 [M]. 2版.北京:北京郵電大學(xué)出版社,2007.
[3] 楊云君.Android的設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2013.
[4] 盧玲,劉勇,陳小奎.淺析大數(shù)據(jù)背景下軟件測(cè)試方法的挑戰(zhàn)及其展望[J].電腦知識(shí)與技術(shù),2017(9):40-42.
[5] 陳巖.計(jì)算機(jī)軟件測(cè)試方法的分析[J].電子世界,2017(7):47.
[6] 靳巖,姚尚朗. Android 入門開發(fā)與實(shí)踐[M]. 北京:人民郵件出版社,2012.
[7] 傅志紅,陳興璐. 深入淺出Google Android [M]. 北京:人民郵電出版社,2012.
【通聯(lián)編輯:代影】