- 浏览: 162073 次
- 性别:
- 来自: 华东
文章分类
最新评论
-
chen_miao:
我是初学者,请问,我在flex设计好了带有按钮和下拉框的界面, ...
ruby+flex实现天气预报 -
barrytyh:
很多技术人员都有想法,但忘了一个根本性的问题,谁在给你MONE ...
互联网创业与软件开发 -
fireflyman:
囧......
关于并发和并行 -
fireflyman:
你老再次出现了
谈谈互联网新产品如何起步 -
qhh394141930:
写得很详细,受教了。谢谢!
从瀑布模型、极限编程到敏捷开发
我所在的公司和大多数国内IT公司一样,十几到几十人的规模,每次在做完项目过程中我们都会感觉很累,老板其实也很累,在小公司老板更像是一个项目经理的角色,很多东西都没有流程化的东西可走,所以很多事情都要等老板拍板后才可以继续下去,员工在很多时候就会感到迷茫,随着公司规模的扩大,公司也意识到没有一套规范的项目管理方案是万万不行的,自己在这方面也摸索的一段时间。
我首先接触的是敏捷开发的方法,但很快我就感觉这个方法行不通,至少对于我们是这样,因为我们无法保证和客户以及业务人员及时沟通,一个月见几次面就很不错了,而且我们的开发人员也并不具有敏捷能力。后来接触了下CMMI,CMMI对于小公司就更不靠谱了,它庞大的身躯足以把一个小公司压垮,如果仅为一个证书的话,我建议完全可以向o6z订购,但不可否认的是CMMI也有很多优秀的地方可以借鉴。那么我对小公司项目管理的看法是一定要精简,做到不是傻瓜都能够理解并且能够执行,况且很多项目经理(老板)也并不是领域专家。在此我想简单谈谈我对适合小公司的项目管理方案的一些想法,所谓基本适合就是80%适合,我要是说100%适合那我是在扯淡,另外20%怎么办?那就像06z所说的那样,靠经验这个王道。
首先要谈的是需求这个东西,那么什么是需求?需求就是掏钱买你产品的人一些需要,只要是客户的需要,不管是合理不合理那都是需求。其实很多开发人员都意识需求的重要性,那么真正去做需求的人有多少呢?需求应该是包括需求开发和需求管理这两个过程,这里有个特别的情况是对于自主研发的项目,我接触的项目也是这种情况居多,于是我们认为自己就是客户,所以需求开发做的很简单甚至跳过去,结果后期的需求管理非常混乱,我觉得既然自己是客户,那就要当好客户这个角色,在做客户时应完全忘却自己是个开发人员,同样要把需求做全面。很多教科书上都说应该做需求,但关于怎么做的问题上却和实际情况差别比较大,以下是我关于需求该做什么以及怎么做到一些看法。
1 需求调研
我觉得需求调研非常的重要,1年前我还打算做一个在线教育服务平台,理念就是淘宝在网上卖商品,我在网上卖教育资源,我提供网上交易场所,签约的老师、学校以及培训机构提供可交易的服务,这种服务可以通过视频、音频、在线PPT、文本的形式展现。忙活了好一阵,发现这个市场早就有很多人做了,而且这个市场并不是很好做,首先在网上学习的人有几个?并且先不说前期推广需要海量资金就是所需要的那么些高性能服务器丫也买不起!这件事就此搁浅,结果信了马云的邪,2年后你还想创业你在创业!我觉得这就是典型的需求调研没做好,没有对用户需求做调查,没有考虑同行竞争,没有考虑可行性!另外还要考虑括行业标准和法律规定,比如前些时候国家就出台了关于办视频网站的政策,我觉得你丫没有足够的背景就不要往火坑里跳楼。总之根据所做行业情况尽可能的把需求调研做全面,这样才可以保证项目首先是可以赚钱的。那么文档要写吗?我觉得可以不要正式的文档,小公司的人手本来就不够用,要把主要文档化工作集中在重要的环节上,对于需求调研,本来就很杂乱,完全可以记在工作笔记上,放到需求分析的时候整理。
2 需求分析
为了得到用户的金钱,我们总是在说,用户是上帝,用户永远是对的,尽管背地里在说客户端坏话:“你丫钱给的倒不多,要求还真少,这需求根本不合理,是正常人的逻辑吗?”,如果你想活下去,最终我们还是要想方设法满足用户的要求。用户是个外界因素,我们是无法控制的,那么我们只有尽可能改进需求分析的方法来尽量减少不必要的麻烦。那么我觉得日本人做法倒是可以借鉴,在有条件的情况下派专人去现场,随时记录关键性的需求,即使不能去现场也尽可能的获取尽可能多大信息,不要指望开发后去获取什么有价值的东西。那么是否应该做个原型给客户看看?我是觉得这不大合适,因为如果项目周期短的话,等你做好原型,黄花菜都凉了。但我觉得等到需求做到差不多的时候可以做用户界面,所谓用户界面就是用户接口,是和用户打交道的地方,所谓一图解千言,有了界面用户会清楚自己所买的东西在未来会是个什么样的东西,再者开发几个有说明性都界面倒是不会暂用很多时间。等到需求确定下来后就要整理成文档了,这个是很重要的一步,是做设计时候的重要凭证和依据,这个文档就是用户规格说明书,所谓规格就是有规范的格式和内容。
3 需求评审
我们已经有了较正规的文档了,那么下一步就是召集所有开发人员开会,最好有客户代表参加,尽管我是很厌烦开会,但该开的会还是要开到,因为之前我遇到这种情况,开发人员根据设计文档写代码,可是他并不知道自己在开发什么,站在自己的角度想一下,如果自己都不确定自己做的东西,即使有再完备的设计,也会对开发毫无兴趣,只会让自己觉得自己是个代码机器。所以所有人员参加需求评审是让大家知道自己在做一件有意义的事情,自己正在满足社会的需要,自己在为和谐社会做贡献,即使你从没那么想过,那你敢保证的你的潜意识没那么想过吗?人是要有社会满足感的吧。另外开会前一定要准备关键有价值的议题,据我观察需求评审会最容易扯到不着边的话题,所以主持人要控制话题,会议控制在2-3个钟头,最好做成幸运52的形式,所有人员一定要互动起来,否则就变成了个人演讲。需求也做了,会也开了,那么要求客户签字吧。
4 需求管理
需求管理是在开发开始之后进行的,这也是另所有人头疼的一件事,之前做完一个项目后,客户经常打电话找我们,改过来改过去,后来我听到电话,血压都要升高50个百分点,后来索性就不接电话,客户就在网上找我,搞的我连QQ都不敢登,但躲是躲不掉滴,客户直接打我手机,丫的真烦人,见过难缠的,没见过这么难缠的。后来转念一想,难道这种情况真的不能避免吗?至少是可以大幅度的缓解的吧。这就是我们需求管理中的变更管理没做好,改了哪些地方自己都忘记了,最后是跟着感觉走,拆东墙补西墙。在这里我建议要建立需求跟踪矩阵表,有了这个表我们至少可以对要修改的地方有了依据,迫使我们去调查到底是改什么地方,怎么改,最后改成了什么样。可能你会说客户需要大幅度修改原有计划,很难跟踪到具体某一项需求,那么我觉得这是由于前期的需求开发没有做好,在后期客户进行实质性的修改的几率是很小的,比如客户要求我们做个OA系统,最后总不会要我们改成个门户网站吧,在举个例子,在比如你开发一个ERP系统,客户自己的业务流程不会轻易的改变吧,总不至于把盘点这个业务改成一个报表系统吧。如果真是这样,我们完全有理由告诉客户,你丫乖乖掏银子,我们再给你们开发2期工程,要改,没门!
大家开始拍砖吧,有时间继续……
评论
就某些场景来说,可能客户更加具有潜在的前瞻性。但是就大多数场景来说,客户根本就不具备任何的前瞻性,他们比开发者对应于计算之后的领域和行业的理解要低的多。而即便是开发者更加具备这个方面的优势,也往往与真正的后果差距甚远。而也就是这个原因,组织的信息系统规模就显得十分重要。而开发者如果能通过某种手段,将客户培养成具备一定能力的信息系统规模能力的人,将是目前这个阶段,其能创造的最大价值所在之一。然而一个客观存在的事实是,客户99%的情况是错误的,开发者95%的情况下是错误的。这一点并不会因为大家都具备了规模能力而改变,仅仅是因为具备了这个能力,可以具备更多的能力和机会改正这些错误。
如果你们是处于一个高度变动的环境,那么稳定的过程就无法自我完成和进化。在一个高度变动的环境下,稳定的过程其作用往往是与建造这个过程的初衷背道而驰的。我们都记得有一段时间,很多人都在说想依靠某种流程,抵消人员高度流动带来的负面影响——经过他们这么多时间的操作之后,我没有看到谁在这个方面确定的取得了值得放在桌面上讨论的成就。我们还记得,有众多的人希望建立一个稳定的流程,以应对快速扩张的企业开发团队规模,希望可以简单的copy过程,而使新团队快速的过渡到成熟团队,而不降低这些团队的开发效率,这样的尝试绝大多数也是失败的;成功的也仅仅是,那些团队本身就没啥效率可言。又比如,为什么现在华为这样的公司,在高速向敏捷方法靠拢,而我们经常看到的互联网公司即便在声称是敏捷,其内部的事实方法并非那么灵活和自适应,原因就在于华为面临的成本和质量压力要大大的高于另外那些企业,也就是说只有当开发组织真正面临高度的成本和质量压力的时候,他们才可能真正的去对自己的过程下力气进行真心实意的改造。
而小团队的管理跟成规模团队的管理策略和方式是不同的,这一点并不是所有人都有所意识。就小团队来说,个人经验和集体经验的积累和传递,比大团队要成本低很多,成熟度也大很多,提供的效率也高很多。同时由于小团队中,自然的责任很多,委派职责很少,管理成本和监督成本虽然比例比较高,但是总额却很少,以至于有些时候可以忽略。而大型组织,他们的大型团队和多团队合作,造成个人经验和集体共同经验的积累很困难,成本也很高,相互交流和传递这些东西的成本更高,组织性积累更加困难。因此大型团队更加需要一种能够被其成员普遍遵守的共同约定性的东西,更加需要一种集体的方言,这就是过程。然而我们也要看到,即便在大型团队中管理和监督的成本比例可能是低的,但是其总额却往往是高的。从公司自身优化和发展的角度来说,一旦面临成本和监督压力,在这个方面下手可能是最常见也最容易产生效果的。当然我们也必须从中国这个特殊的具有悠久官本位文化传统的民族性出发,认识到管理和监督的压缩绝对不是一件容易的事情。但是这也从反面告诉我们,在增加管理和监督的成本付出之前,一定要谨慎而谨慎,能不增加就不增加,因为一旦增加你今后要消减就会变得很困难。这一点就为什么在中国应该尽量减少临时性措施的一个内在原因。
我觉得,一个月才跟客户见几次,是软件开发的很危险的信号。
事实往往如此,前期可能多一点,开发过程中总是有各种理由难得和客户见一面,不是他忙就是我忙。尤其是做异地项目。
另外,能否请楼主 说一下, 敏捷开发在小公司里实行不起来的 原因吗? 我比较关心这个,希望学习下。
敏捷开发在10人以下我不好说,但十几到几十人的公司我看还是别冒险了。
只谈2点,首先看看敏捷开发的特点,业务是敏捷的,业务人员和开发人员很难经常在一起,就算经常在一起,那么随时都会有新的需求,系统要经常重构,开发人员具备这个素质吗?就等着和业务人员吵架吧。
另外敏捷要求你们公司要有很好的员工激励机制,我看这是大多数小公司所缺乏的。
你觉得呢?
管理和监督的重要性主要体现在,应该建立一种机制,将管理和监督在成本中所占的比例降低到最低的可承受限度,其终极目标是将管理和监督从所谓的“必不可少”的条目中删除。
06z前辈,小公司的需求做到这个份上,是否足够和合理?想听听你的意见
另外,能否请楼主 说一下, 敏捷开发在小公司里实行不起来的 原因吗? 我比较关心这个,希望学习下。
呵呵,听了很多大师关于项目管理的文章,但是只是站在某一个方面再谈,如果考虑项目管理上下文环境的话,我觉得未见得就是合适的。与其尽信大师,,还不如来点简明而又完整的。一篇文章要把所有的项目管理全涉及也不实际,所以我打算逐个拿出来讨论,尽量保证连续性,有时间我会补上
:)。
管理和监督的重要性主要体现在,应该建立一种机制,将管理和监督在成本中所占的比例降低到最低的可承受限度,其终极目标是将管理和监督从所谓的“必不可少”的条目中删除。
如何看待需求的问题
主要是管理好需求
我手头有个项目,从无到有做了8年,一开始几乎是免费给客户试用,然后一点点加功能,再到得到客户,再到推广
需求变更怕什么,主要是改了还要让客户满意的掏钱
我们巴不的做个几十期呢,反正期期有钱拿
我之前的想法和你一样,由于很多东西说不清,所以干脆不说,所以我们逃避,可是需求管理是躲不了的,否则就像你说的死得更惨,我也想听听你更好的建议:),就像牛根生所说的,办法总比问题多。
需求管理难做和做不做是2回事,我觉得只要你认真去做,总会有收获,需求跟踪矩阵怎么用?那要看你要怎么用,变更总要有原因吧,针对变更总得有解决措施吧,你的后续修改工作总得有个依据吧,修改完之后总得有个结果记录吧,附上需求变更表一份。
发表评论
-
谈谈互联网新产品如何起步
2011-02-16 17:56 1267很多时候, 我们刚做完一个互联网产品,由于产品很粗糙, 功 ... -
育娃网---探索国内育儿社区的新思路
2009-12-22 19:55 310个人认为,这个市场是一个充满前景的垂直行业,到底应该从哪 ... -
关于社交网络的一点思考
2009-09-23 12:16 1713只要是给人设计的 ... -
对产品和运营的几点思索
2009-09-07 22:04 20891、做一个产品需要首先考虑,是卖内容还是卖功能, 切不可都做 ... -
命运掌握在自己手中
2009-09-07 13:57 743李彦宏独家撰文:命运 ... -
强者必学的定律
2009-07-06 10:03 7851、蓝斯登原则:在你往 ... -
如何快速通过CMMI评估
2008-12-15 11:39 1382终于访谈结束 ... -
对WebGame行业的一点看法
2008-09-22 10:20 1365之前不怎么上 ... -
如何进行项目跟踪
2008-09-08 19:52 1826项目跟踪主要针对计划,是为了了解项目的实际进展情 ... -
CMMI 名词辨析:检查点 里程碑 基线
2008-09-06 10:02 2565我实施CMMI的过 ... -
互联网创业与软件开发
2008-09-04 22:57 2130最近与一位创业公司的朋友私下交流了一些项目管理和软 ... -
创业公司如何用人(转CSDN老紫竹的一篇颇有见地的文章)
2008-08-29 14:32 4161创业不是用钱就能堆 ... -
新手到底新在什么地方
2008-08-22 21:29 2129接触项目管理也有一段时间了,给我感触比较深的还是 ... -
从瀑布模型、极限编程到敏捷开发
2008-08-18 21:11 2869软件开发是一种对人 ... -
QA真的能保证质量吗?
2008-08-15 21:20 4285我最早接触QA是去年在一家大型制造型企业实习的时候,在这种企业 ... -
我们不是在做技术决策,我们在玩
2008-07-31 12:58 3333在这里我不想一 ... -
小公司如何做项目管理(下)
2008-07-22 10:09 1761在上篇文章里, ... -
如何编制软件测试用例
2008-06-20 12:52 1978如何设计编制软件测试 ... -
阿里要走102年 阿里的工程师能走多远?
2008-03-19 20:30 1219转载自 http://java.csdn.net/index. ... -
如何快速通过CMMI评估
2008-03-14 22:12 1248终于访谈结束 ...
相关推荐
信息技术有限公司的项目管理手册是企业规范项目操作...综上所述,这份项目管理手册为企业提供了一套完整的项目操作指南,它不仅规范了工作流程,也强化了跨部门协作,有助于提升公司的项目管理水平,推动项目成功实施。
小项目管理不仅适合于软件开发也适合于日常的IT项目管理。
项目管理在公司管理中的重要地位体现在以下几个方面:公司业务项目化管理的方向、应用项目管理的公司实例、项目管理的能力和水平将构成新经济时代的个人和组织的核心竞争力。 创新管理与项目管理 创新管理与项目...
【公司项目管理流程、规范、制度和考核办法】 项目管理制度是企业管理的核心组成部分,它旨在确保公司的投资项目得以高效、有序地进行。本制度旨在强化和规范公司对内投资的技术改造和基本建设项目,通过明确责任...
IT项目管理管理办法介绍 IT项目管理管理办法是确保IT项目的成功实施和交付的关键步骤。该办法涵盖了项目管理的整个生命周期,从项目准备和计划到项目实施、项目交付和项目关闭。该办法旨在确保项目的质量、进度和...
【项目管理在小公司的实践与挑战】 在小公司中,项目管理往往面临一系列独特的挑战。由于资源有限,人员配置相对较少,公司的管理层,尤其是老板,往往身兼项目经理的角色。这样的情况使得决策流程变得集中,而缺乏...
项目管理知识小贴士全集
《项目管理概论》是项目管理领域的一门基础课程,主要涵盖了项目管理的各个核心环节。这份"项目管理概论网课习题答案.zip"压缩文件,针对的是南开大学提供的网课学习资源,其中包含了课程的期末习题解答,为学习者...
在IT行业中,项目管理是一项至关重要的任务,它涵盖了项目的整个生命周期,从启动到收尾,确保每一阶段都得以顺利进行并达成预设目标。"项目管理表格模板"为IT项目经理提供了一套完整的工具,帮助他们有效地组织和...
《项目管理案例.zip》是一个包含了41个具体项目管理案例的压缩文件,这些案例以MPP格式呈现,是Microsoft Project的文件类型,专门用于规划、组织和管理各种类型的项目。通过对这些案例的学习和分析,我们可以深入...
智慧美容小程序源码+项目说明(支持全国连锁美容机构线上客户管理、门店管理、商品管理、项目管理,支持在线预约,在线下单,特色项目展示等功能).zip 智慧美容小程序源码+项目说明(支持全国连锁美容机构线上客户...
一页纸项目管理,就像一只麻雀,虽小但五脏俱全,完全可用于人数较少的团队,既可以很好地做计划,又可以很好地向上司报告,真是一举两得。 既然如此,那就从概念撸起,看看这一页纸项目管理到底怎么回事,如此好的...
WBS 是一种用于项目管理的工具,用于将项目分解为更小的任务,以便更好地管理和控制项目。WBS 可以帮助组织工作、防止遗漏工作、为项目估算提供依据等。 需求分析 需求分析是指对项目的需求进行分析和确定的过程,...
2. **微信小程序**:这是一个专为项目管理设计的应用程序,可以嵌入到微信中运行。 3. **云端服务器内置项目管理系统**:用于存储项目数据,并提供核心的项目管理服务。 #### 巟能特点 - **角色设定**:根据项目...
内容简介 《IT项目管理那些事儿》采用叙事的风格,通过11篇来自一线项目经理的实际经历的文章,分享项目经理人自身...第9章 一家互联网公司的项目管理进化史 第10章 如何带好80后研发团队 第11章 项目管理之兵者诡道
适用于单位层级不高和人数较少的项目管理系统,部分功能还没提交,现完成的功能有进行人员管理、项目管理、部门管理和日常工作的管理,项目和人员的关系还未进行全局调试,暂不支持。可以供小型企业和公司对员工的...