什么是敏捷设计

2017-02-13  本文已影响86人  清风流苏

Jack Reeves说,

实际上满足工程设计标准的惟一软件文档,就是源代码清单

设计的臭味——腐化软件的气味

当软件出现下面任何一种气味时,就表明软件正在腐化。

在非敏捷环境中,由于需求没有按照初始设计预见的方式进行变化,从而导致了设计的退化。 通常,改动都很急迫,并且进行改动的开发人员对于原始的设计思路并不熟悉。因因而,虽然对设计的改动可以工作,但是它却以某种方式违反了原始的设计。随着代码改动的进行,这些违反渐渐积累,设计开始出现臭味。

如果我们的设计由于持续、大量的需求变化而失败,那就表明我们的设计和实践本身是有缺陷的。我们必须要找到一种方法,使得设计对于这种变化具有弹性,并且应用一些实践来防止设计腐化。

敏捷团队不允许软件腐化

基本不预先设计,通过需求变化来保持活力。保持系统设计尽可能的干净、简单,使用单元测试和验收测试作为支持。利用灵活性,持续改进设计。

每次需求变更导致设计不再具备灵活性时,就改造原有设计,而不是对原有设计进行打补丁,以满足最新需求,并更具备灵活性。

敏捷开发人员知道要做什么,是因为:

  1. 他们遵循敏捷实践去发现问题
  2. 他们应用设计原则去诊断问题,并且
  3. 他们应用适当的设计模式去解决问题。

软件开发的这三个方面间的相互作用就是设计。

结论

敏捷设计是一个过程,不是一个事件。它是一个持续的应用原则、模式以及实践来改进软件的结构和可读性的过程。它致力于保持系统设计在任何时间都尽可能的简单、干净以及富有表现力。

上一篇下一篇

猜你喜欢

热点阅读