优雅的骆驼的敏捷软件开发
优雅的骆驼的敏捷软件开发

优雅的骆驼的敏捷软件开发

2015年2月17日发布 in 发展
通过持续的优化增强用户体验
通过持续的优化增强用户体验
2015年1月26日
使magento代码更加便携
使您的Magento代码更加便携
2015年7月28日

什么是敏捷?

敏捷已成为软件开发行业内的一个非常常见的术语。那么敏捷是什么?一些敏捷软件开发的概念已经存在于软件开发的早期,而是作为一个凝聚力的概念,通过创建一个非常短的文档来定义敏捷软件开发,称为下面包含的敏捷宣言。

“我们正在揭示通过这样做和帮助他人开发软件的更好方式。通过这项工作,我们来到了价值:

个人和对流程和工具的互动

全面文件的工作软件

客户合作交易谈判

响应在计划之后改变

也就是说,虽然右侧的物品中有值,但我们将稍微重视左侧的项目。

肯特贝克 迈克鹅堤 Arie Van Bennekum. alistair cockburn. 沃德尼尼岛 马丁福勒 詹姆斯甘宁 吉姆高史密斯安德鲁亨特 罗恩·杰弗里斯 Jon Kern. 布莱恩马里克 罗伯特C.马丁 史蒂夫梅洛斯 肯·施瓦尔 杰夫·萨瑟兰 戴夫托马斯

©2001,上面的作者 此声明可以以任何形式自由复制, 但只有完整通过这条通知。”

敏捷宣言促进个人和互动,工作软件,客户合作和回应变革的重要性。这些敏捷软件开发的原则定义了使用敏捷方法的目标和意图,但它们非常非特定于如何实现这些目标。有许多方法可以提出不同的个人,团体和公司来记录一套规则的具体实施,以实现敏捷宣言的目标。一些最突出的实现可能会识别在包括Scrum,Kanban,极端编程,自适应软件开发等内容之前听到敏捷的任何人。还有许多敏捷的概念,交叉多次实现敏捷软件开发,包括积压,冲刺,跨职能团队,迭代和增量开发,对编程,规划扑克,用户故事,回顾,速度跟踪等等。当你听到某人是的时候,要记住的重要事项“using agile,”是,他们的目标应该以个人和互动,工作软件,客户协作和回应改变为中心。

优雅的骆驼’s Implementation

由于围绕敏捷软件开发的各种实践,公司意味着当他们说他们使用敏捷方法构建软件时,有很多种类和不一致。打击混乱并帮助回答问题“Classy Llama在谈论敏捷时意味着什么?”,我要记录我们实现敏捷软件开发的许多最重要的作品。我不会讨论我们在Classy Llama的每一件事,以实现敏捷,也不会讨论这个博客帖子始终匹配每个项目所做的事情,但我的目标是记录我们在优先考虑的一些我们在优先考虑的事情并强调何时做软件开发。

有关的: 了解更多关于我们的信息 电子商务网站开发 service.

 

正如我们努力实施敏捷作为公司,我们发现许多传统的敏捷培训,书籍和教练都是为建造产品的人而不是为广泛客户提供非常有针对性的定制开发的人。这导致我们尽可能地实施敏捷件,同时非常开放,可能是一个特定品牌的敏捷开发可能不适用于我们的客户。甚至可以公平地说,我们的敏捷是一个敏捷的过程。首先具有真正具有挑战性的事情之一是,我们没有一套全面的指导方针向我们交给我们,因为我们从瀑布转为敏捷项目管理。我们只是开始追随一些敏捷的流程,随着人们掌握了那些,我们介绍了几个,还有几个,还有几个。这有时它导致了抵抗,这些人喜欢在做任何事情之前让一切都充分记录和清楚。尽管如此,我很自豪地说,我们对敏捷的过渡非常顺利。

下面,我详细介绍了与项目管理和开发团队合作的日常生活中最密切相关的敏捷实践并将项目前进。我可能会在未来的博客文章详细介绍我们用于跟踪项目的一些方法’S进度与计划以及我们如何从项目到项目中迭代地学习和建立我们的过程。

积压和冲刺

可能是我们使用的最多客户可见的敏捷实践是积压和冲刺。 Backlog是优先功能的功能列表。它应该包含在任何给定时间完成项目所需的所有功能。与这些功能相关的估计和细节有助于我们对项目的优先和规划进行对话。 当项目向前移动时,此积压收益定义。最初,此积压开始于直接从向客户端发送到客户端的提案的项目列表,该项目与每个网站构建需求的基本任务列表合并,以便成功启动。这通常最终有多达70%或更多的积压在项目过程中的内容。重要的是要理解,这个积压不是一个固定的列表。随着任务获得更多定义(将一个任务拆分为多个)而变化,因为发现了新任务,因为任务完成,并且不需要任务。使用此积压的目标是具有中央处,以记录项目将包含的所有功能。我们使用积压以优先权对事物进行排序,并有一个中央地,可以从项目的预算中跟踪项目中剩余的估计时间。

Sprint与积压不可接近地联系起来。没有冲刺,积压只会在大小和定义中增长。这是瀑布与敏捷方法之间的关键差异之一来到表面。使用Agile,您可以使用类似于积压的内容,但您将在开始任何开发之前将其构建到所考虑的内容。当我们介绍Sprints时,积压正在增长,更改,求助于我们完成其中包含的物品。 Sprint是一段时间的一定时间的实例,指定用于完成积压的下一个最重要的功能。 这意味着如果骆驼和给定的客户同意两周的冲刺将最适合向前移动一个项目,在第一个冲刺中,我们将花两周的时间来完成我们拥有的项目的最重要项目足够的信息来工作。这些项目将从被视为积压的顶部拉出,并且在Sprint计划会议期间将进入Sprint,然后进行冲刺。因此,如果我们将在前两周的冲刺期间做十二天的发展(所有开发人员之间),我们将尽可能多地将积压器顶部的物品放入冲刺,因为我们估计将适合12个开发天。

用户故事

我们已经谈过了积压和冲刺,两者都由任务组成。任务是单个项目,可以独立地识别和估计,其对应于特征,错误修复或其他工作项。 用户故事是我们用来清楚地定义任务的一个工具’s goal and purpose. 用户故事被定义为具有三个主要组件的句子。用户故事的组件,按顺序是谁,什么,以及为什么。将这三个组件放入模板中以创建我们所知道的用户存储。“作为[n] ____________, 我想要 ____________ 以便 ____________.”例如,假设商人想要捕获客户的情况’员工识别号码允许验证员工’S作为公司采购代表的地位。一个描述这种情况的潜在用户故事会喜欢这样的东西:“As a customer, 我想要 能够轻松验证网站上的身份 以便 在我购买网站上的物品之前,我不必打电话或电子邮件识别。”在看到以前的用户故事后,您可能会认为您期待它从完全不同的角度来谈论。可以从不同的角度来描述相同的情况。代表同样情况的另一个用户故事可能是:“作为一个 网站管理员, 我想要 能够轻松收集就业验证信息 以便 我可以快速核实就业状态,而无需采取额外的不必要的步骤。”有趣的是,上述两个用户故事都讲述了一个相似的故事,但它们之间存在一个关键差异。在第一个用户故事中,暗示客户可能是必须在购物前拨打或写作验证的人。但是,第二个故事表明验证的负担通常会落在网站管理员身上。有些情况下,两个用户故事可以在准确地描述该特征的目的方面有用。至少有一个其他不同的用户故事可以讲述这项任务,这些任务将大大改变任务周围的上下文。“作为一个 经理, 我想要 能够轻松地查看有关允许在我公司购买物品的员工的信息’s behalf, 以便 我可以适当地跟踪和管理员工活动。 ”在这个用户故事中,上下文完全不同。这不再是用于简单地通过信息在客户和网站管理员之间来回传递信息的字段。现在有一个公司管理员可能在网站上直接参与验证过程。该用户故事可能与更大的用户故事有关,谈论正在开发的更大的功能,如:“作为一个 经理, 我想要 有一个门户网站来跟踪我的员工’使用本网站’S采购功能 以便 我可以批准,跟踪和管理他们的活动。”用户故事是一个不是我们所有客户端使用的工具,但对于客户能够将上下文传达给我们或者我们能够展示对我们客户的任务的上下文来展示上下文来非常有帮助。

结论

敏捷是一个巨大的主题,而不是我可以在一个博客文章中覆盖的巨大主题。我谈到了敏捷在很大程度上是软件开发的心态如何,在使用这个术语时,每个人都使用敏捷意味着略微或略有不同的东西,以及我们如何使用Backlogs,Sprints和用户故事来组织和与客户组织和通信最多他们项目的重要事项是。我们选择使用敏捷的最重要原因是(1)以增加可见性和(2),同时降低客户和公司的风险。我们发现敏捷帮助我们通过消除项目中不必要的物品来帮助我们完成此操作,并确保首先完成最重要的项目。通过为客户提供指导项目方向的工具,以便在项目的过程中澄清,我们已经能够建立更成功的项目,并按时更换预算和更持续可靠地。

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

本网站使用AkisMet减少垃圾邮件。 了解如何处理评论数据.

最近的帖子查看全部
3月1日,2021年

Covid的巨大加速要求再次欺诈和消费者虐待警惕

2月3日,2021年

社交媒体在科迪德自然时期的增长’s One

1月5日,2021年

替代社交媒体

您是否注意到您的Facebook和Instagram内容似乎越来越少,并且每次通过都会越来越少?用于达到的帖子 […]