从铁路客票系统看大型项目的成败因素

开发 项目管理
2012年国庆,互联网上关于铁道部12306网站的讨论又是风生水起。从让人痛恨的排队系统,到1.99亿中标铁道部客票系统的太极股份和网宿科技都成了大家批评的靶子。究竟为何12306这样大型的项目会有如此失败的公众评价呢?

【51CTO观察】又到了一年国庆节,今年的国庆长假因为与中秋节连在一块儿而变成了八天。很多人都想趁着这个长假,回家去看看父母、朋友,却被铁道部12306网站的低效率,低性能而怒火中烧。究竟是为何,这样一个大型的项目会引发如此的众怒呢?

新闻回顾:针对太极公司中标铁路新一代客票系统工程情况,昨晚,铁道部信息技术中心负责人作出回应,称新一代客票系统招标依法合规、公开透明。该部门相关负责人昨晚回应,铁路新一代客票系统建设,是依据国家有关规定并面向社会公开进行招标的。其中,太极公司以1.99亿元中标部分软硬件设备和集成服务。这一招标符合法定程序,在新一代客票系统一期工程中,已按计划使用了部分招标采购的设备。对于旅客反映客票系统漏洞百出、使用不便等情况,该负责人表示,铁路客票系统建设还在进行中,工程完工后,系统功能会进一步完善。

众多网友在微博中表达了对12306的不满,1.99亿竟然打造不出一个合格的客票网站。不少WEB开发者建议铁道部找马云寻求帮助,更有不少开发者开始反思该如何搞好类似铁道部12306网站这样的大型项目。

在51CTO收集的部分文章中,有《铁道部新客票系统设计》的第篇。其中分析了网站架构、余票算法、数据系统架构等等方面的项目因素。

这样的项目架构图,及其分析文章,在以往也有不少。从技术的角度,12306确实有更多改进的地方。不过他“失败”的因素,却不光光是技术。

1.经费是否全部用于项目?

两亿资金对于铁路建设来说,基本上属于九牛一毛的开销。相比2008年几万亿的高铁建设,12306网站的投入似乎不大,甚至赶不上京沪高铁后期因为审计出现问题的金额。不过两亿对于WEB开发系统来说,却是绰绰有余。根据一些电商人士测算,12306级别网站的研发投入至多不超过一亿,甚至有人喊出3000万即可开发出12306的观点。

12306网站并不是对之前铁路客票系统的再次构建,而只是客票系统除了车站、代售点之外的一个互联网延伸,他的数据接口来源还是铁道部的总票库。这样一个网站虽说有单日峰值14亿的压力,但在目前大数据、云计算兴起的今天,有2亿人民币(接近3000万美元)的预算做这样一个系统,似乎从技术上是不难实现的。

在前铁道部部长刘志军被双规后,我们看到的是层层转包,到***实际执行者已经剩不了多少经费了。不知道12306是否也属于这样的经历,倘若如此,那12306这样大型的项目如此“失败”就不足为奇了。

2.流程设计是否合理?

一个大型项目的流程设计肯定无法让所有人满意,必然有人会骂娘。比如12306当中新出现的“排队”功能,本来这是为了方便购票者去锁定自己想要的车票,让排队者有一定的优先权。这就好像高考中的填报志愿,实际录取100人,而我可以提调120人的档案。即使你没排到100名,但前面会有人因为各种各样的原因放弃,所以你还是有机会被录取。想必12306设计排队的功能,也是基于这样一种考虑。

但12306的设计者却忽视了一个重要问题,就是旅客购买车票是一对多的关系。我去哈尔滨即使买不到Z1的车票,那其他车我也能接受啊,总不能让我一直在这里排队,而其他车的车票都被别人抢走吧。本来我可能能买到其他车票回家,即使多坐一会儿也没关系,现在可好,直接被剥夺了权利。这个问题在之前的12306系统并不存在,因为系统会实时告知你情况,好让你尽快改变主意。

假设这样的功能要继续存在,作为12306的设计者,应该参考高考填报志愿的平行志愿一说。让每个购票者能选择三到五趟车作为自己的“平行志愿“,哪趟车出票了就立即进入支付环节,另外几趟车自动取消。让公众的选择面多一些,大家就不会骂娘了。

业务流程设计不细致,没有经过大量调查和实际测试,必定会导致大型项目的失败。

3.技术细节令大型项目”溃于蚁穴“

大型项目总会有一些技术漏洞和不足,有些是无伤大雅的小毛病,而有些确实致命的硬伤。比如之前的12306网站还需要用户去更新自己的根证书,在浏览器上浏览12306会弹出该网页存在风险,是否信任并继续的弹窗。倘若用户点击了”是“,会造成后续选择日期时部分元素无法显示的问题。

这样的兼容性问题和安全性问题,对于上过计算机专业课,或者有一定IT经验的人来说自然是小菜一碟。但是对于全国几亿网民来购票的时候,就会让他们困惑。一次又一次的报警弹窗会让他们无所适从,到底点不点?这么多错误的网站究竟是不是假网站?

有很多时候,咱们程序员都会以自己的IT技术水平来考量广大网民的平均水平,势必会造成整个项目的复杂性和繁琐性增加。这样的技术细节问题被忽略,项目被人骂娘就在所难免了。

4.更新维护是否及时

大型项目出现问题在所难免,连微软、苹果、Google这样的IT业领军企业都要经常发布补丁或者升级让用户修补之前的漏洞和问题。而当12306出现这么多被人诟病的错误之后,太极软件等系统集成商是否及时更新和维护12306网站,也是决定成败的关键。

从目前来看,他们还没有更多的行动。51CTO记者在12306网站查询时,经常会出现各种数据丢失的现象,车次无法查询,某些日期整个数据表一片空白。面对那一行行空白的表格,不知道坐在计算机前心急火燎急需一张回家车票的用户,心情该是怎样的复杂。

总结

大型项目做好是困难的,大家的批评也是铺天盖地的。以12306网站作为解剖对象,给各位开发者和项目经理以一些启示,对今后大家做好自己的项目,恐怕还是有不小的帮助。引以为鉴,希望12306网站还是能更好的为大家服务,让大家都能安心回家。51CTO提前预祝各位网友,中秋快乐!

责任编辑:彭凡 来源: 51CTO
相关推荐

2011-06-21 11:05:04

软件项目

2015-07-30 10:42:23

Radware

2021-05-12 08:54:56

FastAP web 框架数据库操作

2015-08-31 10:11:43

iOS大项目开发

2015-08-26 10:36:32

ios开发漫谈

2022-03-14 10:24:31

编程语言开发

2024-02-21 09:32:18

开发架构

2012-07-16 09:58:04

微软操作系统

2021-01-13 09:34:45

项目Gson框架

2015-12-08 09:13:05

开发维护Java项目

2020-01-02 10:21:40

技术研发架构

2024-01-22 09:17:35

2012-04-01 15:03:39

大型项目开发者

2013-01-18 10:10:30

项目项目经理

2021-01-26 05:39:06

项目模块代码

2010-10-21 13:04:32

VMware View

2011-01-21 16:59:27

火车票

2016-06-16 18:54:28

财政项目调研

2019-10-10 10:30:26

MVCModelController

2020-09-15 06:13:05

Vue.jsJavaScript框架
点赞
收藏

51CTO技术栈公众号