|
Post by raselbd296 on Dec 24, 2023 8:55:37 GMT
然而如果我们观察到给定组件的实现细节的许多变化也变化这意味着测试代码可能依赖于实现细节这是非常糟糕的。 如果两个应该相互独立的元素表现出高度时间耦合的迹象我们需要调查这种情况找出哪些类和特征倾向于一起改变。也许我们缺少一个抽象或者需要提取一个全新的单独的组件。也许是时候修改我们的架构假设并在组件之间设置新的架构边界以更好地支持系统的进一步发展。 时间耦合也很大程度上与错误发生的概率有关。高水平的时间耦合通常会导致高错误率。研究表明时间耦合比任何复杂性指标都能更好地预测缺陷。 了解时间耦合有助于我们进行重构计划和测试计划。知道功能 的更改会导致与 相关的代 电子邮件数据 码发生更改我们可以计划对两个模块进行回归测试以防其中任何一个发生更改。 开始分析时间耦合的最佳位置是变化率最高的模块。 时间耦合分析与热点分析一样可以从模块级别转移到类级别然后再转移到函数级别。 探索时间耦合将我们的分析从单个。 组件扩展到它们之间的关系并帮助我们找到如果无人看管可能导致意外且难以诊断的错误的代码。我们都知道这样的情况有人向模块 添加了功能模块 经过测试并且工作正常我们投入生产后发现模块 和 意外停止工作。 热点时间耦合代码所有权和通信模式 我们都记得《人月神话》中的布鲁克斯定律 向延迟的项目添加人员会导致项目进一步延迟。 这是因为沟通和协调的额外成本高于新团队成员所创造的工作价值。另一件事是系统架构限制了能够有效地从事该项目的开发人员的数量。
|
|