创新性应用-构建移动应用系统-林欣灏

创新性应用、行业借鉴经验、应用难点技巧:
构建移动应用系统
一、应用背景
2006年6月,中国的贸易顺差再创月度历史新高,中国商务部(Ministry of Commerce)周一公布的数据显示,中国6月份的出口额为813.1亿美元,较上年同期增长23%,中国今年上半年的贸易顺差为614.5亿美元,较2005年同期增长了55%。由于中国下半年的出口额通常要高于上半年,经济学家们预计2006年的贸易顺差将在1,300亿至1,500亿美元之间,中国去年的贸易顺差已经达到创纪录的1,018.8亿美元。这将意味著中国已经十分巨大的对美国和对欧盟贸易顺差将继续显著增长。
出口增幅显示国外对中国制造的产品继续有强劲的需求,同时中国政府也一直在加紧使中国制造的产品更多在国内出售,跟着带动的是国内物流业的持续发展。由于内需和外需的持续拉动,中国各个港口城市的集装箱理货业,迎来了前所未有的发展机遇。
过去的集装箱理货,是“一只手一只笔” 的传统模式,理货员在理货现场,手工的将数据记录在相关纸质表格中,然后再交到办公室通过人工录入数据到一些软件系统中进行统计。整个过程实效性较低,不仅手工书写的误差较大,而且重复的数据登记也加重了人员的工作量。这种应用和管理模式越来越不能满足行业发展的需要,物流企业信息化建设的需要。随着各集装箱码头箱量的增多,码头与码头间的竞争也越来越激烈,而数据的有效流动成为提高效率的关键。
移动集装箱理货系统,将现场理货程序做在PDA上,通过有线或无线的方式来与中心数据库交换业务数据,这样,企业可以在不同的经费预算上灵活配置安装,使新技术能更容易地被应用推广。我们采用智能客户端架构,“只取所需”贯穿移动计算的始末,具体说来即智能设备上部署微型数据库,数据库中只存储当前所需的工作数据,该数据可以被离线访问,在需要时才连接网络进行数据交换。这种架构的优点是显而易见的,不但节电节能,也节省网络连接成本,使其在较差网络环境下,也能将工作事务执行下去。

二、架构选型
在微型数据库的选型上,我们采用Sybase iAnywhere 中的ultralite database,一个是该产品在全球移动和嵌入式数据库市场上占有73%的份额,更关键的是它有开放的体系和漂亮的结构。下面我们来看看它的结构:

如图,这是一个标准的iAnywhere solution 移动同步系统的构成,通过对多种移动应用模型的分析
比较,我们发现该结构是稳定的、清晰的。右下角的“远程数据库”,也叫“移动数据库”,在我们的移动理货系统中,用ultralite 数据库代替,负责智能终端设备(如PDA)上的数据支持;左上角的“统一数据库”,也叫“固定数据库”,存储整个外理系统的业务数据,它负责记录外理的当前作业状态,存储历史作业记录等;“MobiLink同步服务器”处理左右两个数据库间的同步逻辑,通常移动数据库只取所需,没有必要携带大量数据,同时多个移动数据库之间还要划清界限,各自分清公有和私有数据,旧数据和新数据,解决同步时的并发冲突等,这些都是同步逻辑关心的范畴,它的复杂程度依据具体应用需求而定;“网络”支持包括TCP/IP在内的众多有线/无线通信传输协议,使应用更具普适性。因此,该架构对于集中式移动应用系统我们是推荐的。

三、系统平台
Ultralite 支持的目标平台请参见:
http://www.ianywhere.com/developer/product_manuals/sqlanywhere/0902/zh/html/dbfgzh9/00000116.htm
可以看出,智能终端设备上的操作系统主要集中在两种,windows 和 Palm,搞开发的都知道,选择windows 往往意味着较短的开发周期,较低的开发成本,当然,我们选择windows系列,我们的系统从 pocket2002 到 pocket2003 ,最后定在mobile 5.0上,只有一个原因,mobile 5 在系统级别上解决了掉电不掉数据的问题,使PDA设备上的软件维护起来更方便,数据更安全。注意,mobile 5上运行的所有程序,都必须在.NET Compact Framework 上,这就意味着,原来你写的用于pocket 2002/2003上的非.net架构的应用软件(java程序除外),移植到mobile 5上时要全部重写,而且,microsoft visual studio 2003和2005也没提供代码自动升级的办法,你只能手工重写过。当前的.NET Compact Framework 已升到2.0了,但ultralite .net 组件并不支持在2.0上编译的版本,换句话说,你必须在.NET Compact Framework 1.0上编译你的PDA 应用程序,然后再部署到mobile 5上使用,当然,该编译版本同样可以运行于pocket 2002/2003 系统。

四、同步逻辑
在这类移动应用系统中,同步逻辑是非常重要的东西。前面提过,同步逻辑的设定没有定则,都是具体问题具体分析,它不仅涉及到应用需求分析,也和数据库结构设计相关。比如,在我们这次移动理货系统中,PDA在集装箱理货现场是作为工作点存在(即岗位),一个PDA可由多个理货员使用,每PDA处理各自不同的集装箱理货数据,我们按不同装卸船来区分它们各自的箱子,而任务分配由理货管理软件根据PDA编号来进行划分,PDA上只保存当前工作数据,仅当一艘船上的集装箱被全部理完后,同步数据成功完成后,PDA上理货数据才被清空。另外,为了部署方便,同步逻辑还要考虑初始化问题,比如,我们在第一次同步时,要从固定数据库向移动数据库导入全部的理货员用户数据,但在以后的同步过程中,我们仅对改动过的用户数据进行双向同步。

五、用户界面设计
PDA设备分为工业用机和民用机,工业用机一般防水防摔,带键盘,使用起来比民用机安全方便,工业用机还有个重要特点,那就是贵,它的价格往往是民用机价格的好几倍,多的可高达十几倍。基于采购成本的考虑,企业越来越倾向于采用民用机了。我们这次系统选用的是民用机,为了适应户外多种天气环境的要求,我们在民用机外增加了防护套,在一定程度上增加了PDA设备的安全系数;其次,用户界面设计上也作了特别的安排,由于民用机不带键盘,只能触摸屏操作,我们的软件应用界面尽量采用大按钮,方便用户的单手操作(用过了都知道,人的手指很粗滴)。PDA软件界面相对于桌面系统来说需要更精细,须知小小方寸,寸土寸金,尽量合理的信息显示,尽量少的界面切换。
比如我们设计的界面图例,分别是“索引界面”、“船图界面”、“理箱界面”。


六、小结
移动应用现在越来越受到人们的重视,它并非像人们想象的那样需要高昂的投资费用。这篇小文主要是根据个人的实践经验,从设计思路上作些描述,能从帮助或手册上找到的东西不想作太多说明,如果大家对技术细节上有什么疑问,请留言或直接邮件联系我。 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值