搜索
首页数据库mysql教程挨踢项目求生法则(2)战略篇

摘要 : 知道什么是挨踢项目吧?什么!不知道?那IT项目知道了吧?为了不让客户踢、不让老板踢、项目组成员之间不互相踢,俺为大家分享一些减少被踢机会的心得体会。就算不能让项目成功,也至少不会死得那么惨吧!我将分 团队建设 篇、战略篇、 需求 篇、设

摘要
知道什么是挨踢项目吧?什么!不知道?那IT项目知道了吧?为了不让客户踢、不让老板踢、项目组成员之间不互相踢,俺为大家分享一些减少被踢机会的心得体会。就算不能让项目成功,也至少不会死得那么惨吧!我将分团队建设篇、战略篇、需求篇、设计篇、编码篇、测试篇、实施篇和计划篇为你分享。

什么叫挨踢项目?
IT项目,特别是软件开发项目,都属于“挨踢”项目的范畴。挨踢项目的几大特点:
1.需求不确定。
2.技术不确定。
3.工期限死。
4.预算限死
两大不确定和两大限死,你想不“挨踢”都难!

指挥战争可能是最复杂的项目管理
做挨踢项目可能比较杯具,但最复杂、难度最高、代价最大的项目管理可能是战争的管理了。战争靠什么取胜呢?如果你是这场战争其中一方的统帅,你会如何指挥这样战争呢?你可能会说:你不是在扯淡吗?说挨踢项目管理,怎么跑到战争去了?让我们先看看战争的战略管理,然后再回到项目的战略管理吧。

白起的故事

白起你不会没有听说过吧?就是那个杀死几十万赵国俘虏的杀人狂魔。但我说的不是他杀俘虏的事情,而是白起被称为战神,一生没有打过败仗,他是如何做到的?因为他只选择打战略上能打赢的仗!
当时只有赵国有实力和秦国一战,双方几十万大军对峙在长平一带。秦军统帅是白起,赵军统帅是廉颇。白起对于此战的战略上的判断是这样的:两国实力、军力相当,如果全力出战,秦国能胜,但只能是惨胜,这样的后果只能是削弱了自己,反而让其他战国有机可乘。秦国的优势在于全国上下一心,特别是秦王和大臣们众志成城。而赵国虽然军力不错,但赵国内部权力斗争厉害,各派只为自己利益不顾国家利益。因此白起定下的战争策略是:对外称病不能担当统帅,隐藏自己做统帅的事实,以拖待变,寻找有利战机再出击。另一方面,秦国使出反间计,成功让赵国更换主帅,换了那个很出名的只会“纸上谈兵”的赵括。
赵括上任后,全军出击,结果中了白起埋伏,白起利用地形,用基本相等的数量的士兵困住了几十万赵军,不与之决战,消耗赵军的粮草,最后赵军被迫投降。后面就是白起杀死几十万降兵的事情了。白起成功地用比较少的代价,给赵国带来致命的打击。
白起杀死几十万降兵后,立马建议秦王马上挥军灭掉赵国。秦王认为此时出击必会促使六国合纵,这样秦国会招架不住;但白起认为,刚杀掉几十万降兵,其他五国还在震惊之中,没有这么快缓过气来,一时无法合纵,此时正是灭掉赵国的好时机!但秦王坚持自己的想法,白起只有退兵。后来秦王后悔了,想让白起率军灭掉赵国。这时白起认为:其他五国已经缓过气来了,此时攻击赵国,六国必会合纵。但秦王一意孤行,白起托病不统军,秦王另找人统帅,结果六国果然合纵,出现了“信陵君盗取帅印”促使魏国出兵的著名历史事件,秦军大败。秦王再次要求白起统帅,认为只要白起统帅必能获胜,但白起仍然推辞,最后秦王恼羞成怒,杀了白起。
白起在战略上的判断是相当准确的,可惜他的老板和他想法不一样,白起拒绝执行战略上注定失败的决策,虽然避免了自己打败仗,但得罪了老板,下场凄惨啊!咱们这些做项目的,如果遇到一个战略上有问题的项目,你是做还是不做呢?

庞涓的故事

说起庞涓,大家可能马上想到的是他如何害孙膑,然后孙膑又如何设计杀之报复。其实庞涓是一个战略上判断正确的人,只是被迫执行了战略上有问题的决策。
庞涓是魏国的大将,他对魏王建议的国策是:先西进灭掉秦国,解除后顾之忧后再图其他。秦国当时并不强大,多年与魏国争夺河西河东,“三十年河西三十年河东”的故事就是这样来的。但魏王认为:秦国很穷,但秦人很彪悍,灭掉秦国代价太大,没啥好处。魏王最想做的事情是灭掉赵国和韩国,所谓的“三晋合一”,魏、赵、韩原本同属晋国,后来他们将之瓜分掉。庞涓认为:灭掉赵国、韩国是不可行的,因为附近的战国,特别是齐国不会让魏国成功的,其他战国必会出兵。但魏王执意要先灭赵国,然后是韩国,让庞涓统帅。庞涓只能坚决执行老板的决策,率军猛攻赵国,就快攻克邯郸之时,齐国突然出兵突袭魏国的大梁,这就是“围魏救赵”的故事。庞涓只能回师救大梁,途中遇到伏击,损失惨重,但还不至于战死。
魏王仍然不甘心,再次要庞涓统帅灭韩国,故事再次上演,这次是“围魏救韩”。庞涓再次回师,孙膑上演了“逐日减灶”的典故,让庞涓判断失误,率大军进入死地,被齐军伏击致死。
庞涓同样在战略上的判断是基本正确的,但他的老板想法不是这样,庞涓作为老板的手下,他选择了坚决执行老板的决策,但仍然得不到好下场!

遇到一个战略上有问题的项目,你不做会死,做也会死,怎么办呢?

认识软件项目的战略管理和战术管理
上面两个故事,希望我能大概说清楚什么是战略。项目的战略大概就是指:能决定项目成败的宏观因素,如:甲乙双方在这个项目上的商业利益、双方领导的特点、项目的预算、目标、工期等,还有就是你所带领的团队是否有能力有条件完成这个项目等。
战略上有赢的可能,加上好的战术,项目才有机会成功。
战略上没赢的可能,无论用什么好的战术,项目都逃不过失败。
战略上有赢的大好条件,但你的战术很差,项目也会失败,你浪费了一个大好的项目!
希望我们能尽量选择战略上有机会赢的项目,万一运气不好,挑上了一个战略上没机会赢的项目,那么就要想办法不要死得那么惨。
下面的法则供你参考。

法则1:从战略高度出发

客户为什么要做这个项目?我们公司为什么承接这个项目?
合同的金额是多少?我们公司对这个项目的预算是多少?项目工期有多长?
你的项目团队有什么人?每个人的水平和潜力怎样?
有没有其他影响项目成功的重大风险?
以上问题应该尽早搞清楚,通常来说可以在公司的高层领导那里得到很多重要信息,但如果你无法接触高层,或者高层不鸟你,你用尽所有办法都难以获取以上的重要信息,那么你基本上可以判断:这个项目死定!
最怕遇到一些让你自己解决所有问题的领导,这些只能是无水平、不负责任的领导!除了合同金额一些涉及公司机密的内容可能不方便漏录外,其他信息是必须让项目经理知道的,而且有些事情是需要高层出马帮助项目组去搞定的。
遇到高层不鸟你的情况,法则1-4都没啥作用,你可以直接看法则5。

法则2:尽量提高你在客户面前的地位

通常情况下,我们需要门当户对地和客户接触,高层VS高层,基层VS基层。如果你是一位小小程序员,想和客户高层说话,这是大忌!
很不幸的是,项目经理能经常接触的客户中的最高领导,只能是对方的业务骨干,最多是部门经理,而项目经理以下的项目成员,身份更加是低微了。
为了让项目组将来的工作更加主动,要做好项目组成员的“包装”,例如让项目经理挂上副总、总监之类的头衔,尽量让项目成员的身份放大和提高。第一次和客户接触时,就要包装好你的高大形象。例如项目启动会上,以比较高的形象来展示项目组各成员。

法则3:让客户的高层重视项目

越是高层的客户,越抓得住项目的目标,越是基层的客户,越容易陷入细节,甚至提出很多匪夷所思的要求。如果客户的高层能向下属明确本项目的目标和范围,那么客户的中层基层就比较容易搞定了。
法则2做得好,就很有机会让项目经理可以直接接触到客户的高层,项目经理在掌握了项目的战略的情况下,了解了客户大致想法的情况下,就比较容易驱动客户高层做事情了。如果项目经理不好接触客户的高层,那么就要动用法则4,让你的高层去找客户的高层。

法则4:驱动你的高层做事情

项目中很多重大问题,方向性的问题,其实是需要我们的高层去处理的。例如让我们的高层与客户高层明确项目的目标与范围,推动客户配合需求调研工作,推动上线试运行,推动验收等。项目中出现重大问题,会影响项目成功时,都应该第一时间将问题反馈给我们的高层,让高层去处理或给出建议。
我不觉得你能解决所有问题才叫厉害,在项目组的层面确实有些问题是无法解决的,这些问题如果不及时让高层知道并让高层支援你,问题将会变得更加严重。
如果你的高层是那种什么事情都让你自己搞定的“无能”领导的话,那么本法则不适用,请看“法则5:输少当赢!”

法则5:输少当赢!

如果是项目战略上判断觉得无赢的可能,但你的高层领导认为可以赢,执意要求你执行他的决策,那么本法则可能会让你不会死得那么惨。
做一个战略上不可能赢的项目是很痛苦的,最佳选择是不做这个项目,但通常你没得选,你只能硬头皮上。你应该庆幸,不是让你做战争的统帅,你不会象白起或者庞涓那样会死得很惨,你最多是辞职不干!
万一赢头皮要做这样的项目,只能是“输少当赢”了。向你的高层随时报告进展,遇到什么问题全部抛给他,美名其曰:向您请教应该如何处理!遇到与领导有某些分歧,你可以适当地争论一下,然后假装被你的领导说服,你还要装作很受教的样子。你只能在很有限的空间内,尽量降低这个项目的损失,尽量降低你将来需要承受后果的严重程度。将一些问题及时抛给高层,或许会有机会帮助高层重新思考自己的想法,逐步修正他对这个项目的战略判断,这样的话会慢慢变得对你有利。
采用法则5时,是不得已的选择。如果想不做这个项目,恐怕只能选择辞职;为生活,只能暂时忍一忍,接手这个烫手山芋吧。
关键是心态要好,尽自己力就OK了,对得起自己,也对得起这个项目。挨领导的批可能是不可避免的了,当他唱歌吧!

法则5是没有办法的选择挨踢项目求生法则(2)战略篇

上策:不做这个项目,或说服领导放弃这个项目。
中策:在做这个项目的过程中,通过不断抛问题给领导,让领导重新思考修正想法。
下策:硬着头皮执行领导的决策,尽量少输。并且在一开始就将项目情况透明化,让领导随时知道项目进展和问题,这样至少有两个好处:1.领导有机会修正想法,从而向“中策”方向发展;2.将来发生问题时,领导就不会觉得“惊喜”了,项目组就不会死得那么惨。缺点就是:一开始就抛问题给领导,领导会不高兴的。你愿意选择一开始就让他不高兴?还是隐瞒问题,最后给一个“惊吓”给他呢?

不过话说回来,所谓我们认为领导对这个项目的战略分析是错的,这只是我们主观的看法。真是情况有可能是以下几种:
1.你是正确的,领导是错的。
2.你是错的,领导是正确。
3.你和领导都判断错了。

领导坚持他的判断,有些理由可能是不方便告诉你的,所以我们也不能断定自己的想法一定比领导的要好。

但这个项目最终是由你来完成的,如果你的想法与领导的想法从根本上是不一致的,做起这个项目来就会相当痛苦。


“挨踢项目求生法则(2)——战略篇”网络直播课程及回放

我是作者张传波,对于这个题目我还开了一个网络直播课程(免费滴),如果你喜欢此文而且还看得不够过瘾的话,欢迎你继续学习这个网络直播课程。

直播及回放链接:(免费学习)

http://www.umlonline.org/school/thread-2582-1-1.html


 

作者:张传波

创新工场创业课堂讲师

《火球——UML大战需求分析》作者

www.umlonline.org 创办人

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
MySQL:世界上最受欢迎的数据库的简介MySQL:世界上最受欢迎的数据库的简介Apr 12, 2025 am 12:18 AM

MySQL是一种开源的关系型数据库管理系统,主要用于快速、可靠地存储和检索数据。其工作原理包括客户端请求、查询解析、执行查询和返回结果。使用示例包括创建表、插入和查询数据,以及高级功能如JOIN操作。常见错误涉及SQL语法、数据类型和权限问题,优化建议包括使用索引、优化查询和分表分区。

MySQL的重要性:数据存储和管理MySQL的重要性:数据存储和管理Apr 12, 2025 am 12:18 AM

MySQL是一个开源的关系型数据库管理系统,适用于数据存储、管理、查询和安全。1.它支持多种操作系统,广泛应用于Web应用等领域。2.通过客户端-服务器架构和不同存储引擎,MySQL高效处理数据。3.基本用法包括创建数据库和表,插入、查询和更新数据。4.高级用法涉及复杂查询和存储过程。5.常见错误可通过EXPLAIN语句调试。6.性能优化包括合理使用索引和优化查询语句。

为什么要使用mysql?利益和优势为什么要使用mysql?利益和优势Apr 12, 2025 am 12:17 AM

选择MySQL的原因是其性能、可靠性、易用性和社区支持。1.MySQL提供高效的数据存储和检索功能,支持多种数据类型和高级查询操作。2.采用客户端-服务器架构和多种存储引擎,支持事务和查询优化。3.易于使用,支持多种操作系统和编程语言。4.拥有强大的社区支持,提供丰富的资源和解决方案。

描述InnoDB锁定机制(共享锁,独家锁,意向锁,记录锁,间隙锁,下一键锁)。描述InnoDB锁定机制(共享锁,独家锁,意向锁,记录锁,间隙锁,下一键锁)。Apr 12, 2025 am 12:16 AM

InnoDB的锁机制包括共享锁、排他锁、意向锁、记录锁、间隙锁和下一个键锁。1.共享锁允许事务读取数据而不阻止其他事务读取。2.排他锁阻止其他事务读取和修改数据。3.意向锁优化锁效率。4.记录锁锁定索引记录。5.间隙锁锁定索引记录间隙。6.下一个键锁是记录锁和间隙锁的组合,确保数据一致性。

MySQL查询性能差的常见原因是什么?MySQL查询性能差的常见原因是什么?Apr 12, 2025 am 12:11 AM

MySQL查询性能不佳的原因主要包括没有使用索引、查询优化器选择错误的执行计划、表设计不合理、数据量过大和锁竞争。 1.没有索引导致查询缓慢,添加索引后可显着提升性能。 2.使用EXPLAIN命令可以分析查询计划,找出优化器错误。 3.重构表结构和优化JOIN条件可改善表设计问题。 4.数据量大时,采用分区和分表策略。 5.高并发环境下,优化事务和锁策略可减少锁竞争。

您什么时候应该使用复合索引与多个单列索引?您什么时候应该使用复合索引与多个单列索引?Apr 11, 2025 am 12:06 AM

在数据库优化中,应根据查询需求选择索引策略:1.当查询涉及多个列且条件顺序固定时,使用复合索引;2.当查询涉及多个列但条件顺序不固定时,使用多个单列索引。复合索引适用于优化多列查询,单列索引则适合单列查询。

如何识别和优化MySQL中的慢速查询? (慢查询日志,performance_schema)如何识别和优化MySQL中的慢速查询? (慢查询日志,performance_schema)Apr 10, 2025 am 09:36 AM

要优化MySQL慢查询,需使用slowquerylog和performance_schema:1.启用slowquerylog并设置阈值,记录慢查询;2.利用performance_schema分析查询执行细节,找出性能瓶颈并优化。

MySQL和SQL:开发人员的基本技能MySQL和SQL:开发人员的基本技能Apr 10, 2025 am 09:30 AM

MySQL和SQL是开发者必备技能。1.MySQL是开源的关系型数据库管理系统,SQL是用于管理和操作数据库的标准语言。2.MySQL通过高效的数据存储和检索功能支持多种存储引擎,SQL通过简单语句完成复杂数据操作。3.使用示例包括基本查询和高级查询,如按条件过滤和排序。4.常见错误包括语法错误和性能问题,可通过检查SQL语句和使用EXPLAIN命令优化。5.性能优化技巧包括使用索引、避免全表扫描、优化JOIN操作和提升代码可读性。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。