本书大胆地采用故事推理、案例实证、动漫效果等方法,系统地介绍了软件项目从酝酿、策划、筹备、 实施、使用、运维、到最终退出的整个生命周期的演变过程内容。力图深入浅出地实现软件项目方方面面的真实面目,使读者看得见,摸得着,也下得了手,去实践。
本书内容既然定位于用户和软件开发者,那么只要跟软件项目相关的用户和软件开发者都可以品味该书。
20年的软件项目经历、
上百项软件项目实践经验、
80多个具体实战案例、
上亿元软件项目的实战分析、
突破性的软件项目管理理论拓展、
通俗易懂讲故事式的内容情节、
给从事软件项目管理的新手和高手,带来了看得见、摸得着的丰盛喜宴!
推荐序一
创新、实用,是软件项目管理知识学习和应用的两个核心要点。
纵览本书,给我比较深的印象是,该书在很多方面都进行了大胆创新。
首先,编写风格,没有采用传统的教材式编写方式,而是采用了带故事情节、具有逻辑推理、理论和实践深度结合的编写方式。说白了,部分采用了写小说的表达方式,使得本书内容更形象、生动、易懂,符合没有软件项目管理经验的IT学生的学习要求;同时也保留了核心管理内容的严谨性,如采用经典的PMBOK知识理论框架,结合大量的实战案例,使之对IT从业人员具有很强的实际借鉴作用。该书在命名上采用了“战神”,并在全书中以战神的高大、强有力的形象来比喻软件项目管理高手应该要具备的能力和新手应该努力的方向,对全书起了核心灵魂的作用,具有很大的鼓动性和激励性。
其次,该书敢于怀疑经典、挑战经典,并通过事实来证明自己独特的软件项目管理理论的正确性,这很难能可贵!现代软件项目管理理论方面的书,主流源头来自西方国家,在最近二三十年才被陆续引入国内,并进行推广应用。但是,真正具有独立理论意识、以自我创新为主的软件项目管理方面的书,在国内寥寥无几。本书在以下几方面具有明显的突破:
(1)对软件项目管理生命周期进行了全新释义和理解,把生命周期从以软件项目建设为主拓展到了软件从萌芽到最后消亡的真正的全生命周期。这跟管理学里的全生命周期管理理念是一致的,更具科学性。
(2)对软件工程和软件项目管理理论界限及关系进行了明确鉴定,澄清了软件工程理论拓展的一些模糊地方的问题,为读者带来一种新的理解思维。
(3)第一次提出了在软件项目管理中需要重视的“微管理”理念,并给出了实践方向。对在校IT专业学生的学习,具有很好的启发作用。“微管理”的核心是指向了人本身的软件界面操作心理需求,具有很强的通用性和实用性。
(4)该书也对应用软件测试定位、软件项目资料编写及管理能力等的提高,以及软件项目团队管理思路等,提出了独特而有价值的建议,值得读者仔细品位。
再次,该书突出了实战、实用的理念。全书独立案例剖析达到80余处,每处都是一个生动的软件项目管理故事,也是作者20来年的软件项目工作实践经历。案例内容真实可靠,有些是复杂软件项目管理内容的生动再现,有些甚至是惨痛教训换来的经验总结,具有很高的参考价值。当然,该书把软件项目管理高手比作战神,在点出人是软件项目管理的核心的同时,为读者提供了具有趣味性、类比性的战争与软件项目管理相融合的知识内容,具有触类旁通的作用。另外,还存在大量的跟理论知识直接结合的非独立印证案例,如珍珠般地撒落在全书的角角落落。这些或明或暗的案例、故事,对理论知识起了很好的画龙点睛的作用。
管理学的核心是人,是以心理学作为基础的管理技巧!正如作者所提倡的,要管理好软件项目,必须改变思路,实现从“被动管理到主动管理”的过程,要具有主动管理意识!
北京博阳世通信息技术有限公司总经理、博士后、教授
推荐序二
世界上万事万物,都要经历从低级到高级的演化过程,软件项目管理也不例外。从几十年前的原始的DOS下的编程到高级过程语言编程,再到现在流行的面向对象语言编程,也经历了从低级到高级的变化过程。在这个演变过程中,软件项目管理的实质内容是在变的,作者在这一点上尤其敏锐,能抓住事物发展的普遍规律,敢于突破经典管理理论,以事实为准绳,提出具有实用性的理论知识,并得到了其自身所经历的大量项目的实战验证,具有很强的说服性!
放眼国内,在IT行业,要在核心领域和核心技术上进行开拓性工作,是有很大难度的。就像超图公司的GIS产品,创业初期也经历了20多年的艰苦爬坡,才赶上国际先进水平,才敢于在GIS应用领域,跟世界顶级竞争对手一决高低。该书作者在软件项目领域经过20来年的摸爬滚打,创过业,做过乙方,也做过甲方;从事过大量的软件项目代码开发工作,也经历过大量的软件项目管理理论学习和研究,为本书的编写积累了丰富的经验和知识,最后厚积薄发,产生本书的成果,就在意料之中了。本书最让我感慨的是:我们在IT领域起步虽然晚,但是我们有信心,我们敢突破,这是我看本书的最大收获!
当然,就像作者所描述的一样,这本书里点缀着大量的高价值的软件项目管理知识珍珠,等着IT行业的朋友们来摘取、感受。从软件项目的酝酿、策划、筹备、实施、使用、运维到最后的退出,总有你所关心的内容。
北京超图软件股份有限公司总工程师、研究员、博士
前 言
我的从业经历
我最早接触软件代码是在1993年,用苹果386电脑第一次调试Basic语言,此后一直跟软件打交道。
(1)1998年到2011年,作为软件开发者开发过的商业软件有:
? 酒店神点菜系统,包括了前台点菜子系统(含无线、触摸屏、PC三种终端)、库房采购子系统、厨打控制子系统、财务管理子系统、经理决策子系统、会员管理子系统、原料跟踪子系统、吧台管理子系统、预订管理子系统、娱乐管理子系统等。
? 小灵通4S汽配店管理系统,包括了销售、维修、库房、配送、财务等内容。
? 小灵通超市管理系统,包括了配送子系统、采购子系统、财务子系统、库房子系统、盘点子系统、POS销售子系统等。
? 小灵通药店管理系统,包括了配送子系统、采购子系统、财务子系统、库房子系统、销售子系统、会员管理子系统、数据分析子系统等。
? 小灵通鞋业管理系统。
? 音像店零售管理系统。
? 宾馆管理系统。
? 药品批发管理系统。
? 商品批发管理系统。
? 汽配批发管理系统。
? IC卡考勤管理系统。
上述为自行成立的软件公司自主开发的产品,所有产品均是自己亲手开发完成的(1998年到2007年),天津市飞镭信息技术有限公司。
? 基于ASP的聊天室系统(1998年),分项技术负责人,网络技术研究所。
? 邮政中间业务平台(2000年),技术参与,北京大唐电信。
? 证券信息发布系统(2000年),项目开发负责人,北京通州某软件公司。
? 档案管理系统(2002年),项目开发负责人。
? 基于CAD的排水管道管理系统,课题研究负责人。
? 智赛IT教育网站(2008年),项目开发负责人。
? 内部信息交流发布网站(2009年),项目开发负责人。
? 某协会网站(2010年),项目开发负责人。
? 机房系统监控管理系统(2011年),课题研究负责人。
(2)2008年至今,作为业主方所承担过的重大项目:
? 天津市市政公路设施网格化管理平台项目(2008年到2010年),投资近4000万元,技术监管负责人。
? 天津市市政公路综合GIS管理平台(2008年到2010年),投资4000万元,分系统技术监管负责人。
? 天津市路网管理与应急处置系统工程(2012年至今),投资1亿元,项目监管负责人。
(3)所负责的运维软件,达到40余套。
(4)参与过的各种软件项目建设方案咨询、评审40余套,涉及医疗、税务、电信、教育、电力、民政等行业。
(5)参与过交通运输部行业标准制订一项,负责天津市地方标准一项。
(6)获取国家高级信息系统项目管理师资质。
(7)持续对信息化管理理论进行研究,在国家级期刊发表论文10余篇。
比较欣喜的是,我所负责的商业软件项目(已经被使用的),至今一个都没有失败过。上述持续的软件项目从业经历,为我编写本书奠定了良好的基础。
我的问题
其实我在刚刚学软件知识初期(20世纪末),就知道了软件开发管理需要面对的一系列问题,如需求蔓延、业务流程优化、软件质量管理、进度控制等。
但是,什么是真正的需求蔓延呢?虽然有些专业书籍有所定义或介绍,但是总让人觉得朦朦胧胧,一种非常不解渴的感觉。经过20来年的实际软件项目体验,才慢慢明白需求蔓延的实质性内容。它的产生根源是什么?需求蔓延的内容是什么?怎么样蔓延开来的?为什么没有控制住?这个需求蔓延是不是不可避免?事实是很复杂的!但是,我想通过本书来尝试一下,希望通过一个个生动的实际案例,把需求蔓延的方方面面向大家展示出来,使大家看得见摸得着,就像拿着放大镜解剖小麻雀一样,五脏六腑清清楚楚。
当然,除了需求蔓延问题外,其他问题也一样,我希望把它们的来龙去脉,能清楚地展现出来。
好在我有足够多的从业经历和相关的故事,让这些问题自然地展现出来。故事虽好,但需细品!
能否通俗易懂些
俗话说,浓缩的都是精华!软件项目管理方面的绝大多数书籍都是这样的,高度概括、高度提炼,非常经典,但是也非常枯涩。没有软件项目经验的人,看了没有多少感觉;有经验的人看了,还得反复揣摩。记得我看PMBOK(项目管理知识体系)书,看了三遍以上,才敢说弄清楚了。
能否通俗易懂些?看了既能获取知识要点,又能明白怎么实际操作,这是我想要写的东西。
软件项目管理都是经验的总结和提炼,我在保持其经典知识架构的基础上,为了通俗易懂,进行了大胆的尝试。
1.故事推理
本书主体采用了战神故事推理的方法,通过一个个生动的故事,引出软件项目管理要点知识,并通过大量的实战故事,来印证知识的准确性,强化对知识的记忆深度,实现知识要点可操作性的自然展现。软件项目本身是一个复杂的事务处理过程,如果有战神一样的人物,在软件行业这个激烈的战场上,能战无不胜,那是我们所渴望的!
2.案例实证
为了说清楚软件项目管理知识的来龙去脉,让读者能很轻松地掌握知识管理要点。本书结合我20来年70多个独立软件项目实例在知识要点中恰如其分地展现,以事实来印证,让读者不但知其然,还知其所以然。
3.动漫效果
最近我经常和孩子一起看儿童类故事书,我发现图文并茂,甚至带有卡通图片的故事书,更容易理解。软件项目管理书,为什么不能这么写呢?
本书主要内容
写本书时,我认真回顾了软件工程中软件生命周期里的内容,主要包括:问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级、废弃等阶段。
仔细琢磨一下,软件工程知识原来主要是为软件公司里的软件开发人员所编写使用的,所以该生命周期其实质是从软件项目的需求获取定义开始的,而没有涉及软件的原始的需求来源,包括软件项目的酝酿、决策、前期立项准备等内容。
其次,软件工程对于软件系统的业务使用、运维、报废,要么不提,要么寥寥数语,没有进行系统的研究和介绍。
最后,我觉得在高度发达的信息化现代社会,软件项目不能也不可能光靠软件技术人员玩,就能玩好。要把软件项目做好,用户、软件开发人员是需要紧密配合的。所以,我觉得传统意义上的软件生命周期存在比较大的缺陷。
本书对软件生命周期进行了重新定义:一款软件的使用周期,是指从对它的酝酿、策划、筹备、实施、使用、运维,到最终退出使用的全过程。在该生命周期中用户、软件开发者都很重要,都需要积极参与。于是,本书的内容框架是按照新的软件使用周期来确定的,并深入讨论了用户和软件开发者之间的互动内容。
本书读者对象
本书内容既然定位于用户和软件开发者,那么只要跟软件项目相关的用户和软件开发者都可以品味该书。
从用户角度(主要是信息化管理者、决策者),你可以了解软件项目应该怎么组织建设,软件建设完成后应该怎么进行业务使用,也可以知道日常应该怎么运维;再高级些,你可以知道如何策划软件项目,如何安排信息化管理人才等。
从软件开发者角度(主要是软件公司高层、项目经理、代码开发工程师、项目前期市场人员),自软件项目立项开始的主要管理内容,都可以涉猎。当然,你可以从这里得到更多的东西,比如如何更好地管理代码及软件功能模块,如何跟业主打交道,如何进行个人计划管理,如何编写软件项目管理方面的材料;甚至你还能学到软件公司层面的管理内容,比如如何考核程序员的业绩,如何进行软件项目营销等。
从学生角度(主要是IT专业的在校学生),则可以提早感受各种实际软件项目的建设及管理过程内容。有了好的管理意识,在学习软件代码过程中,就可以提早养成各种严谨的管理思维。要知道,即使是软件代码开发,也需要有严谨的微管理思想。
最后,该书也适合部分信息化管理研究人员,对相关理论的探讨。
致谢
经过半年多的辛苦,总算完成了自己一直想做的一件事——把自己多年的软件行业从业管理经验做个总结。在这本书出版之际,需要感谢一些人,正是因为他们的帮助和鼓励,才能使我更好地完成本书。
先感谢我的儿子赫赫吧。他平时可支持我写书了,我要写书时,他就说“爸爸我学习,你写书啊!”。是的,虽然只是一句话,但是代表了小家伙对老家伙的期待!
在写本书的过程中得到了北京熊健先生的重要建议,他建议我写一本带故事情节的软件项目管理书,而不要去写那种枯涩无味的东西!本书出版得到了电子工业出版社相关编辑老师们的热情帮助,她们为本书的出版提供了很大的支持。
另外要感谢天津市高速公路科技有限公司技术总监李冠军先生的帮助,他为本书的内容图片风格提供了原始素材和建议,使本书看起来更加丰富多彩。
还要感谢路网项目、网格化项目、GIS综合管理项目、电子政务网项目等相关人员,他们在开发及管理工作中所碰到的问题,为我编写本书提供了生动的原始素材。
刘 瑜
2015年12月于天津