什么是敏捷设计

一.设计臭味

1.僵化性

  僵化性是指难以对软件进行改动,即便是简单的改动。若是单一的改动会致使有依赖关系的模块中的连锁改动,那么设计就是僵化的。改动时,必需要改动的模块越多,设计就越僵化。编辑器

2.脆弱性

  脆弱性是指,在进行一个改动时,可能会致使程序的许多地方出现问题。经常是,出现新问题的地方与改动的地方没有概念上的关联。设计

3.顽固性

  顽固性是指,设计中包含了对其余系统有用的部分,可是要把这些部分从系统中分离出来所须要的代价很巨大的。事件

4.粘滞性

  软件粘滞性

  当面临一个改动时,开发人员经常发现会有多种改动的方法。其中,一些方法会保持设计;而另外一些方法会破坏方法(也就是拼凑的方法)。当能够保持系统设计的方法比拼凑手法更难应用时,就代表设计具备很高的粘滞性。开发

  环境粘滞性

  当开发环境迟钝。低效时,就会产生环境的粘滞性。软件

5.没必要要的复杂性

  若是设计中包含了当前没有用到的组成部分,他就包含没必要要的复杂性。为过多的可能性作准备,导致设计中含有绝对用不到的结构,从而变得混乱。这些准备工做也许会带来回报,但更多的不会有什么好的回报。同时,设计时背负着这些用不到的部分,是软件变得复杂,而且难以理解。
文本编辑器

6.没必要要的重复性

  剪切和粘贴也许是有用的文本编辑器操做,但倒是灾难性的代码罪魁祸首。程序

7.晦涩性

  晦涩性是指模块难以理解。代码随着时间而演化,每每会变得愈来愈灰色,让开发人员愈来愈难理解模块的工做方式。为了使代码的晦涩性保持最低,就须要持续地保持代码清晰和富有表达力。方法

2、软件为什么会腐朽

  在非敏捷的环境中,因为需求没有按照初始预期的方式进行变化,从而致使设计的退化。一般,改动都很是很急迫,而且进行改动的开发人员对于原始的设计思路并不熟悉。于是,虽然是能够对设计进行改动,可是却在某种程度上违反了原始的设计。随着改动的不断进行,这些诟病将渐渐的积累起来,直到恶性肿瘤的出现。系统设计

3、什么是敏捷

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

相关文章
相关标签/搜索