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