張海云
(陜西工業(yè)職業(yè)技術學院 陜西 西安 712000)
基于Android的營銷人員管理系統(tǒng)的設計與實現(xiàn)
張海云
(陜西工業(yè)職業(yè)技術學院 陜西 西安 712000)
本文基于我國中小企業(yè)中營銷人員的考勤和監(jiān)督工作用傳統(tǒng)的方式很難完成這一問題,想要利用Android平臺搭建一款適用于營銷人員的管理系統(tǒng)。通過對Android平臺的基礎性能和系統(tǒng)框架的一些了解,分析了欲搭建系統(tǒng)的可行性與實際需求,對應用程序進行功能性、邏輯性以及網絡的模塊架構,并同時完成了系統(tǒng)的開發(fā)運行環(huán)境的搭建和關鍵技術的解決。
營銷人員;Android;系統(tǒng)架構;數(shù)據(jù)交互;Java
營銷人員的工作時間和地點的不確定性和流動性使得他們的工作很難受到監(jiān)督和管理,而傳統(tǒng)方式則是利用填寫考核表或者不定時抽查等方式對銷售人員進行考勤和管理,這樣固板且費時費力的方式很難對長期在公司外進行工作的銷售人員進行有效的監(jiān)督和管理,使得在外的人員的工作成本居高不下,公司的各種通知也很難及時下發(fā)到銷售人員的手中。而隨著互聯(lián)網技術的快速發(fā)展,各種移動終端的技術日臻成熟,基于Android等開放式操作系統(tǒng)的移動終端為解決這個問題提供的很好的技術支持。現(xiàn)如今智能手機已經走進了我們每個人的生活,人們可以利用手機下載各式各樣的Android軟件。在這樣的背景下,我們可以利用Android平臺來設計出一款營銷人員管理系統(tǒng)。企業(yè)可以通過這樣一個軟件,方便的掌控營銷人員每日工作情況和項目緊張,也可以及時快速的下發(fā)決議決策,從而更加便捷可靠的對營銷人員進行跟蹤管理,節(jié)約企業(yè)成本,提高營業(yè)額。
1.1Android平臺發(fā)展現(xiàn)狀
Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用與移動設備,如智能手機和平板電腦,由Google公司和開放手機聯(lián)盟領導及開發(fā)[1]。Android平臺相較于現(xiàn)如今眾多平臺最為突出的優(yōu)勢就是其開放性,其任何服務都是免費的,任何移動終端廠商都被允許加入到Android聯(lián)盟中。第三方開發(fā)商擁有了非常自由寬松的開發(fā)環(huán)境,開發(fā)商們可以推出滿足自己構想和需求的各種產品,而這些產品功能上具有的差異和特色卻不影響數(shù)據(jù)的同步以及軟件的兼容。也正因此Android在手持終端中所占的份額越開越大。
1.2Android操作系統(tǒng)架構
和其他操作系統(tǒng)一樣,Android也采用了分層的架構。由應用程序層、應用程序框架層、系統(tǒng)運行層和Linux內核層四層由高到低組成[2-5]。
應用程序層主要功能是與用戶之間進行交互,用戶可以通過下載APK包安裝并使用。應用程序層的程序主要都是用Java語言編寫的,Java程序和圖片字符串等相關資料一起進行編譯就會生成可供用戶使用的APK包。不過Android內部也內置了一些如電子電子郵件客戶端、SMS短消息、瀏覽器等的基礎核心應用程序集合。應用程序層處在系統(tǒng)框架中的最高一層。
Android擁有簡潔清晰且功能強大的應用程序框架,而這直接促成了Android近些年以來的快速發(fā)展。通過應用程序框架,開發(fā)人員可以直接與Android底層實現(xiàn)交互,也可以直接完全訪問核心應用程序的API框架。在遵循框架的安全性原則下,每個應用程序都可以發(fā)布他的功能塊,而在應用程序框架下,這些功能塊可以得到重復使用,任何其他的應用程序都可以再次使用這些已經發(fā)布了的功能塊,極大的方便了應用程序的開發(fā)。而所有的應用程序本質上是一組服務和系統(tǒng),包括:視圖、內容提供器、資源管理器、通知管理器、活動管理器。

圖1 Android系統(tǒng)架構
Libraries(庫類)[6]和Android Runtime(運行時環(huán)境)共同構成了 Android系統(tǒng)運行庫。Android中的組件可以對libraries中包含的一些C/C++庫進行調用。核心庫主要包括:系統(tǒng)C庫、媒體庫、Surface Manager和LibWebCore。Android應用程序在運行中執(zhí)行,在運行中包括核心庫和Dalvik虛擬機,而每個Android應用程序都是Dalvik虛擬機的實例并在他自己的進程中運行。
Android是運行與Linux kernel上的,它基于Linux2.6提供:內存管理、進程管理、驅動模型、網絡堆棧、安全這些核心系統(tǒng)服務[7]。
1.3組件交互方式
Android應用程序由六種不同類型的組件松耦合而成,軟件的開發(fā)者可以根據(jù)不同程序的需求挑選部分組件進行組合使用,項目清單文件AndroidMainfest.xm l描述了不同組件以及他們之間的交互。這些組件之間有著不同的交互激活方式,在Android平臺下主要交互的組件有4類,分別是;Activity、Service、Inter Receiver、Content Provider。其中,Activity[8]是應用程序的根本,所有程序的流程都運行在Activity中。
Android平臺中最重要的部分就是組件間的交互,在應用中應用程序的切換是貫穿始終的。
2.1系統(tǒng)的可行性分析
我國中小企業(yè)對銷售人員的管理和監(jiān)管體系相對較松且比較單一,沒有一套科學可行的系統(tǒng)管理方案,使得企業(yè)對銷售人員的價值沒有得到有效的利用,人力資源和公司資源都有一定的浪費,從而使得企業(yè)成本增加利潤降低。恰巧我國的中小型企業(yè)基數(shù)龐大,其中的銷售人員數(shù)量更是眾多,所以如果能開發(fā)出一款可以有效監(jiān)管營銷人員的應用程序應該會有非常廣闊的市場前景。
這樣的一款應用程序可以在Android平臺下完成,使用Java語言進行編寫。Android系統(tǒng)是是一款開源操作系統(tǒng),有著很好的開放性,可以在網上查閱利用其它程序發(fā)布的基礎組件和Android源碼,這樣編程的難度和工作量就可以有效降低,為這樣一款程序的完成提供了更高的操作可行性。
2.2系統(tǒng)的需求分析
功能需求就是對軟件的所需要實現(xiàn)的功能提出具體的要求,軟件的開發(fā)人員必須根據(jù)實際的功能需求來設計和開發(fā)軟件。在主要針對營銷人員的應用程序,必須要解決的問題就是對營銷人員工作的考勤、工作完成的進度的監(jiān)控、在外公費的使用情況以及主管對營銷人員指令的及時下達。具體的功能可以通過使用人群的不同來具體區(qū)分。
對于營銷人員來說,應用程序必須滿足以下幾個功能:1)上下班考勤。營銷人員在外工作時可以通過軟件來進行上下班的考勤。2)客戶處簽到。當?shù)竭_客戶處時,可以在客戶端自動記錄到達的時間和地點。3)意向客戶記錄。對有潛在意向的客戶進行資料的備份并上傳到公司。4)項目進度監(jiān)控。對手中正在執(zhí)行的項目進度進行實時監(jiān)控同步。5)報銷款項記錄。對營銷人員在工作中的報銷款項進行實時上傳監(jiān)管核查。6)新任務接收。在外工作時及時接收上級指令。
對于管理者來說,應用程序應滿足以下幾點功能:1)工作抽查。對銷售人員同步的工作信息進行抽查。2)工作進度檢查。管理者可以對下面的項目進度進行實施檢查。3)行程核查。管理者可以對銷售人員提供的坐標位置等信息對人員的差旅費用進行檢查。4)任務發(fā)布。可以實時對手下的銷售人員發(fā)布任務。
對于系統(tǒng)的的性能需求,界面方面需要滿足:簡潔美觀、統(tǒng)一規(guī)范、操作便捷清晰流暢的要求。性能方面要求:平均的響應時間不應多余5秒,且響應時間較長的操作應有相應的提示;單臺終端的并發(fā)用戶數(shù)量最好保證在500人以上;可靠性方面要求系統(tǒng)的故障率不應小于0.01%;系統(tǒng)應支持遠程升級來實現(xiàn)系統(tǒng)的及時更新;系統(tǒng)要支持在硬件配置不一終端上運行。
3.1系統(tǒng)架構設計
1)系統(tǒng)功能架構。
根據(jù)上一章的需求分析,可以將客戶端分為下面8個功能塊,分別是:1)登錄注冊模塊,下設用戶注冊及用戶登錄子模塊,密碼找回子模塊;2)設置模塊,下設個人設置、系統(tǒng)設置以及關于軟件子模塊;3)日報模塊,下設日報填寫、查看、日程計劃以及每日簽到子模塊;4)客戶模塊,下設客戶資料填寫、修改、查看以及分類子模塊;5)項目模塊,下設項目進度填寫、修改以及分類子模塊;6)報備模塊,下設經費報備、核查以及統(tǒng)計子模塊;7)團隊模塊,下設創(chuàng)建團隊以及團隊管理子模塊;8)通訊模塊,下設添加聯(lián)系人、聯(lián)系人查看、信息修改、通信以及數(shù)據(jù)解析模塊。這些模塊以及子模塊共同構成了這款系統(tǒng)的總體功能架構。
2)系統(tǒng)邏輯架構
如圖2所示,系統(tǒng)邏輯結構由上至下分別分為了視圖層、控制層、業(yè)務邏輯層以及數(shù)據(jù)訪問層4個層次。

圖2 系統(tǒng)邏輯架構
視圖層:是軟件與用戶進行直接交互的界面,直接的向用戶展示信息,同時也接收用戶輸入的信息并將這些信息傳輸向下面的相應各個層次分別處理,在這一層有數(shù)個界面接口。這一層可以分為主界面、登錄界面、引導界面、功能模塊界面等不同的圖形界面。主要用XML文件來進行本層視圖界面的布局,同時,根據(jù)需要也可以設定一部分自定義的控件。
控制層;這一層的主要作用是保證視圖層在數(shù)據(jù)上的同步,起了一個數(shù)據(jù)的承接作用。即保證數(shù)據(jù)層數(shù)據(jù)的任何改變都可以迅速的視圖層的交互界面上面被同步表示出來,同時當視圖層接收到了用戶輸入的任何改變也會將他們傳遞到下面的業(yè)務邏輯層處理。
業(yè)務邏輯層:對視圖層通過控制層傳輸下來的用戶輸入的信息進行處理并且調用數(shù)據(jù)訪問層的數(shù)據(jù),以完成用戶操作的整體動作并對數(shù)據(jù)處理出現(xiàn)的錯誤進行及時糾正,是以在數(shù)據(jù)處理和圖像界面交互當中處于中間的位置。
數(shù)據(jù)訪問層:這一層主要是對數(shù)據(jù)庫中的數(shù)據(jù)進行動作,主要完成對數(shù)據(jù)庫中的數(shù)據(jù)的一些調用,修改與編輯工作。
3)系統(tǒng)網絡架構
圖3展示的是系統(tǒng)的網絡架構圖,在用戶的客戶端和服務端進行數(shù)據(jù)交互時,要考慮到數(shù)據(jù)調用過程的整體性和獨立性。在用戶加入一個團隊之前和退出之后,其業(yè)務操作都是針對其獨立的數(shù)據(jù)庫的數(shù)據(jù)進行進行,但是當他加入團隊之后,這些操作便將全部針對該團隊相應的數(shù)據(jù)庫,且不會影響其之前的各種數(shù)據(jù),各個團隊之間的數(shù)據(jù)庫也是相互獨立不互相干擾的,通過團隊GUID對各個成員的數(shù)據(jù)進行保存。

圖3 系統(tǒng)網絡架構
3.2系統(tǒng)開發(fā)運行環(huán)境
我們在構建環(huán)境時,準備工作是下載需要的軟件開發(fā)包(SDK)、集成開發(fā)環(huán)境(IDE)以及插件,具體就是JDK1.6或以上、Eclipse3.6或以上、Android SDK和與之版本相應地ADT(如Revision18)。
對于系統(tǒng)的運行環(huán)境,則要求安裝軟件的客戶端使用1.6以上的Android操作系統(tǒng),CPU要求在800 Hz以上,RAM和ROM分別要求在128M以及10 M以上,同時移動終端的分辨率要求在320*480以上。
3.3關鍵技術的實現(xiàn)
1)客戶端本地數(shù)據(jù)的存儲
SQLite數(shù)據(jù)庫在本軟件的設計中用來對客戶端的數(shù)據(jù)進行存儲,Android平臺用抽象類SQLiteOpenHelper來對數(shù)據(jù)庫創(chuàng)建和修改的輔助類進行管理。SQLiteDatabase類對數(shù)據(jù)庫的創(chuàng)建,刪除和執(zhí)行SQL語句提供了方法。系統(tǒng)DbHelper類重載了實現(xiàn)創(chuàng)建表的功能(onCreate)和用于系統(tǒng)是升級時對表或數(shù)據(jù)更改操作(onUpgrade)。當數(shù)據(jù)要升級時需要更改DbHelper類的DATABASE_VERSION屬性時,如果DATABASE_VERSION屬性值增大,則系統(tǒng)會在第一次運行時執(zhí)行onUpgrade方法,對數(shù)據(jù)庫進行更新。系統(tǒng)中相關數(shù)據(jù)的操作則都會沿襲DbHelper類進行實現(xiàn)。
2)數(shù)據(jù)交互
客戶端與服務端的數(shù)據(jù)交互使用JSON格式,對于Http的Get,Post調用,Android SDK提供了Apache的HttpClient來操作。但是為了不會造成每個服務對象對HttpClient重復操作,客戶端用RestClient類來統(tǒng)一與服務端交互。客戶端要完成數(shù)據(jù)的獲取是通過JSONArray對象取得相應的值而創(chuàng)建的實體類來完成的,而JSONArray對象取得相應的值是根據(jù)RestClient類的response屬性值不為空是以response值為參數(shù)建立JSONArray對象循環(huán)遍歷來的。客戶端向服務端傳輸數(shù)據(jù)時是以JSON格式進行的。數(shù)據(jù)的提交過程首先是要創(chuàng)建JSONObject對象,并對其賦值,可以使用put方法,以其為參數(shù)建立 StringEntity對象并將 JSONObject對象的ContentType設定為application/json類型,接著由HttpPost類的setEntity方法賦值來最終完成。
文中就營銷人員的管理問題進行了討論,對于他們流動性大溝通不能及時等問題提出了利用手機軟件進行監(jiān)管的思路。由于Android平臺的開放性特征以及近年來在移動終端上的廣闊應用,可以利用Android平臺對這款管理系統(tǒng)進行設計與實現(xiàn)。文中首先對Android平臺的特性和架構進行了介紹,接下來對這樣一款軟件的可行性和具體要完成的需求進行了分析,之后便基于上面兩點設計了軟件的功能,邏輯和網絡架構,最后對在Android平臺開發(fā)軟件的開發(fā)環(huán)境和客戶端的運行環(huán)境進行了介紹,并完成了設計工作中關鍵技術的實現(xiàn)。
[1]Gronli TM,Hansen J,Ghinea G.Android vs windowsmobile vs java ME:a comparative study of mobile develo-pment environments[C]//PETRA′10 Proceedings of the 3rd International Conference on PErvasive TechnologiesRelated to Assistive Environments,2010.
[2]Pan Y C,Liu W C,Li X.Development and research ofmusic player applicationbasedonandroid[C].International Conference on Communications and Intelligence Information Security(ICCIIS),2010.
[3]Jiang F,Ku S,How to display the data from database by ListView onAndroid[C].2nd International Workshop on Intelligent Systems and Applications(ISA),2010.
[4]陳瓂,陳平華,李文亮.Android內核分析[J].現(xiàn)代計算機:專業(yè)版,2009(11):112-115.
[5]張仕成.基于Google Android平臺的應用程序開發(fā)與研究[J].電腦知識與技術,2009(28):7959-7962.
[6]Grgurina R,Brestovac G,Grbac T.Development environment for Android[C].MIPRO,2011 Proceedings of the 34th International Convention,2011.
[7]Liu J,Yu J.Research on development of android applications[C].4th International Conference on Intelligent Networks and Intelligent Systems(ICINIS),2011.
Design and im p lementation ofm arketing personnelmanagement system based on Android
ZHANG Hai-yun
(Shaanxi Institute of Industry Technology,Xi'an 712000,China)
Based on attendance and supervision of SME marketing staff in the traditional way is difficult to accomplish this issue,this article try to use the Android platform to build a suitablemarketing personnelmanagement system.Through the understand ofbasic performance and system framework of Android platform,we analysis the feasibility and the actual demand of the system we want to build,do the functionality,logic and networkmodular architecture for the application,finish the construction of the developmentand runtime environmentand also solve the key technology.
marketers;Android;system framework;data interaction;Java
TM933.4
A
1674-6236(2016)19-0083-03
2015-07-19稿件編號:201507137
張海云(1974—),女,陜西咸陽人,碩士,講師。研究方向:市場營銷、管理類或經濟類。