设计和开发一个GPS系统似乎并不太难,很多人马上就想到了地图,放大,缩小之类的功能,最多就是在加点报表之类的东西,就成了。

这种观点造成了业界内,很多GPS系统粗制滥造,不堪大用。

事实上,设计和开发一个GPS平台往往耗费数年时间,虽然这不是客户和领导所期望的,但是往往都摆脱不了三年周期的宿命:

第一年满足基本需求能够稳定下来已经很不错,

第二年增加差异化、个性化、有市场竞争力的功能,让平台功能壮大,提升用户体验;

第三年随着功能的堆砌,数据量的增大,接入车辆的增多,需要对平台进行较大规模的重构,使之满足可扩展性的要求,同时优化、提高性能,满足大规模车辆接入的要求。平台进入成熟阶段。

为什么设计和开发一个GPS平台需要这么长的周期?其实这些本来是很正常的,把事情搞砸,其实都源自于我们对美好事物的期望。

1)我们一开始想的太简单,规划的太粗糙,计划太激进,细节太少,造成后期面多了加水,水多了加面的狼狈。

2)或者一开始我们想的太复杂,过度设计,规划了很多或者意淫了很多莫须有的设计或者功能,开发难度加大,做出来的东西,有内涵,但用户体验差,错误多,不稳定。造成平台交付是个慢慢熊途。

所以,购买一个稳定已过检的部标平台,是一个明智的选择,(本人提供全套源码,需要购买者联系2379423771@qq.com)

Java平台,参见:1)基于Struts+Spring+Hibernate+Ibatis+Quartz+Mina框架构建部标监控平台

2)基于Spring4+SpringMVC4+Mybatis4+Hibernate4+Junit4框架构建高性能企业级的部标GPS监控平台

.NET平台,参见:基于C#和Asp.NET MVC开发GPS部标监控平台

基于Asp.NET MVC构建GPS部标平台

随着交通部796部标平台标准的公布,帮助我们开始对部标平台由了一个较统一的,或者是叫清晰的认识,同时越来越多的GPS软件厂商,需要获取到796平台的认证,这样才能在政府和国企的车载设备和软件平台采购项目中获得投标资格,或者是获取到地方市场准入的资格。

很多人把部标平台看成一个门槛,由于过检费用成本很高,迟迟下定不了决心,但是部标平台不仅仅是个门槛,那只是第一步,它也是奠基石,事实上部标标准在2011年公布后,一直更新过程中,它所包含的东西也是与时俱进的,平台规定的功能标准也在一步一步的垫高,未来一年,将加入视频监控的标准,目前视频监控的草案正在征求意见当中,所以部标平台现在不过,未来更难。

这个时候我们面临的问题就是,一方面要保证原有的运营平台稳定运行,一方面要改造自己原有的GPS平台使之满足796要求,甚至重新写一个796GPS平台。

那么如何来构建一个796 GPS部标平台呢?

首先设计和开发一个平台,主要的步骤是:

1) 分析需求,规划功能,划分子系统;

2) 分析子系统交互的数据流程,设计子系统接口和调用关系;

3)子系统分层架构设计,功能设计,原型设计;

4)子系统开发,单元测试,模拟测试,集成测试,压力测试;

我们按照这些步骤来设计和开发我们的GPS平台, 应该问题不大,不会出现方向性错误

1)根据交通部下发的 JT/T 796-2011《道路运输车辆卫星定位系统平台 技术要求》,我们对796平台的功能规划如下:

2)我们根据功能,先规划了几个必选的、极简子系统,然后在增加候选的子系统,或者根据情况拆分原来的子系统,避免设计的复杂性。

GPS部标平台的架构设计(一)的更多相关文章

  1. GPS部标平台的架构设计(四)-百度地图设计

    部标GPS软件平台之百度地图设计 地图是客户端中不可缺少的一个模块,很多人在设计和画图时候,喜欢加上地图引擎这样高大上的字眼,显得自己的平台有内涵,说白了就是用第三方的SDK来开发,早期的GPS监 控 ...

  2. GPS部标平台的架构设计(十)-基于Asp.NET MVC构建GPS部标平台

    在当前很多的GPS平台当中,有很多是基于asp.NET+siverlight开发的遗留项目,代码混乱而又难以维护,各种耦合和关联,要命的是界面也没见到比Javascript做的控件有多好看,随着需求的 ...

  3. GPS部标平台的架构设计(三) 基于struts+spring+hibernate+ibatis+quartz+mina框架开发GPS平台

    注意,此版本是2014年研发的基于Spring2.5和Struts2的版本,此版本的源码仍然销售,但已不再提供源码升级的服务,因为目前我们开发的主流新版本是2015-2016年近一年推出的基于spri ...

  4. GPS部标平台的架构设计(六)-Android手机客户端和手机查车设计

    对于GPS软件平台,虽然有功能非常丰富的PC端或BS客户端,但是客户也是需要移动客户端来作为自己的辅助工具,也是需要的.做为GPS平台的设计者和开发者,在开发移动客户端的时候,也需要从常规的服务器开发 ...

  5. GPS部标平台的架构设计(五)-地图服务算法库

    GPS平台,需要和各种地图打交道,需要解决以下的问题: 1.坐标偏移,这个不用多说,需要将原始坐标加偏,然后在百度地图或谷歌上显示出来,需要注意的是百度地图的加偏是偏上再偏,谷歌.高德地图等是火星坐标 ...

  6. GPS部标平台的架构设计(二) 可扩展性设计

    在设计的前夕,设计人员喜欢把领导对未来业务的期望带入到设计目标当中,比如当前业务也不过是接入几千辆车,未来业务增长也不过几万台,但领导很多激情,强势要求二期平台的接入能力要达到20万台,这个要求带入到 ...

  7. GPS部标平台的架构设计(九)-GPS监控客户端设计

    交通部的部标过检,所有的测试都是从客户端发起的,也是在客户端体现的,在客户端承载了部标标准所要求的所有的功能,是整个部标平台当中工作量最大的部分,也是最繁琐的部分. 客户端设计面临两个问题: 1.基于 ...

  8. GPS部标监控平台的架构设计(十一)-基于Memcached的分布式Gps监控平台

    部标gps监控平台的架构,随着平台接入的车辆越来越多,架构也面临越来越大的负载挑战,我们当然希望软件尽可能的优化并能够接入更多的车辆,减少在硬件上的投资.但是当车辆增多到某一个临界点的时候,仍然要面临 ...

  9. GPS部标监控平台的架构设计(八)-基于WCF的平台数据通信设计

    总体来讲,GPS部标平台的软件开发是一个对网络通信和应用程序之间通信的技术应用密集型的开发工作,也是有一定设计技术含量的工作. 1.设计通信接口 在设计的时候,根据职责划分,拆分成不同的应用子系统,对 ...

随机推荐

  1. 前端面试-难点问题2-java和javascript的区别

    经过多方面的参考,结合自己掌握的知识,总结了一下java和javascript的区别.欢迎大家评论! 一.关系 虽然java和javascript在名字和语法上有一点相似,并且有一些联系,javasc ...

  2. 怎样上传网页到ftp中

    1.下载filezilla软件软件并安装 打开刚刚装好的FileZilla,点击菜单中的"文件"             2.点击站点管理器 3.点击新站点

  3. SASS+COMPASS 自适应 学习笔记

    来源 http://snugug.github.io/RWD-with-Sass-Compass/#/ 1 安装 COMPASS 扩展 安装 方式 gem 'extension', '~>X.Y ...

  4. openx中如何使用site-variable(参数)限制(关键词)广告显示

    openx是个很强大的广告管理系统,可以根据不同的情况显示不同的广告.其中可以根据get参数值的不同来显示,即delivery limitation中的site-variable选项,name表示变量 ...

  5. 从DataGridView导出Excel

    从DataGridView导出Excel的两种情况,不多说,直接记录代码(新建类,直接引用传入参数). using System; using System.Collections.Generic; ...

  6. Python爬虫:Xpath语法笔记

    一.选取节点 常用的路劲表达式: 表达式 描述 实例   nodename 选取nodename节点的所有子节点 xpath(‘//div’) 选取了div节点的所有子节点 / 从根节点选取 xpat ...

  7. 编写一个简单的jdbc例子程序

    package it.cast.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...

  8. 前端开发与SEO

    前端开发中通过一些小习惯,可以有利于SEO,本着蚊子再小也是肉的原则,能抓住自然不能忽略. 1.控制首页链接数量,不能过多,也不要太少.更不要为了凑数而添加 2.扁平化层次,力争跳转三次可以到任何页面 ...

  9. python - socket - client端指定ip和端口

    问题描述: 在设备中有3个NI, ip分别为192.168.1.5/6/7.其中本端192.168.1.6同对端192.168.1.10建立了一个tunnel. 我希望测试tunnel连通性, 对端起 ...

  10. 在SQL语句中加入时间比较作为查询条件

    select * from 表名 where 列名 = ? and DATEDIFF(hh,时间列,'2016-08-22 15:05:59.000')<9