标题:软件开发生命周期(SDLC) - 概念
敏捷文化

标题:软件开发生命周期(SDLC) – 概念

在不断演进的技术世界中,软件已成为我们日常生活的重要组成部分。从我们智能手机上的应用程序到驱动复杂机器的软件,我们与之互动的一切都是通过一种系统化方法构建的,这种方法被称为软件开发生命周期(SDLC)。本文的目标是揭示SDLC,分解其关键概念,并解释为什么它在软件开发领域至关重要。 理解SDLC SDLC是一种由软件开发人员使用的结构化和系统性过程,用于高效地设计、开发、测试和维护软件。它包括不同的阶段,每个阶段都有其自己的一系列活动、目标和可交付成果。SDLC的主要目的是确保以高质量、按计划和预算内的方式开发软件,同时满足用户的特定需求和要求。 SDLC的各个阶段 规划阶段:此初始阶段涉及定义项目范围、设定目标以及进行可行性研究,以确定项目是否可行。在此阶段,项目相关方描述了软件的目的、需求和限制。 分析阶段:在此阶段,开发团队与相关方密切合作,详细收集和分析需求。目标是深入了解最终用户的需求,定义功能和非功能需求,并创建详细的项目计划。 设计阶段:设计涉及根据分析阶段收集的需求制定软件的计划。这包括定义软件的体系结构、数据库结构和用户界面。设计阶段可分为高级设计(HLD)和低级设计(LLD)。 实施阶段:一旦设计获得批准,开发阶段就开始了。开发人员根据设计规格编写代码。此阶段还包括单元测试,以确保每个组件按预期工作。 测试阶段:在测试阶段,软件经过严格的测试,以识别和纠正任何缺陷,确保最终产品没有错误。测试范围从单元测试到系统测试和用户验收测试(UAT)。 部署阶段:经过成功的测试和客户批准后,软件部署到实际环境中,使其对最终用户可用。 维护阶段:最后一个阶段致力于在软件的整个生命周期内持续维护。这包括修复报告的问题、根据变化的需求进行更新和改进功能。 SDLC的重要性 质量保证:SDLC确保软件在多个阶段包括测试和验证,降低了最终产品出现错误或缺陷的可能性,从而保证质量。 成本和时间管理:适当的计划和系统性的开发有助于控制项目成本并确保项目按时交付。 有效沟通:SDLC促进了开发团队和相关方之间的清晰沟通,确保所有人都理解软件的目的和功能。 定制性:遵循SDLC,开发人员可以定制软件以满足特定需求,使其更高效且易于使用。 风险管理:SDLC的结构化方法有助于在开发的早期阶段识别和减轻潜在风险,降低未来问题的可能性。 结论 软件开发生命周期是软件开发的支柱,提供了一个结构化框架,用于创建高质量、高效和易于使用的软件。理解并实施SDLC对于寻求创建不仅满足,还超出用户期望的软件的开发人员和组织至关重要。随着技术不断发展,SDLC仍然是确保软件在不断变化的世界中保持引领地位的宝贵工具。

追溯:心情天气
敏捷文化

追溯 #9:心情天气

心情天气追溯是我非常喜欢的一种追溯方法;它为追溯注入了一些新鲜感。其目的是专注于团队的情感状态,同时不要忘记寻找真正的改进点。 请随时查看我们专门的追溯页面,了解更多追溯:我们的追溯。 心情天气追溯所需材料 进行心情天气追溯时,你需要准备很少的材料。以下是主持人进行这种追溯所需的材料: 方形便签 钢笔 黑板(或白板) 总计所需时间为40分钟。 心情天气追溯的流程 以下是执行这个追溯的不同步骤。 步骤1:Scrum Master会要求随机选择的一名参与者在一张纸上绘制整个欧洲的地图。如果某人实在无法做到,可以寻求同事的帮助。 持续时间:5分钟 步骤2:接下来,Scrum Master会要求所有参与者在一张便签上绘制定义他们在过去两周内情感的天气。 为了引导他们,他将提供一些建议: 阳光明媚代表了近乎理想的两周,进行得非常出色。 带闪电、雪和雨的云代表了他们在项目上可能度过的最糟糕的两周。 参与者可以使用中间状态来表示过去两周的情感。 持续时间:5分钟 步骤3:然后,Scrum Master会要求参与者根据他的指示逐个将他们的便签放在黑板上。 他会提供每个参与者都要放置便签的欧洲首都(如果可能,选择最困难的)。这通常会引发一些笑声,因为很少有人能够记住所有的首都。 难以确定位置的首都的示例: 卢布尔雅那 瓦杜兹 地拉那 尼科西亚 塔林 普里什蒂纳 里加 斯科普里 布拉迪斯拉发 放置便签时,参与者必须解释他们的情感状态,并解释为什么选择了这种天气。 持续时间:15分钟 […]

SAFe 6核心价值观
敏捷文化

SAFe 6核心价值观

SAFe(Scaled Agile Framework)是一种大规模的敏捷框架,帮助组织以敏捷的方式开发和交付复杂的产品和服务。SAFe的核心价值观是支持框架并指导其实施的基本原则。 一些敏捷社区对这个复杂而完备的框架是否真正实施这些价值观提出了质疑。 SAFe 6的四个核心价值观如下: 对齐 组织必须与愿景、使命、战略目标、流程和工具保持一致。这确保了每个人都朝着相同的方向工作,努力协调工作以确保高效。 对齐应该使整个组织以相同的方式理解客户,使用共同的语言并确保相互理解。 透明度 信息必须在所有利益相关方之间开放和透明地共享。这创造了信任和协作的氛围,使决策更明智、问题更快地解决。 容许错误的权利也必须成为一种建立和接受的文化;这使人们敢于“说”,并能够进行必要的更正,以使错误成为学习经验而不是未来的风险。 尊重个人 人是创新的动力。组织必须创造一个价值、尊重和鼓励人们冒险的环境。 通过指导和辅导推动个人的进步非常重要。事实上,项目的每个参与者都应该能够在没有风险的情况下表达自己的意见。 这个价值还强调了遵循原则:“您的客户是消费您工作的人”。 持续改进 组织必须不断努力改进其流程和产品。这使它们能够适应变化并满足客户的需求。 对于任何敏捷倡议的成功,对齐至关重要。当团队和个人在组织的目标和优先事项上达成一致时,它们可以更有效地协作并获得更快的结果。 透明度是信任和协作的关键要素。当信息及时公开共享时,团队可以做出更好的决策并更快地解决问题。 尊重个人是积极企业文化的关键元素。当人们感到受到重视和尊重时,他们更有可能积极参与和高效工作。 持续改进是学习和适应的过程。组织必须不断努力改进其流程和产品,以保持竞争力并满足客户需求。 SAFe的核心价值观对于任何大规模的敏捷倡议的成功至关重要。通过实施这些价值观,组织可以创造一个有利于创新、协作和持续改进的环境。 以下是一些SAFe核心价值观如何实施的示例: 对齐:组织可以创建战略文件,定义企业的目标和优先事项。他们还可以定期举行会议,讨论进展情况,确保每个人都在同一频道上。 透明度:组织可以使用协作工具实时共享信息。他们还可以定期组织活动,让人们互相见面并相互学习。 尊重个人:组织可以创建一个重视多样性和包容性的企业文化。他们还可以为员工提供发展和成长的机会。 持续改进:组织可以建立反馈过程,收集员工和客户的反馈。他们还可以投资于研发,开发新技术和新产品。 通过实施SAFe的核心价值观,组织可以创造一个有利于创新、协作和持续改进的环境。

敏捷心墙
敏捷文化

敏捷心墙

敏捷心墙是一个有用的小工具,用于了解研讨会或培训中参与者的情绪变化。这个工具在敏捷领域相对知名。 什么是敏捷心墙? 心墙是一幅大图片(可以是数字的),放在研讨会或培训的参与者面前。每个参与者都有一个小贴纸,可以放在他们选择的人物身上。 这是相关的图片: 参与者可以随时移动他们的小贴纸,如果他们在活动期间的情绪发生变化。一天中情绪发生变化并不罕见。 在关键时刻,比如活动开始、结束或休息时,检查每个人的情绪状态可能是很有趣的。这也可以作为一个有用的检查点。 我可以提供的最后建议是,这个工具不应该花费太多时间;只需用它来快速获取参与者的反馈。不需要用太多时间,否则可能会被受邀请的参与者视为浪费时间。

系统演示
敏捷文化

SAFe系统演示:重要概观

什么是SAFe系统演示?它是否是多个团队的审查?本文深入探讨了SAFe中这个关键和重要的事件。 什么是SAFe系统演示? SAFe系统演示是SAFe中的一个关键事件,旨在展示在敏捷发布列车(ART)的最新迭代期间实现的增量中集成的所有新功能。其目标是从利益相关者那里收集宝贵的反馈,以改进产品并指导未来的发展。在此事件中,展示所有成就,作为程序增量(PI)中进展的客观衡量标准。 这些反馈会引导出以下问题: 我们是否走在正确的道路上,还是需要改变方向? 我们可以在整个提出的系统中做出什么改进? 此事件需要前期工作,以确保其顺利进行。有效的事件管理将有助于预防未来的缺席。如果利益相关者认为他们正在浪费时间,那么他们可能不太愿意定期参加。 谁参与此事件? SAFe中的系统演示涉及: ART中的所有利益相关者 ART的产品所有者和产品经理 一个或多个系统团队成员 系统架构师/工程师、运营和一些开发人员 值得注意的是,在SAFe中,利益相关者被视为包括: 业务所有者 赞助商 其他敏捷团队(潜在客户) 管理层(与业务相关) 客户和/或其代表 此事件应何时举行? 理想情况下,系统演示应在冲刺结束后的第二天举行。不同迭代结束与此事件之间的时间间隔过长可能会导致反馈处理延迟。此事件应在每次迭代结束时举行。 通常,为此事件分配1到2小时,具体时间取决于您的ART的大小。但建议力争在一小时内完成此事件。 以下是SAFe提出的议程: 回顾业务背景和PI目标(5至10分钟之间)。 在演示之前简要描述每个新功能(5分钟)。 使用端到端方案演示每个新功能(20至30分钟之间)。 确定当前的风险和障碍。 进行讨论,以获取反馈。 总结进展、反馈和需要采取的行动。 作为提醒,此事件是“检查与适应”(Inspect And Adapt,I&A)过程的一部分,我们将很快在本博客上进行讨论。 系统演示是否取代了冲刺审查? 不,迭代审查(SAFe用于冲刺审查的术语)在每个团队内在迭代结束时进行,与标准的冲刺审查完全一样。系统演示是系统作为一个整体的展示,可能会产生非常不同的反馈。每个团队内的冲刺审查与团队的工作相比非常孤立。 这就是系统演示在冲刺结束后进行的原因。Scrum团队专注于他们的冲刺结束仪式,需要所有团队成员的参与。

毛线球
敏捷文化

毛线球-破冰活动

今天,我将向大家介绍一种小而有趣的破冰活动,它通常在敏捷领域中使用:毛线球。这个活动提供了一个愉快的时刻,让参与者以富有趣味的方式向团队介绍自己。 探索我们完整的破冰活动和激励活动系列! 毛线球 这个破冰活动的目标是鼓励参与者介绍自己,并与团队中的其他人建立可能的联系。它快速而高效,非常适合会议和敏捷培训。 毛线球的准备 参与者 要成功进行这个破冰活动,至少需要10名参与者。 材料 以下是为准备这个破冰活动所需的材料: 毛线球 时长:10分钟 步骤1:毛线球 主持人会向参与者解释规则,并将毛线球交给其中一位参与者。如果参与者众多,甚至可以提供第二个毛线球。 第一个参与者会简要介绍自己,说一些像:“我是[姓名],我从事[职位]工作。” 在介绍完自己后,参与者会将毛线球传给另一个他们认识的参与者,同时握住一端。如果他们不认识任何人,应该提到并然后将毛线球抛给自己选择的人。 步骤2:毛线球 第二个参与者会介绍自己,然后将毛线球传给另一个尚未接收毛线球的参与者,同时握住现在在他们手中的毛线的部分。 破冰活动以这种方式继续,直到所有参与者都收到毛线球。那时,所有参与者都会举起双臂,展示他们创建的复杂网络。 结论:毛线球 总之,这个破冰活动非常有趣,可以让参与者快速互相介绍。值得注意的是,主持人可以鼓励参与者利用这个活动的机会,在会议结束后(例如会议、培训等),与那些引起他们兴趣的人建立联系。

敏捷中的三位朋友
敏捷文化

敏捷中的三位朋友

今天,我们将探讨一种实践,我认为非常有趣,但似乎在当今不太常见:三位朋友。我们将借此文章来理解这种实践的含义。 敏捷中的三位朋友 三位朋友是一种仪式,可以添加到Scrum团队中,用于编写坚固的功能测试。这些测试是由产品负责人(或业务分析师/代理PO)、开发人员和测试人员编写的。 这种协作方式可以确保编写完整的测试,确保覆盖与每个关联的用户故事的所有期望。 以下是每个参与者为这种仪式带来的优势: 产品负责人: 通过用户故事提出用户需求以及相关规则。 开发人员: 指示将受需求影响的所有技术方面,这有助于指导需要编写的测试。还可以参与定义可能在某些情况下难以确定的测试数据。 测试人员: 准备数据集(JDD)并提供符合功能测试规则的场景(例如,不将测试与界面概念关联)。 有了如此强大的团队,我们的三位朋友将提供全面而高质量的测试,发挥了两个重要作用: 指导开发人员开发用户故事。 通过非回归测试提供无可争议的质量。 在敏捷团队中使用三位朋友来创建Gherkin语言并不罕见,这是最常用于BDD(行为驱动开发)的语言。简而言之,对于BDD,我们在开发之前编写测试,以指导开发人员的工作。 一些团队甚至利用此练习进行验收测试驱动开发(ATDD),这是一种软件工程技术,其中在开发功能之前技术上编写测试。 应该采用什么格式? 没有适用于实施三位朋友的理想格式。以下是一些我可以建议的格式;这将取决于您的情境是否合适。 在产品待办事项细化之前的仪式 一些团队在产品待办事项细化的前一天进行三位朋友的仪式,以便在团队精化和估算之前完成用户故事。由于产品待办事项细化通常用于验证用户故事是否“就绪”(符合“就绪定义”),最好事先完成测试。 在产品待办事项细化期间的工作 实际上,有些人会利用产品待办事项细化来进行这项工作。然而,三位朋友需要相当多的时间,有些人可能会认为整个开发团队的参与可能会浪费时间。 但是,其他人可能认为这种团队协作将使整个团队对用户故事有完美的理解。 最终,你自己来判断;最好的方法是尝试并得出结论。 结论:敏捷中的三位朋友 三位朋友是一种在当今较不常见但确实值得了解的概念。你是否认为这种额外仪式能使你的用户故事更加完整?

BDD vs TDD
敏捷文化

BDD vs TDD:了解区别

许多人询问TDD和BDD之间的区别(BDD vs TDD)。我将尝试回答这个问题,同时尽量简化这两个概念。 TDD(测试驱动开发) TDD,即测试驱动开发,是一种软件开发技术,它要求在编写实际代码之前为函数(在代码级别)编写单元测试。尽管这种方法显著降低了未来出现回归问题的可能性,但它的主要目的是指导开发人员更好地编写应用程序代码。了解预期的最终结果有助于开发人员从一开始就朝着正确的方向进行开发。 尽管这个概念对于初次接触的开发人员可能会感到困惑,但它已经成为标准的开发实践,从而实现了卓越的质量。 TDD循环 TDD遵循一个工作循环,以确保单元测试的最佳质量: 编写单元测试。 运行测试并检查是否失败(表示类尚未编写)。 编写最少的代码以使测试通过。 重新运行测试并检查是否正常工作。 完成整个类的代码。 验证测试仍然通过(没有回归)。 如果您想了解更多关于这个概念,请务必阅读我们专门的文章。 BDD(行为驱动开发) BDD,即行为驱动开发,是由Dan North于2003年创建的一种敏捷实践。其目标是使用每个人都能理解的自然语言创建功能测试。 从技术角度来看,BDD弥补了单独测试每个代码片段不能保证验证完整行为的不足。仅仅因为函数单独工作并不意味着实际的整体行为与预期一致。 然而,BDD的基本理念主要是指导开发人员根据预期的行为进行开发。更重要的是,这种BDD框架鼓励技术团队和功能团队之间的紧密联系,类似于敏捷方法所期望的合作。没有比利用集体智慧将产品推向成熟更好的方法了。开发人员根据用户期望的行为进行指导。 测试是使用一种称为Gherkin的自然语言编写的。以下是一个简单的示例,其中加粗部分表示编写这些测试所必需的基本结构: 假设我是产品页面上的客户当我单击产品ID为“255”的“添加到购物车”时而且库存为“3”那么产品将添加到购物车中。 这句话将自动由在线代码应用程序转换,并开发人员只需填写代码函数中的行为以编写测试。 一旦测试正确编写,开发人员将编写生成的函数。 如果您想了解更多关于其应用的信息,请随时查看我们有关该主题的文章。 BDD vs TDD TDD将引导开发,逐个函数进行。对于与开发领域无关的人来说,重要的是要理解开发中的函数表示一个小的单元行为,而不是一个场景。即使是最简单的场景也是函数序列。 BDD允许测试为要开发的用户故事覆盖所有预期的行为。通常,目标是通过BDD覆盖所有可能的测试案例。 这里有一个简化的图示: 结论:BDD vs TDD 希望本文回答了您的问题。如果您对BDD […]

产品愿景板
敏捷文化

产品愿景板

产品愿景板是从商业模型画布演化而来的画布,用于快速定义产品的简单愿景。我真的很喜欢这个画布,它简单易用,可以让人清晰地看到产品的愿景。 产品愿景板 这是产品愿景板画布。您可以打印它,或者在一大张纸上画出来,然后将它贴在墙上,以便进行工作。 与产品愿景框不同(我们稍后将介绍这个实践),我们可以轻松地拥有数字版本,以便分享产品的愿景。 产品愿景板的目标用户群栏 这一栏是填写产品愿景板的第一个部分。我们必须确定将使用产品或我们将创建的服务的每种用户类型。您可以将这些用户看作是人物角色。 在电子商务网站上,我们可以将“顾客”或“物流师”定义为应用程序的角色。即使一名40岁的女性和一名15岁的少年的购买类型不同,他们都将被视为相同的“顾客”角色。为什么呢?因为他们将经历相同的用户旅程,而正是这个旅程对于我们产品的开发至关重要。 在市场营销中,我们将拥有两个不同的角色,因为在40岁的女性和15岁的年轻男性之间,市场营销方法将有所不同。 在这个栏中,我们只会列出人物角色的清单,不包含任何详细信息。例如:顾客、物流师、管理员、商品推销员…… 产品愿景板的需求栏 在编写人物角色后,我们将填写产品愿景板需求栏。尽管可能有许多需求,但我们将努力写下应用程序的主要关键用户的5至7个主要需求。 重要的是要明白,目标是简洁明了,用简洁的句子写下这些需求。 例如,对于电子商务网站: 购买产品 拥有高质量的售后服务 24小时内收到产品 安全付款 产品愿景板的产品栏 在编写需求后,我们将写下产品愿景板上满足先前编写的需求的产品的5至7个主要功能。与需求一样,我们将简洁明了地写下这些功能。 例如,对于电子商务网站: 产品详情 高质量的购物篮 订单简便管理 安全支付 产品愿景板的商业目标栏 商业目标栏是最难写的部分,因为您将不得不确定将跟踪的5至7个指标,以确保我们的产品朝着正确的方向发展。 为此,需要确定可衡量的关键绩效指标 (KPIs),并且不应强加一个抽象的读数来跟踪发展。 例如,对于电子商务网站: 2018年收入为30,000欧元 访客年增长率为20% 产品愿景板的愿景栏 当四个栏都填写完毕时,您需要在产品愿景板的愿景部分中用一句完整的句子来概括愿景。请注意,这个句子不能包含所有信息,也不需要写五行的扩展句子。 这是一个极其困难的练习,但您必须在一句话中概括您的产品。目标是帮助您通过这个句子有能力进行有关您的产品的电梯演讲。 产品愿景板的结论 […]

目标运营模型
敏捷文化

定义目标运营模型(TOM)

目标运营模型(TOM)是商业管理领域的一个关键元素。它代表了组织计划如何实现其战略和运营目标的结构化和详细表示。TOM定义了业务在各个层面应如何运作,以实现最大效率和成功实施总体战略。 目标运营模型的主要组成部分: 组织结构: TOM概述了组织结构,包括业务单位、部门、团队和责任。它明确了业务的不同部分如何互动以实现目标。 运营流程: 它确定了支持业务活动所需的关键过程、程序和工作流程。通常,这些过程会进行详细描述,以便更好地理解。 技术和系统: TOM规定了必须支持运营的系统、技术和工具。这包括软件、硬件、平台和应用程序。 人力资源管理: 它涵盖了人力资源方面,包括人才管理、人员配备、培训和发展以及薪酬结构。 数据和信息: TOM表明了数据在组织内如何进行收集、管理、存储、共享和分析。它还确定了用于衡量成功的关键绩效指标(KPI)。 治理和控制: TOM定义了需要确保合规性和有效业务管理的治理、政策、标准和控制。 目标运营模型的作用: 战略对齐: TOM确保所有组织活动都与战略目标保持一致。这确保每一项行动都有助于实现公司的总体愿景。 提高效率: 通过优化流程和资源,TOM旨在提高运营效率。这可以带来成本节约和更好的资源利用。 变革管理: 在实施新的TOM时,组织可能面临与变革相关的挑战。TOM提供了一份路线图,以促进过渡,帮助员工了解新的运营方式。 沟通: TOM作为内部沟通工具,用于解释业务将来如何运作。它确保所有组织成员都了解他们在实现战略方面的角色。 测量和评估: TOM中定义的KPI使得能够衡量朝着目标的进展。可以根据需要进行调整,以确保组织保持在正轨上。 总之,目标运营模型是希望将其运营与战略对齐并提高效率的组织的关键工具。它提供了业务如何实现其目标的明确愿景,并提供了实施的路线图。通过制定并遵循健全的TOM,企业可以更好地管理变革,提高绩效,并在市场上保持竞争力。