流程设计
程序员文章站
2022-04-02 18:49:31
...
试想一种场景,在企业/事业机构的发展过程中,组织架构可能会不断变化,组织架构的变化,各种审批流程也会相应的变化,可能会增加,也可能会减少,审判流程内还会出现各种多人审核,重复审核,撤销审核等的情况,如何设计出一个适合组织架构经常变化,审批流程经常变化的软件?审批流的变化也可能会使流程内出现各种特殊需求,如何设计出一套软件可以快速适应这种变化的软件?
以上描述的场景估计大部分都适用各种有计划进行信息化办公建设的企事业单位,设计出来的软件效果是:管理人员可以灵活配置各种流程,流程配置后可以根据配置,快速生成一种通用的模版,对于有特殊需求的可以让开发人员用最少的时间进行织入开发;在这里不打算详细描述如何实现或者具体的数据结构设计问题,这里描述一下实现这种需求将要用到的最少设计原则或模式,如下:
1.开-闭原则
2.里氏代换原则
3.组合/聚合复用原则
4.模版方法
5.织入
6.静态方法
8.观察者模式
9.状态模式