我的观点 - 敏捷开发追求简单设计之道
1.何谓简单设计
引言:极限编程中有一条著名的懒汉原则,称之为KISS原则,KISS是Keep it simple and stupid的缩写。简略地说,就是设计尽量保持简单。
Naresh Jain 是这样解释简单设计的“不影响我的工作进度的设计,就是简单设计”。
我的观点是:提供策略从复杂的业务领域中抽取简单的场景,注重实效的设计,就是简单设计。
2.简单设计的意义
敏捷开发思想是以拥抱变化,追求简单设计解决软件复杂性之道,构建合理、适宜的结构,和具有良好的可测试性,可复用性和可扩展性架构。简单的说,要开发的系统软件使用敏捷开发:一方面,我们既要保持简单的设计,不做无谓的功能预测;另一方面,我们又要拥抱变化,在尽量减少改变结构与代码的情况下,满足未来的需求。
>动态的清晰的工作流程。
>支持“拥抱变化”,促进对变化驾驭和平衡。
>方便开发者和用户之间的沟通。
>很好的支持测试与维护。简单测试要求整洁的代码(无重用的,多余的,没用的代码,是经组织良好的代码等)。
3.如何高效使用简单设计思想进行敏捷开发呢?
>有效的使用UML
>开发整洁的代码
>功能按照用户预期运行正常
>有效的沟通和清晰的业务逻辑
>开放的管理,创新的思维
敏捷只是工具,不是到达终点的手段。