吳增彬,謝小鵬,王苗苗
(華南理工大學 廣東 廣州 510640)
Android平臺是谷歌公司近幾年來推出的一種嶄新的手機操作系統,其有著許多獨特地優勢,首先是開放性,開發的平臺可以使得任何手機終端都可以加入到Android聯盟中來,這也使得Android平臺極其普遍,第二,豐富的硬件選擇,眾多廠商都推出自己的手機產品,這些種類豐富的硬件,但卻絲毫不會影響數據的同步和軟件的兼容性。第三,Android SDK提供Android平臺上使用Java語言進行android應用開發必須的工具和API接口[1],即是無縫結合的谷歌應用,谷歌推出Android平臺后,一直致力于推出豐富的API以及許多獨特的服務,如谷歌地圖,谷歌搜索等。可見,Android平臺也越來越成為我們開發計算機應用程序的首選。船舶維修是一個繁瑣復雜的工程,船舶維修企業設備維修費用包括日常維護保養費用,小修費用、中修和大修修費用等。設備的大修所需時間長,費用高[2],就一般而言,船舶維修周期比較長,需要維修的工作量大,所需查詢和獲取的信息量大,特別是在大型船舶的維護和現場施工方面。同時,船舶維修行業具有工作環境條件惡劣、噪音大、粉塵多、光線暗等特點,因此,在該行業數據信息的高效率交互是非常重要,眾所周知,程序界面是人與機器進行信息交互的中介,界面設計要考慮整體美觀性、現場操作性等,確保系統整體的功能性和美觀性的完美統一[3],一個好的界面,能帶給用戶不尋常的效果,美觀、大方、簡潔的界面將更加促進工作效率的提升。在進行該系統開發完成后,也對其界面進行美化,使界面符合簡單大方的特點。結合Android平臺的各種優勢,最終我們選擇應用Android平臺開發該便攜式修船數據管理系統。
需求分析是指在對計算機應用程序進行設計前,需要對待解決的問題進行全面詳細的分析,分清楚該應用程序需要解決哪些問題,確定以后還需要分析這些問題關鍵點在哪里,需要解決什么問題,同時分析還要確定需要輸入的數據有哪些,需要得到的數據有哪些。總之,需求分析就是說對具體問題,弄清楚設計的程序要做什么。同樣,針對該便攜式修船數據管理系統,我們在設計之前需要對其進行全面細致的分析,搞清楚修船數據管理具有哪些特點。
對修船數據管理系統進行需求分析,確定所需要的模塊數量,進而對每一個模塊進行設計,包括底層邏輯結構的設計,界面布局和設計等。針對調研,修船管理系統一般需要進行經營管理,物資管理,倉庫管理,設備工具管理。工程管理等,同時,為了使得修船工人能在遠程查詢任務和反饋信息,我們還增加了一個模塊:消息和任務模塊,此模塊的增加將大大提高了修船數據在服務器和終端之間的交互作用,更大的提高修船工作效率。
1)經營管理模塊
基本信息具體包括:客戶信息,代理信息,船舶信息,基本價格信息(物料價格,已修船舶價格,人力資源價格等等),船舶標準用語,國家地區代碼表,報價項目模板文件。
2)物資管理模塊
基礎資料管理,主要包括物料手冊(物料編碼、條碼、規格、價格等);供應商信息(供方名稱、地址、聯系方式、產品類型,產品價格、證書、信譽度等相關基本信息);合同管理(物資采購,外協合同的歸檔記錄)。
3)倉庫管理模塊
物料的計劃管理(采購、預購)、驗收、入庫、庫存查詢,物資領用管理。
4)設備工具管理模塊
設備臺帳的主要內容有:設備編號,設備名稱,規格,型號,生產廠商,啟用時間,使用單位,使用年限,工具臺帳(工具名稱),供方管理(供方名稱,地點,聯系方式等),碼頭基本信息(碼頭基本信息記錄分廠碼頭的數量、位置、長度等基本資料),船塢基本信息記錄事業部船塢的數量、位置、長度等基本資料,泊位基本信息記錄事業部泊位數量、位置、長度等基本資料。
5)工程管理模塊
工程信息管理主要用于對船舶工程編號、項目編號進行查詢,包括編號的啟用,停用,對應的基本信息。
6)消息與任務模塊
點選人員名稱或部門名稱為收件人,即可發送至某人或某一整個部門。同時當你收到信息以后,你亦可回復信息你所要表達的信息。
根據以上分析,修船數據管理系統需要具備以上模塊,每一個子模塊都要實現各自的功能。每個子模塊的功能相對較多,其中細節的功能占大多數,考慮到程序的靈活簡單,我們在設計具體的程序時,將暫時不考慮模塊中次要功能的實現。
基于Android平臺的修船數據管理系統主界面的設計,考慮到修船數據系統存在有6大模塊,同時還需要考慮輸入和顯示遠程服務器IP地址與端口號,因此,可以采用GridView控件來設置模塊圖標。

表1 界面對應的模塊Tab.1 Interface corresponding to the module
GridView控件是一個在平面上可顯示多個條目的可滾動的視圖組件,該組件中的條目通過一個ListAdapter和該組件進行關聯,實現界面的設計,因此,修船數據管理系統運用GridView是最合適的,同時GridView控件具有豐富的屬性,也使得運用此控件實現模塊的更簡單分類。
例如 GridView 控件具有 :android:columnWidth; android:setNumColumns(int)等屬性,前者用來設置圖標的寬度,后者用來設置每行圖標的多少[4-7]。用GridView控件進行界面設計的部分代碼如下:

主界面的設計以后,還需要實現界面的跳轉,圖1為主界面跳轉示意圖。實現頁面的跳轉,還需要在圖標中設置按鈕監聽事件,當監聽事件被觸發以后,判斷觸發監聽事件的參數值,即根據參數arg2的值來實現不同界面的跳轉。
界面跳轉的部分代碼如下所示:


圖1 主界面跳轉示意圖Fig.1 Jump schematic diagram of main interface

以上步驟完成了數據管理系統主界面的設計,那么接下來還需要實現系統子模塊登陸界面的設計。
系統子模塊登陸界面的任務是設計程序進行賬戶和密碼的驗證,以實現用戶的登錄。圖2所示是該數據數據管理系統登陸基本流程圖。其中包括登陸界面需要和服務器進行接口通訊,驗證輸入賬號密碼是否正確,此處于底層設計,文中就不一一介紹。

圖2 系統流程圖Fig.2 System flow diagram
通過以上界面設計,最終設計的便攜式修船數據管理系統如圖3、圖4所示。當需要使用該數據管理系統時,需先輸入IP地址和服務器端口。對要選擇的操作模塊,點擊相應的圖標,即可彈出相應的登錄界面。最后,輸入賬號密碼進行登錄操作。模塊主界面簡潔、大方、美觀,選擇時只需要點擊即可,操作快捷方便。

圖3 系統主界面Fig.3 System main interface

圖4 子模塊登陸主界面Fig.4 Main interface of sub-module landing
文中主要介紹了便攜式修船數據管理系統的界面設計,重點設計了該系統主界面的設計。本文,首先對系統進行需求分析,通過分析船廠維修船只這個行業的特點,確定該系統可以分成6大模塊,同時確定了各個模塊分別需要有哪些功能。然后,通過GridView控件實現頁面的布局,在通過對圖標設置監聽事件來實現界面的跳轉,最終,所開發的界面簡潔、大方、美觀,維修工人操作該系統方便快捷,更好的提高了修船的效率。本文主要解決了該系統主要界面的開發設計,所做的工作比較基礎,接下來還需要進一步對界面設計以外的內容進行開發設計,特別對數據管理系統邏輯層和底層的開發,才能使該修船數據管理系統更快、更好地應用到修船的實踐中。
[1]黃偉敏.基于XMPP協議的Android即時通信系統設計[J].電子設計工程,2011,19(8):57-59.
HUANG Wei-min.Design of android instant messaging system based on XMPP agreement[J].Electronic Design Engineering,2011,19(8):57-59.
[2]鄔志祥.船舶維修企業設備維修費用管理淺析[J].現代商業,2010(20):251-252.
WU Zhi-xiang.Management of ship repair business equipment maintenance costs[J].Modern Business,2010(20):251-252.
[3]王珊珊,宋亮.礦井下通訊控制系統的人機接口模塊的設計[J].電子設計工程,2011,19(4):186-189.
WANG Shan-shan,SONG Liang.Design of man-machine interface module of communication and control system under the mine[J].Electronic Design Engineering,2011,19 (4):186-189.
[4]樊榮.Java基礎教程[M].北京:機械工業出版社,2004.
[5]勒巖,姚尚朗.Android開發入門與實戰[M].北京:人民郵電大學,2009.
[6]郭宏志.Android應用開發詳解[M].北京:電子工業出版社,2010.
[7]沈伯青.從零開始Java基礎培訓教程[M].北京:人民郵電出版社,2003.