吴增彬,谢小鹏,王苗苗
(华南理工大学 广东 广州 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.