要求积压
这个过程必须有几个重要的事情来工作和有效。首先是您必须有一个要求积压。这不需要成为复杂的东西。简单的电子表格将工作。所有更改都必须进入一个电子表格。这意味着所有变化,缺陷,错误,新想法,一切。如果您尝试在一个列表中跟踪新项目以及另一个列表中的缺陷,并且在另一个的安全性更改中,您将自己疯狂尝试管理所有不同的列表。

以下屏幕截图来自实际项目仪表板。我为我们处理了项目的变化部分而感到自豪。您可以看到有一个单独的SharePoint列表进行更改,其中一些更改是缺陷,高,以及尚未优先考虑的某些项目。您可以告诉这个项目正在进行2.2版,但我们有几个项目已被指定为2.3份。抱歉重新参加,但如果你知道我是谁,我说些什么不受欢迎的,我可能无法继续努力从政府内部解决这些问题。

行动

真正的很酷的部分是您可以单击更改控制中的任何单个项目,并打开该录制,以查看开发人员和业主之间的更改和任何继续讨论的描述。与更改控制列表有些相关的是其立即左侧的操作项列表。每当我们遇到任何可能是一个阻塞者或我们需要更多信息或帮助的区域时,我们都会创建这些动作项目并将其分配到期日,以便我们回答所需的问题所需的问题。

即使我非常强烈反对繁重的文件和可交付成果的正式流程,我认识到他们仍然是必要的。在共享文件中,您将找到所需的所有材料,以了解不同利益攸关方之间的共识。这对团队很重要,因为我们以前依赖于该文档存储库的电子邮件,并且版本控制被证明是一个问题。

改变一种商品

在商业领域,我认为跳转到敏捷发展范式可能更容易;他们没有联邦收购规定(远)。但我们这样做。我们必须致力于工作陈述(播种,PWS或SOO)中的一切。此外,我们必须选择合同类型以及我们将如何监控承包商的表现。

光谱我不能引用它,因为我认为国防收购大学删除了它,但此图像来自于它们,它有助于确定最适合您需要执行的活动的合同类型。在左侧,您拥有固定价格类型,右侧具有成本类型。我一般只使用固定的价格合约,因为我已经被时间和材料燃烧了(t&m)过去的合同。红行可能是为什么他们弃用了图像。如果你想到它,t&M对于IT开发项目来说真的是一个可怕的合同类型。人们会看看这样的图表并说,但我们对这些要求没有良好的句柄,我们不知道我们需要投资多少努力。这些问题将您推迟到频谱的成本方面。但请记住,如果我们没有购买产品并代替购买该过程,那么我才会争辩说我们对我们需要多少努力,我们非常了解。

这一切都归结为如何描述迭代内部的工作。下表包含我最近的工作陈述的开发部分。这是政府正在为期付款的东西。

发展。 构建迭代正是他们似乎是什么,它们是基于先前商定的范围的申请的全功能迭代。特定构建迭代的范围(功能,故事点,更改增强功能)在详细的项目计划或开发计划中确定了特定构建迭代。以这种方式分割功能的基本原理是,政府不会等到项目结束以测试功能并提供课程更正。这将导致两个不同的积极影响;在过程中早些时候识别出缺陷的缺陷,当它们不那么繁重,并且整体努力的赚取的价值将在项目的持续时间内而不是最后实现。

承包商将提供 迭代 审查的功能或功能。每次迭代都会有助于伴随着散步会议,其中已经向用户社区或利益相关者展示了已经交付的功能。承包商应努力纠正所有错误(缺陷)并提高可用性。在迭代演练的指定时间范围内提供的评论应包括在随后的迭代中,或者在该阶段的最终迭代中提供用于用户验收测试的产品。

在此开发阶段,利益相关者和用户将对交付功能执行测试计划。开发团队将在提供迭代之前测试功能,并向PM提供测试结果和评估报告(TRER)。 TRER将在任何测试用例中识别所有失败的测试步骤。这些问题将在演练期间确定。

承包商开发的代码和特征,并交付给机构应符合该部门的安全守则政策。政府不需要支付不遵守此要求的功能或可交付成果,而且/或政府不得支付不合规的代码,以符合安全守则要求。

用户验收测试 (uat)是政府对已交付的功能做出决定的最后一点,可以将其置于生产环境中。对迭代的所有出色评论应在为UAT提供的功能中解决。对传递UAT的二进制决定进行该决定的标准将是满足每个要求的验证方法的协议,该功能与指定的模板和工作流程一致,并且应用程序没有明显的漏洞所识别信息安全办公室。

A 演练,由承包商促进,应要求利益攸关方和/或用户。测试期将开始业务的功能测试。在成功完成功能测试后,申请将经历渗透测试。在成功完成测试后,承包商应提供详细的安装和配置指南,其中包括过程中每个步骤的屏幕拍摄,以构建和配置生产环境中的应用程序。

发展承包商将提供 更新了文档 反映已经开发的与计划的内容。每个核心文件将与释放的基线一致。更新的文档包括系统要求规范(SRS)和/或系统设计文档(SDD)。此外,如果对数据要求文件(DRD)和/或数据库规范(DB规范)进行了更改,那么开发团队将更新这些工件以反映逐步详细的要求和设计。

任务订单将确定开发范式以及如何将代码交付给该机构。它将确定需要多少迭代以及每次迭代的持续时间。

通过这种描述,我们必须努力将风险从承包商的方程中脱离。如果我是承包商,我将在没有任何其他指导下投标这项工作,我会出价真的很高,因为你可以融入很多努力。我们可以在我们订购服务的情况下解决此问题。下表是我对此作品的订单看起来的样子。

先生1开发CHP 3所以在这个发展项目如果每次迭代如果大约一个月,我正在寻找八周的业务分析,九个半星期的发展,测试10周的测试和一周的数据库开发。如果您是承包商,请考虑竞标这项工作,然后您看看它,并考虑两个业务分析师(也称为用户体验设计师),两个和半开发商,两个和半测试人员,以及一个人的一部分专注于开发数据库。这是七个专门的人,这是敏捷开发团队的最佳数字。

敏捷开发团队的最佳号码为7,+/- 2。所以5-9人的任何地方9。当我开发这种特定模型时,它是为了重新设计已经生产的应用程序。它变老了,我们需要刷新它。我估计这项工作比开发一个全新能力更容易,这就是为什么我在开发谱上拍摄一点点较低。上表是我们给予要约人填写的表格。他们所要做的就是为他们的每个学科分配人民的费率。我的电子表格计算了每个劳动类别的成本以及12个开发迭代的总成本。

十二次迭代有点有趣。我实际上不知道我们需要多少迭代。作为PM,您必须考虑业务人员在开发期间希望看到应用程序有多少次,以便在要释放的产品中有信心。这就是我喜欢说的是我们正在开发过程中做的事情。我说我们在信仰业务中。我们正在转换那些不相信新申请的人们进入信徒和福音传教士,所以当我们释放它时,他们会在世界上出去并告诉人们它有多伟大。在这种情况下,我基本上说我们需要一年(每月1个迭代,总共12个)。

MR1开发2 CHP 3但回到商品化变化。此表与我提供的模型非常相似。不同之处在于我将其填充了每个学科的费率。为了生成我看待GSA的费率,为几家公司做好工作并找到了适合我所拥有的劳动类别的公司。您可能需要阅读这些详细描述。要意识到的一个问题是,这些附表70的率是最大速率。公司通常折扣超出这些价格,所以,如果您可以比较实际发票率,您将更好地服务。

然后我撰写了这些速率并将其用作模型的速率。这支持我独立的政府成本估算(IGCE)。所以我知道每次迭代都会花费大约114,669.60美元。我在这里做过的是批评性重要的。现在我知道迭代应该是多少。我的目标是12.当我迭代10号时,我可能对12次迭代是正确的数字有良好的感觉。如果不是,我需要超过12个,那么我们已经让我们很容易添加额外的,因为我们已经有效地谈判了迭代的价格。假设您不尝试并行运行迭代,您应该能够在另一个114,000美元上发送另一个迭代,或者许多您需要的迭代。

MR 1 DEV 3 CHP 3

努力数量也很重要。我通常对开发人员努力的程度基准。这就是变化控制和迭代在一起的地方。您可以在此处看到一个月长的迭代我们已经分配了380小时的开发人员努力。我鼓励每个人都在更改日志上识别新项目。测试人员,业务分析师,政府使命人,安全团队,CIO队,每个人都应该推动变更,缺陷,新物品,以及其他一切到更改日志。请记住,当你开始这样做时,你会收集很多变化,特别是在开始。这一大量的变化代表了人们必须改善申请的浮雕要求。此外,这是一件好事。我们的目标是从未实际开发和交付每一次变化。有些人是愚蠢的,他们推荐愚蠢的变化,不应实施愚蠢的变化。但人们希望有一个出口推荐他们对其感受的变化。此外,我们希望所有时间都有开发资源在最高优先事项上工作。如果更改列表很小,那么我们就不会知道他们是否正在研究最重要的事情,因为他们正在努力。

当更改添加到日志时,开发人员和政府PM(或COR)必须审查更改,并考虑制定变革所必需的开发努力。因此,如果有人建议我们将按钮的标签从“ABC”更改为“XYZ”,我们审查了请求,确保很清楚,然后我们指派我们认为发展的努力程度。在这种情况下,一小时。由于单一请求中的唯一更改,我可能不会为单个按钮进行更改,因为它非常小。因此,我可能会捆绑那种改变的改变,其他小型变化,以获得更强大的努力。您可能希望开发有助于管理该过程的指标。例如,我喜欢4/40规则,指出我们不跟踪努力不到四小时的更改,如果您有超过40小时(工作周)的更改,则需要将其分解为可以单独跟踪和分配的更小的更改。如果我们在某事物上脱轨,我不想去一个多星期。

我的诀窍是,每个月在地址会议中(或任何时间长度为您的冲刺时,例如,两周)作为一个小组一起查看此更改日志并优先考虑下一次迭代或冲刺的更改。我可能有300个更改日志。其中,250名具有分配的开发者水平。如果下周发布的释放是第2.2段,那么我们正在谈谈谈论哪些物品将在第2.3发行版本,这应该从现在开始生产大约五个星期。因此,在那些250中,我们正在编程其中一些版本2.3。有多少进入该集合取决于两件事,优先级和努力程度。请记住,我们为每个版本分配了380小时。当我们设置我们的优先事项时,我们可能会优先考虑累积到450小时或更长时间或更长时间的更改。这是政府必须做出艰难的电话的地方。这一过程迫使人们实际坐下,并考虑改变的重要性与其他人推荐的变化。您必须推迟更改被视为后续版本。我们通常会在这些变化上拍打“延迟”标记,以便我们在下个月进行第一次编程2.4的更改时被认为是第一次。但是,一旦您将变化的努力降至380或更少小时,锁定它就会锁定,这成为您将在2.3版中进行测试的功能列表。

当您刚刚开始此过程时,可能更容易开始小而构建势头。当我尝试这些概念时,我开始了120个小时。这是大约三周的开发人员努力,这基本上是一个人。这仍然可以工作,但请记住,发展团队的规模不能低于五个人。因此,如果您的目标是低,您需要确保您有一些真正的善良的人,可以解决自己的东西。当你有两个或更多的开发人员时,他们可以互相反弹并获得共同发展的所有好处。

阅读更多信息