📜  软件工程中 TDD 与 AMDD 的区别

📅  最后修改于: 2021-09-12 11:18:41             🧑  作者: Mango

先决条件:敏捷软件开发和敏捷软件过程及其原理

1. 测试驱动开发(TDD):
测试驱动开发(TDD)是一种软件开发技术,它在软件完全开发之前开发测试用例,并根据测试结果进行必要的更新。在这里意味着编写了一些测试,并在通过测试用例时相应地构建系统。并根据系统的各种情况和反应设计测试用例。

TDD的好处:

  • 它阐明了我们希望从各自的代码中得到什么。
  • 它创建了详细的规范。
  • 它减少了返工所花费的时间。
  • 它有助于快速识别错误和问题。
  • 它创建 SOLID 代码并支持干净的界面。

2. 敏捷模型驱动开发(AMDD):
敏捷模型驱动开发 (AMDD) 是模型驱动架构 (MDA) 或模型驱动开发 (MDD) 的敏捷版本,其中在编写源代码之前创建了大量模型。它不会创建模型的更大版本,而是创建模型的敏捷版本,从而增强软件开发的结果。

AMDD 的好处:

  • 它有助于软件应用程序的快速开发。
  • 它阐明了我们希望从各自的代码中得到什么。
  • 它允许定期适应不断变化的环境。
  • 它持续关注卓越的技术。

TDD 与 AMDD 的区别:

S.NO.

TDD

AMDD

01. TDD refers to Test Driven Development. AMDD refers to Agile Model Driven Development.
02. TDD is a software development technique which develops the test cases before the software is fully developed and make necessary updates based on test results. AMDD is an Agile version of MDA (Model Driven Architecture) or Model Driven Development (MDD) where extensive models are designed before source code is written.
03. This technique focuses more on the implementation of a feature. This technique focuses more on the implementation of functionality.
04. It shortens the programming feedback loop. It shortens modeling feedback loop.
05. It does not address the agile scaling issues. It addresses the Agile scaling issues.
06. It promotes the development of high-quality code. It promotes high-quality communication with stakeholders and developers.
07. It provides detailed specification. It is better for thinking through bigger issues.
08. Participants are programmers. Participants are stakeholders, and data professionals, business analysts.
09. It is non visually oriented. It is visually oriented.
10. TDD has a limited scope than AMDD. AMDD has a larger scope than TDD.