敏捷开发
chals115
这个作者很懒,什么都没留下…
展开
-
一次迭代式开发的研究1:软件开发的风险
最近在学习敏捷开发,以下资料是在网上精选出来的,写的非常好!我们的软件开发存在巨大的风险,但问题到底出在哪里呢?这对于问题的解决至关重要。 1. 我们在没有深刻理解业务需求的情况下就必须完成需求分析; 2. 客户在没有弄明白自己的真正需求的情况下就被要求确定软件的业务需求; 3. 我们在没有与客户再次沟通的情况下埋头苦干,直到完成开发并交付客户。 既然问题出在这转载 2013-08-15 11:38:48 · 869 阅读 · 0 评论 -
一次迭代式开发的研究10:需求变更的关键步骤
前面我们提到了需求变更。当客户提出了需求变更,经过与我们的需求人员的详细讨论与分析,最后确定下来了变更内容和修改方案。但这时草率地开始进行设计和开发是不正确的,它将成为项目后期的一个巨大的风险,一颗定时zhadan,为什么呢?我们来详细分析分析。每当发生需求变更的时候,不管是大是小,项目的许多因素都会相应地发生变化。首先发生变化的是工作量。每次的变更必然造成工作量的增加,到底增加了多少转载 2013-08-15 15:15:36 · 810 阅读 · 0 评论 -
一次迭代式开发的研究8:开始真正的工作
我们经过以上一系列的分析,工作量评估与优先级评估,制订出一个迭代式的项目计划,再经过一系统用户确认与公司评审以后,终于可以开始我们真正的开发工作。 其实,迭代式开发的执行过程,也就是制作和不断去关注与评估项目进度表的过程。因此,当项目进入执行开发过程时,项目经理应当首先制作项目进度表。现在我们看看项目进度表长得啥样儿。在一个项目进度表中,首先被纵向划分为三个区域:未开始任务区、转载 2013-08-15 14:55:57 · 611 阅读 · 0 评论 -
一次迭代式开发的研究5:准确的工作量评估
当我问起无数人,什么是迭代式开发时,人们总是抛来一副不屑的神情:“迭代开发!这还不清楚?就是按迭代的方式进行开发嘛,开发过程采用持续集成的方式。”但我再详细询问怎么进行开发,甚至谈到如何制订计划,以及计划前的分析整理时,人们却投来诧异与迷茫的神情:“啊!迭代开发这么复杂呢?”所有对迭代式开发的实践与研究中,工作量评估往往是最令人头痛、最大的难题。当人们信心满满地决定尝试迭代开发时,工作转载 2013-08-15 14:22:03 · 1545 阅读 · 1 评论 -
一次迭代式开发的研究6:功能的优先级评估
前面我们提到,迭代式开发最重要的两项前期分析就是工作量评估和优先级评估。工作量评估不仅能够确定整个项目的开发周期、成本预算,而且能够确定每项工作的开发周期,为工作的时间分配提供了依据。但是,如此多的工作,谁先做谁后做,如何安排它们的先后顺序,则是由工作优先级来决定的。 迭代式开发的特点就是持续集成,也就是首先开发最重要、最基本的功能,而暂时忽略掉分支的、次要的功能。正因为如此,转载 2013-08-15 14:31:23 · 740 阅读 · 0 评论 -
一次迭代式开发的研究11:Where you are
其实做一个项目经理真不是一个好的职业,它需要太多的千锤百炼才能修炼出来。这不仅需要反复经历“失败-总结-再失败”的轮回,而且需要有一颗无比坚强的心,能够在无数次经历无比艰难并且令人沮丧的时刻而能坚持不懈、毫不气馁。一个项目经理就像一位将军。将军百战死,而项目经理呢,经历无数项目以后沉淀下来的,更多的是疲惫与沧桑。但凡一个好的项目经理都是要经过一次又一次项目失败的教训,似乎只有失败才能留转载 2013-08-15 15:19:27 · 668 阅读 · 0 评论 -
一次迭代式开发的研究2:什么是迭代式开发
我们的软件开发存在巨大的风险,但问题到底出在哪里呢?这对于问题的解决至关重要。 1. 我们在没有深刻理解业务需求的情况下就必须完成需求分析; 2. 客户在没有弄明白自己的真正需求的情况下就被要求确定软件的业务需求; 3. 我们在没有与客户再次沟通的情况下埋头苦干,直到完成开发并交付客户。 既然问题出在这里,我们就可以制订我们的解决办法: 1. 业务需求的分析不再是一转载 2013-08-15 11:41:43 · 653 阅读 · 0 评论 -
一次迭代式开发的研究9:从容应对需求变更
前面我们已经详细描述了一次迭代式开发的完整过程,首先是项目计划的前期分析——工作量评估和优先级评估,然后是制订迭代式的项目计划,最后是按照项目计划执行项目。每天,运用Burn-Down Table监控项目进程,随时掌握项目进度的偏差(是滞后还是超前),然后制订相应的应对方案予以调整,直到最后的项目结束,一切似乎进行得比较顺利。但真实的情况往往不是这样,这里忽略了一个最重要的因素,那就是需求变更。转载 2013-08-15 15:09:37 · 739 阅读 · 0 评论 -
一次迭代式开发的研究7:一个迭代式项目计划
前面我们提到,当我们为软件分解工作项目,评估了工作量,确定了优先级。同时,整个项目的人员安排,也就是哪些人负责需求分析,哪些人负责设计,哪些人负责开发,哪些人负责测试,被确定下来,我们就可以制订我们的迭代式开发的项目计划了。迭代式开发的最重要的特点就是迭代,即将整个开发过程划分为数个迭代期,每个迭代期的时间长短并非完全一致,但却差别不大,这就是迭代周期。迭代周期的长短视项目情况而定,过转载 2013-08-15 14:37:16 · 1469 阅读 · 0 评论 -
一次迭代式开发的研究3:怎样进行迭代式开发
前面我们提到了迭代式开发的巨大优势,它可以降低我们软件开发的巨大风险,它可以使我们把握用户的真正需求,它可以使我们从错误与偏差中及时纠正过来,那么我们应该如何进行迭代式开发呢?要回答这个问题,我们首先要弄清迭代式开发与传统的瀑布式开发的差别在哪里。1.需求分析的差别 与传统的软件开发一样,迭代式开发同样需要与客户进行一个充分的需求分析。但与传统的软件开发不一样,迭代式开发不要求初期转载 2013-08-15 11:43:56 · 644 阅读 · 0 评论 -
JaCoCo:分析单元测试覆盖率的利器
言随着敏捷开发的流行,编写单元测试已经成为业界共识。但如何来衡量单元测试的质量呢?有些管理者片面追求单元测试的数量,导致底下的开发人员投机取巧,编写出大量的重复测试,数量上去了,质量却依然原地踏步。相比单纯追求单元测试的数量,分析单元测试的代码覆盖率是一种更为可行的方式。JaCoCo(Java Code Coverage)就是一种分析单元测试覆盖率的工具,使用它运行单元测试后,可以给出代码转载 2015-07-18 16:23:56 · 1618 阅读 · 0 评论