敏捷软件开发-敏捷开发与敏捷测试
敏捷特性
在敏捷方法论下开发的产品具有以下几个重要特征。
敏捷开发版本和固定长度迭代
敏捷软件开发方法基于两个主要交付单元:发布和迭代。单个版本包含多个迭代阶段。每次迭代都包含其微型项目。敏捷开发的不同功能(如缺陷,增强请求和其他工作项)被组织,估算和确定优先级,然后分配给发布。
敏捷开发提供了可运行的,经过测试的软件
敏捷开发团队的主要措施是交付工作,进度和经过测试的功能软件。工作功能是实现和改善客户反馈的基础。它还可以用作团队协作和整体项目可见性。他们提供了这样的证据,从而使系统和项目都步入正轨。
在产品开发的每个步骤中敏捷软件开发,团队都会不断努力以组装出最佳的业务解决方案。使用来自用户,客户和其他利益相关者的最新输入来完成此操作。
价值驱动的发展
敏捷开发方法的真正重点是尽早并持续提供业务价值。它是通过运行经过测试的软件来测量的。开发团队将产品功能作为计划,跟踪和交付的核心单元。
随着开发的不断进行,团队跟踪正在运行的产品数量,交付的经过测试的功能。
连续(自适应)计划
随着项目的启动,开发团队将进行更多计划以进行初始迭代,并在适当时制定高级功能发布计划。单次迭代是进行连续计划的关键。
随着迭代的开始,团队将选择一组功能来实施,确定和估算每个功能的每个技术任务。
敏捷开发中的多层次计划
如果连续计划至少发生在两个级别上,则其影响将更为显着:
相对估计
几个敏捷开发团队使用相对估算的功能来加速规划。它消除了不必要的复杂性。开发团队选择一些(3-5)相对估计类别或存储桶,并根据这些类别估计所有功能。
相对估算或/和预定义的估算桶的概念,可防止团队在辩论中浪费时间。当产品功能超过商定的最大估算值时,应将其进一步细分为多个功能。
紧急特征发现
与花费数周或数月的争议一样,在启动开发之前分析需求,敏捷开发项目会快速确定优先级并估计功能,然后在需要时细化细节。共同工作的客户,测试人员和开发人员之间将详细描述产品的功能。
连续测试
通过对软件产品的持续测试,我们可以确定进度并防止缺陷。我们处理正在运行和经过测试的功能。使用连续测试,我们可以减少项目中的失败风险。
连续的提高
持续测试与不断改进之间是相互关联的。在进行持续测试时,如果发现任何错误或项目失败,我们会立即不断改进这些错误。我们不断完善项目和系统。
跨职能小型团队
增量软件产品在每次迭代时都会交付。开发团队还必须具有跨职能部门敏捷软件开发,才能成功开发有价值的软件。