项目管理
充满诗意的联盟
嘴里工作者,靠伶牙俐齿打天下的说
展开
-
一次迭代式开发的研究:什么是迭代式开发
我们的软件开发存在巨大的风险,但问题到底出在哪里呢?这对于问题的解决至关重要。1. 我们在没有深刻理解业务需求的情况下就必须完成需求分析;2. 客户在没有弄明白自己的真正需求的情况下就被要求确定软件的业务需求;3. 我们在没有与客户再次沟通的情况下埋头苦干,直到完成开发并交付客户。既然问题出在这里,我们就可以制订我们的解决办法:1. 业务需求的分析不再是一蹴而就,而...2011-09-29 13:15:19 · 529 阅读 · 0 评论 -
持续集成工具简介
2001年2月,在软件开发各领域有所建树的17位大师联合发表了《敏捷软件开发宣言》,提出了敏捷开发这一概念,至此敏捷软件开发风靡世界,为无数软件开发项目所采用。而在所有这些运用敏捷开发获得成功的软件项目中,运用持续集成工具无疑成为一项最重要的最佳实践,因为它集中体现了敏捷开发的各项思想。[b]持续集成工具的意义[/b]首先,它促进了项目团队的[b]沟通[/b]与[b]反馈[/b]。...2012-01-02 22:25:31 · 152 阅读 · 0 评论 -
如何提高研发质量与持续集成
随着软件业的不断发展,软件项目的规模越来越大,软件结构越来越复杂,技术要求越来越高,参与人员越来越多,管理也变得越来越难。在这样一个大背景下,如何提高软件研发质量,相信是所有软件公司都在关注的话题。但是,如何提供研发质量,这决不仅仅是一个口号,我们必须有一套行之有效的方法加以管理。然而有效的管理带来的负面影响往往是成本的提高,这包括时间的成本、人力的成本、资金的成本。在大多数软件研发项目中,时间总...2011-12-30 22:06:30 · 169 阅读 · 0 评论 -
一次迭代式开发的研究:Where you are
其实做一个项目经理真不是一个好的职业,它需要太多的千锤百炼才能修炼出来。这不仅需要反复经历“失败-总结-再失败”的轮回,而且需要有一颗无比坚强的心,能够在无数次经历无比艰难并且令人沮丧的时刻而能坚持不懈、毫不气馁。一个项目经理就像一位将军。将军百战死,而项目经理呢,经历无数项目以后沉淀下来的,更多的是疲惫与沧桑。但凡一个好的项目经理都是要经过一次又一次项目失败的教训,似乎只有失败才能留给他...2011-10-29 19:44:07 · 123 阅读 · 0 评论 -
一次迭代式开发的研究:需求变更的关键步骤
前面我们提到了需求变更。当客户提出了需求变更,经过与我们的需求人员的详细讨论与分析,最后确定下来了变更内容和修改方案。但这时草率地开始进行设计和开发是不正确的,它将成为项目后期的一个巨大的风险,一颗定时zhadan,为什么呢?我们来详细分析分析。每当发生需求变更的时候,不管是大是小,项目的许多因素都会相应地发生变化。首先发生变化的是工作量。每次的变更必然造成工作量的增加,到底增加了多少呢?...2011-10-25 13:23:31 · 493 阅读 · 0 评论 -
一次迭代式开发的研究:从容应对需求变更
前面我们已经详细描述了一次迭代式开发的完整过程,首先是项目计划的前期分析——工作量评估和优先级评估,然后是制订迭代式的项目计划,最后是按照项目计划执行项目。每天,运用Burn-Down Table监控项目进程,随时掌握项目进度的偏差(是滞后还是超前),然后制订相应的应对方案予以调整,直到最后的项目结束,一切似乎进行得比较顺利。但真实的情况往往不是这样,这里忽略了一个最重要的因素,那就是需求变更。...2011-10-23 19:46:22 · 217 阅读 · 0 评论 -
一次迭代式开发的研究:开始真正的工作
我们经过以上一系列的分析,工作量评估与优先级评估,制订出一个迭代式的项目计划,再经过一系统用户确认与公司评审以后,终于可以开始我们真正的开发工作。其实,迭代式开发的执行过程,也就是制作和不断去关注与评估项目进度表的过程。因此,当项目进入执行开发过程时,项目经理应当首先制作项目进度表。现在我们看看项目进度表长得啥样儿。在一个项目进度表中,首先被纵向划分为三个区域:未开始任务区、正在进...2011-10-06 10:23:54 · 190 阅读 · 0 评论 -
一次迭代式开发的研究:一个迭代式项目计划
前面我们提到,当我们为软件分解工作项目,评估了工作量,确定了优先级。同时,整个项目的人员安排,也就是哪些人负责需求分析,哪些人负责设计,哪些人负责开发,哪些人负责测试,被确定下来,我们就可以制订我们的迭代式开发的项目计划了。迭代式开发的最重要的特点就是迭代,即将整个开发过程划分为数个迭代期,每个迭代期的时间长短并非完全一致,但却差别不大,这就是迭代周期。迭代周期的长短视项目情况而定,过短可...2011-10-05 15:40:56 · 850 阅读 · 0 评论 -
一次迭代式开发的研究:功能的优先级评估
前面我们提到,迭代式开发最重要的两项前期分析就是工作量评估和优先级评估。工作量评估不仅能够确定整个项目的开发周期、成本预算,而且能够确定每项工作的开发周期,为工作的时间分配提供了依据。但是,如此多的工作,谁先做谁后做,如何安排它们的先后顺序,则是由工作优先级来决定的。迭代式开发的特点就是持续集成,也就是首先开发最重要、最基本的功能,而暂时忽略掉分支的、次要的功能。正因为如此,迭代式...2011-10-05 15:36:54 · 266 阅读 · 0 评论 -
一次迭代式开发的研究:准确的工作量评估
当我问起无数人,什么是迭代式开发时,人们总是抛来一副不屑的神情:“迭代开发!这还不清楚?就是按迭代的方式进行开发嘛,开发过程采用持续集成的方式。”但我再详细询问怎么进行开发,甚至谈到如何制订计划,以及计划前的分析整理时,人们却投来诧异与迷茫的神情:“啊!迭代开发这么复杂呢?”所有对迭代式开发的实践与研究中,工作量评估往往是最令人头痛、最大的难题。当人们信心满满地决定尝试迭代开发时,工作量评...2011-10-04 11:06:26 · 231 阅读 · 0 评论 -
一次迭代式开发的研究:迭代开发从这里开始
古人云:“运筹帷幄之中,决胜千里之外。”一次成功的软件开发,制订完善的项目计划是决定性的第一步,迭代式开发更是如此。前面我们提到,迭代式开发与传统开发方式差异不小,迭代式开发其过程更加复杂,协调各方协同工作的步骤也就更多。迭代式开发的特点就是迭代,在每个迭代期都包含需求分析、设计、开发、测试。因此,迭代式开发从一开始就要求开发中的各方人员,需求分析员、设计师、开发人员与测试人员,几乎同时开...2011-10-04 10:45:09 · 223 阅读 · 0 评论 -
一次迭代式开发的研究:怎样进行迭代式开发
前面我们提到了迭代式开发的巨大优势,它可以降低我们软件开发的巨大风险,它可以使我们把握用户的真正需求,它可以使我们从错误与偏差中及时纠正过来,那么我们应该如何进行迭代式开发呢?要回答这个问题,我们首先要弄清迭代式开发与传统的瀑布式开发的差别在哪里。[b]1.需求分析的差别[/b]与传统的软件开发一样,迭代式开发同样需要与客户进行一个充分的需求分析。但与传统的软件开发不一样,迭代式开发不...2011-09-30 11:04:13 · 239 阅读 · 0 评论 -
一次迭代式开发的研究:软件开发的风险
我们的软件开发存在着巨大的风险,当我们经历了数月的辛苦工作后才发现,我们的软件并不是客户满意的软件。这时候往往出现几种情况:1.客户开始频繁挑刺,大量的需求变更在很短的时间发生,加班再所难免,团队士气降到最低点;2.甲乙双方开始相互推诿,谁是谁的责任,争吵不可避免,甚至最终谈判破裂,项目失败,双方不欢而散。这些都是我们不愿看到的,却不得不面对。到底问题出在哪里呢?就在我们的...2011-09-29 13:34:23 · 175 阅读 · 0 评论 -
持续集成工具是怎样工作的?
不论哪种持续集成工具,使用过程都是相似的,我们来听听敏捷大师Martin Fowler对持续集成的定义就可见一斑:持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软...2012-01-02 22:36:45 · 172 阅读 · 0 评论