软件项目估算方法在敏捷开发中的实践


    软件项目估算方法敏捷开发中实践
      0 引言
      知道您否听说关软件项目理典六拍笑话样说项目开始前家先拍脑袋承诺项目进度安排开工会领导拍拍家肩膀语重心长充满期两杯酒肚春风意时候拍胸脯领导表决心领务
      项目执行中遇困难时客户业已拍桌子时研发团队拍腿恍然悟事情样呢直切覆水难收项目失败时候拍拍屁股谋高说笑话确实反映软件项目中面问题拍脑袋拍屁股走环节存着式样问题
      追根溯源初拍脑袋时候没考虑清楚轻易承诺面系列问题会发生拍脑袋需方法轻易举拍带兵仗先仔细谋划知知彼百战殆文正试图软件项目现实角度通敏捷开发中常估算方法项目中实践估算方法较希价值参考意见
      提高项目计划质量未雨绸缪希次拍脑袋拍理
      1 什估算
      软件项目理中估算项目持续长时间花费少成预测说估算正种未预测文仅项目时间估算方面展开讨涉项目费成估算
      估算项目目标项目承诺执行计划等诸类项目理词汇联系起业务目标描述项目期达成果进行估算基输入项目承诺项目组许诺特定日期前特定质量交付规定功承诺估算相估算更激进保守
      承诺观项目交付时间质量预计估算基客观事实预测结果外
    执行计划通常罗列出工作项相联关系承诺具体化计划估算相
      前者寻求实现特定结果者目准确预测计划通观方法进行调整实现特殊求应付突发情况进行赶工增加资源等计划基础正估算计划定估算结果相果估算计划存显著差项目较高风险反计划具较低风险  项目理九知识领域中项目时间理中包含估算相应理程活动资源估算活动持续时间估算程项目组已建立范围确定进行输入容述前导程输出结果外建立事业环境素组织程资产
      活动持续时间估算输出续制定进度表进度控制见估算项目理中处承前启位置项目计划制订必须条件项目终利交付关键素
      项目理门偏实践科学理方法需实践中检验需根实践验做出适调整种估算方法项目理中运关键必须根实际情况做出合适变化达结果
      2 估算目
      软件项目估算完全纯粹预测活动项目计划确定优先级活动密切联系实际软件估算容易受事情影响旦做出估算估算基础承诺某日期前交付具定质量功项目理通理控制项目达目标
      通常说交付项目初想功水致相花费资源计划基相致设定时间框架完成认项目估算致种说法推理隐含着样瑕疵
      评估估算预测力(终结果进行较)说明估算实际价值软件项目外围环境总断变化评价良估算标准应该基估算项目成功提供支持力说估算首目标预测项目结果确定项目目标否足够现实项目控状态达成目标
      3 敏捷开发特点
      敏捷开发2001年前软件业专家解决许公司研发团队面断增长项目问题程泥潭概括出开发团队具快速工作响应变化力价值观原称敏捷联盟
      倡导开发方法称敏捷方法敏捷方法集成许新型开发模式特点重点强调
      ①注重编程中特长发挥
      ②强调软件开发产品软件文档文档开发服务开发目
      ③客户开发者关系协作合约细开发者应客户合作澄清需求细节变成客户业务专家
      ④设计周密终软件质量表明设计实现更重适应客户需求变化设计根环境变化断更新
      敏捷开发通常复杂非常确定需求软件项目传统开发方法瀑布模型原型法等区敏捷方法开放具弹性方法敏捷方法项目理中更加关注项目中作繁复计划沉重程方法
      项目成功重素敏捷开发团队定非顶尖开发员组成顶尖合作成员普通沟通良成员更加适应敏捷开发特点敏捷开发特强调合作沟通交流力单纯软件开发力更重敏捷开发团队般会较达高沟通效率典型敏捷开发方法SCRUMCrystal特征驱动软件开发(Feature Driven DevelopmentFDD)极限编程(eXtreme ProgrammingXP)等
      文会根软件项目中实施极限编程实践敏捷方法估算技术做进步讨讨方法仅极限编程适敏捷方法
      4 敏捷开发中估算方法
      敏捷开发团队通常较验善沟通员构成敏捷开发中采估算方法需便理解发挥团队成员集体智慧利项目利交付笔者团队中采种做扑克估算(Planning Poker)方法进行项目初  期估算正许敏捷开发中采技术扑克估算非常简单效率
      首先敏捷方法中估算应该团队成员进行项目理闭门造车式出样做原开发团队验事组成问题验会出样解决方案果力集中起问题求解八九离十
      样道理估算扑克估算致程样开始前首先决定采估算度量般说估算点较常时会采费伯数字(FibonacciNumber011235813…)作估算点值者采衣服尺码(XSSMLXLXXL…)抽象数字符号例户事较简单标记1估算点户事二系统登录程需考虑方面较标记13估算点等
      样做处估算出块相块实现需时间长短敏捷开发具短交付周期特点般周期适应团队逐渐出点该花费少时间认识次估计会更加准确
      正敏捷开发纠正特点接准备样套卡片时贴代团队成员户事进行讨澄清关该点需求量成员理解功该设计等
      果家某点提出问题起亮出估算点卡片正前面说成员验背景难次出样估算某潜问题风险没发现者想更加简便办法等意见作步讨基础
      家相互交换问题风险法讨新点子等组重新投票出较致估算接着样流程户事进行估算出串估算点扑克估算致思路
      5 常估算方法
      够应软件项目中估算方法种中功点分析种常方法系统分解较组件便够快速理解分析估算扑克法类似功点功点分析测量单位功点分析中系统分五类组成部分(组件)常规系统特性
      前三类件外部输入(External Inputs EI)外部输出(External Outputs EO)外部查询(External Inquiry EQ)组件中组件处理档案称事务(Transaction)外两类组件部逻辑文件(InternalLogical Files ILF)外部界面文件(External InterfaceFiles EIF)构成逻辑信息数存储
      外部输入指户根需通增删改维护部逻辑文件外部输入户维护ILF外部输出指户输出结果显示结果调维护数参考数获功点术语中显示结果称外部输出外部查询指户通计算机系统选择特定数显示结果
      获项结果户输入选择信息抓取符合条件数时没数处理直接文件抓取信息例驾驶员显示预先设置形图输出结果直接信息存贮位置提取信息里称作外部查询
      部逻辑文件第项数功客户负责维护数数系统中逻辑分组终户维护做部逻辑文件(ILF)
      外部界面文件第二项数功数逻辑分组关种情况户负责维护数数系统中驻留户进行维护该数供系统户参考例飞行中驾驶员需参考某卫星面定位系统定位数驾驶员负责更新数参考
      样供参考系统数分组称外部界面文件功点估算通系统分析根五种组件少高中低三类项复杂度进行分加影响估算调整子出估算结果面公式
      AFP(调整功点)UFP(未调整功点数目)×AF(影响子)
      6 实际例子
      笔者实际采敏捷方法项目中进行实验分采方法样短开发周期工作进行估算结果表1示表1估算方法估算结果方法估算值单位工作量(天)预计工作量扑克估算33 1·6 52·8天功点估算69 0·8 55·2天
      中扑克估算单位工作量前次团队估算结果调整出约花费1·6天完成估算点工作量功点估算单位工作量公司已统计表格摘录反映公司中采类似技术团队均工作效率
      整周期约花费两礼拜时间六团队成员参开发实际工作量认60天
      7 结果分析
      综述采较简单基团队验估算方法起精确着复杂数学模型估算方法没明显精确度差异相复杂方法说简单易团队达成识方法节约出结需时间增强团队务认识
      侧面提高团队士气效率正某研究预测学专家说研究预测学牢结简单方法总体复杂方法样准确
      较敏捷估算功点估算二者项目量化成抽象值求出项目完成需花费时间相前者通项目团队适应开发模式通段时间实践出单位工作量出项目全部工作量者通更范围历史数
      较相类似项目出单位工作量然估算项目预计时间法说种方式更加优越显易见第种更容易实现第二种需量项目积累项目团队完全样纯粹资源者均工作量团队样
      较言第种方法会更贴实际外估算方法毕竟某种估计期采更方法做出完美项目计划项目控制力气终王道需求变更估算产生问题源
      果需求确定估算变性会保持高水直项目结束需求变更项目理会更加关注变更身进度控制等方面影响忽视原始估算进行调整需
      幸许原始估算初功范围算准确增加十功没适更新项目根达初承诺估算结果讽刺然承认增加特性错改动项目终会做延误估算方法解决需求稳定造成问题
      项目控制做出相应调整更解决矛盾敏捷开发说身适应高变性环境诞生合理估算敏捷开发项目控制结合起保证项目控时间预计质量进行交付利益相关方终收获满意结果
     
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 2 积分 [ 获取积分 ]

    下载文档

    相关文档

    软件开发中的项目管理

    软件开发中的项目管理时隔两年,当我再次坐到电脑面前重新拾起这个话题时,我已经失去了往日的自信和从容。“IT”往往被圈内人戏称为“挨踢”,意思是我们常被人踢。老板踢,市场人员踢,客户踢,还有老婆...

    10年前   
    559    0

    浅论敏捷方法的软件项目管理研究

    浅论敏捷方法的软件项目管理研究  摘 要:本文首先探讨了敏捷项目管理的起源及其适应性项目框架;并论述了其在软件项目中的应用。然后对适应性项目框架的计划制定对比极限项目管理作了详细的阐述。  关...

    8年前   
    423    0

    软件项目管理在高校软件开发中的应用

    软件项目管理在高校软件开发中的应用  [摘要]不少高校在做软件研发时,尤其是自用软件,重点更集中于科技创新,而对于在软件项目小组中引入项目管理的认知度还未达成共识。以中国民航飞行学院广汉分院飞...

    11年前   
    656    0

    如何认识软件项目估算

    如何认识软件项目估算  虽然估算是一门科学,更是一门艺术,这个重要的活动不能以随意的方式来进行……因为估算是所有其他项目计划活动的基础,而项目计划又提供了通往成功的软件工程的道路图,所以,没有...

    9年前   
    491    0

    软件项目管理研究及在项目开发中的应用

    软件项目管理研究及在项目开发中的应用  配置管理则是软件项目能顺利进行的基础。一个软件项目开发过程中,会有大量的“中间产品”产生,典型的如代码、技术文档、产品文档、管理文档、数据、脚本、执行文...

    10年前   
    716    0

    软件开发成本估算

    软件开发成本估算软件开发成本估算软件开发成本估算主要指软件开发过程中所花费的工作量及相应的代价。 不同与传统的工业产品,软件的成本不包括原材料和能源的消耗,主要是人的劳动的消耗。另外,软件也没...

    11年前   
    585    0

    浅析软件项目管理在实际开发中的应用与实践

    浅析软件项目管理在实际开发中的应用与实践  摘 要:软件工程是指导计算机软件开发与维护的工程学科,它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能...

    11年前   
    372    0

    敏捷开发中对进度的把握

    敏捷开发中对进度的把握  项目经理被问到最多的问题就是,“这个项目什么时候才能完成?”  被问的时候,可能项目才定下来,仅仅知道大概的功能模块,非功能性需求还模糊不清,甚至团队成员都没到位。但...

    8年前   
    401    0

    软件开发项目管理中的人员管理

    软件开发项目管理中的人员管理  摘要  软件项目管理中的人员管理活动是一个内闭环管理的过程,本文这个活动过程,就几个方面:组织架构、梯队建设、任务调度、信息沟通和绩效考核进行了分析,介绍了一些...

    12年前   
    526    0

    在软件项目成本计算中引入估算、预算和决算体系

    在软件项目成本计算中引入估算、预算和决算体系摘要:软件项目的成本估算和成本控制一直是软件项目管理研究的一大难题,本文提出在软件项目成本估算中采用功能点方法,在软件项目成本预算中实施工作结构分解...

    11年前   
    587    0

    如何进行软件项目估算

    如何进行软件项目估算一个成功的软件项目首先要有一个好的起点,也就是一个合理的项目计划;一个好的项目计划,离不开一个准确的、可信的、客观的项目估算数据作为基础。如何提高估算的准确性,如何利用项目...

    9年前   
    385    0

    软件项目开发流程

    软件项目开发流程  软件项目其实是一个三维演绎的过程。项目由启动阶段开始到项目计划阶段,项目实施阶段,最后到项目收尾阶段,是软件项目的一维演绎。在一维的每一个阶段中,掺杂的业务有需求分析、环境...

    11年前   
    612    0

    敏捷开发中高质量Java代码开发实践

    本文将介绍在敏捷开发过程中如何通过采取一系列的步骤来保证和提高整个工程的代码质量,阐述了每一步可以利用的工具和最正确实践,从而使开发过程更加标准化,成就高质量的代码。概述Java 工程开发过程...

    2年前   
    282    0

    三种项目成本估算方法

    三种项目成本估算方法进度计划是从时间的角度对项目进行规划,而成本估算则是从费用的角度对项目进行规划。这里的费用应理解为一个抽象概念,它可以是工时、材料或人员等。  成本估算是对完成项目所需费用...

    8年前   
    589    0

    项目不同阶段的费用估算方法

    项目不同阶段的费用估算方法一、项目不同阶段的费用估算目的和作用 1.项目发起、准备阶段 满足项目建议书和可行性研究的需要作为项目论证和方案选择的依据 2.项目规划、设计阶段一 满足设计任务书和...

    12年前   
    643    0

    项目规模估算失准 软件开发成空中楼阁

    项目规模估算失准 软件开发成空中楼阁  软件项目的估算历来是比较复杂的事,因为软件本身的复杂性、历史经验的可重复性、估算工具的缺乏以及一些人为错误,都会导致软件项目的估算往往和实际情况相差甚远...

    12年前   
    538    0

    小软件项目开发的管理

    小软件项目开发的管理  一个企业的管理,大公司有大公司的方式,小公司也有小公司的方式,如果把别人的经验生搬硬套到自己身上,可能会适得其反。同样,管理一个软件项目也一样,大项目和小项目的方式不完...

    8年前   
    560    0

    软件项目估计方法及应用

    软件项目估计方法及应用  凡事预则立,不预则废。一个好的开始项目等于成功的一半,软件项目的成功关键在于一个切实可行、安排合理的项目计划。某种程度上来说,项目计划的好坏已经决定了项目的成败。而要...

    10年前   
    622    0

    软件项目范围的敏捷管理模式(上)

    软件项目范围的敏捷管理模式(上)  0引言  项目管理是一项非常有挑战性的工作,尤其是软件项目管理。做项目管理的人都知道“项目三角形”法则,也就是制约项目的三个因素———时间、成本、范围各构成...

    10年前   
    433    0

    软件项目范围的敏捷管理模式(下)

    软件项目范围的敏捷管理模式(下)  3 敏捷管理模式在软件开发项目中的应用  敏捷最早出现于1995年,相比于“分析—设计—实现”这种“重量级”(heavyweight)瀑布式软件开发方法,敏...

    12年前   
    339    0