什么是敏捷设计开发

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

   敏捷开发最不能容忍的几点:

  • 僵化性:很难对系统的某一部分进行改动,因为改动这个有可能引发别的也需要一同改动;
  • 脆弱性:对系统改动会导致系统中和改动的地方在概念上无关的许多地方出现问题;
  • 牢固性:很难在其他系统中使之重用;
  • 粘滞性:做正确的事情比做错误的事情要困难;
  • 不必要的复杂性:对系统过于封装的复杂,使程序不易看懂;系统中含有使用不到的代码;
  • 不必要的重复:在系统中多处地方出现类似的代码;
  • 晦涩性:代码很难理解,很难阅读,没有很好的表现出意图。

    在大多数软件项目中最不可预测的就是需求的变化,这是作为软件开发人员必须接受的事实!我们生活在一个需求不断变化的世界中,我们的工作要保证我们的软件能承受住需求的变化。如果承受不住需求的变化,那么敏捷开发就是失败的。

敏捷开发致力于马拉松赛跑,一步一个脚印,慢慢积累,最开始使用最简单的做法,在以后的一天天里慢慢的改进原先的代码,当看到有需要修改的代码,作为敏捷开发人员必须要马上改掉,而不应该散漫和推脱。

    简而言之,敏捷开发人员知道自己要做什么,是因为:

  1. 遵循敏捷时间去发现问题;
  2. 应用设计原则去分析问题;
  3. 适当运用设计模式去解决问题; 

  而我把敏捷开发人员需要知道自己做什么简单的定义为3q法则,3代表三条,q代表中文的去的首字母。时刻记住这3q法则,则能很好的知道自己在做项目中处于一个什么角色。

  保持尽可能好的设计,做到一个敏捷开发人员该有的特质,看到不好的代码改之,看到不好的设计改之,尽可能的使代码通俗易懂,从而给人的感觉像是一个人开发的一样,做到人人可以看得懂别人写的代码,人人可以动手改别人不好的代码。这就好小时候医生给我们打防御疫苗一样,没跟针都进过消毒,消毒过程是对每个小孩生命的正西(当然对于部分所谓的医生我直接无视),如果没有消毒过程,那么被感染的风险会大大提高,这是难以忍受的。敏捷开发对于我们程序员来讲是同样的道理。

     总之,源代码一定要保持干净,简单,稳定,职业特性使我们有着对代码有精益求精的精神。虽然敏捷开发在中国很难坚持,但是还是尽量做到最好。

猜你喜欢

转载自herryhaixiao.iteye.com/blog/696020