新功能设计的一些思考

2021-05-13  本文已影响0人  jxcyly1985

当我们接受一个新功能需求的时候,是利用我们的知识对一个问题进行解决。

在这个功能中,除了用已有的知识对问题进行线性的梳理分解,达到一个功能的业务需求之外还有哪些是在功能设计中可以进一步加深方案设计中思考的问题,谈下自己的思考。

1,方案设计中那些是使用已用功能进行的扩展,那些是完全重新设计的功能。

2,新功能对原有框架的影响,如何支持新功能的接入的,是否破坏核心流程,是否达到足够抽象?

3,重新设计的功能中哪些在将来可以复用和扩展,并且最终可以形成通用技术,提升解决类似问题的效率和稳定性。

4,对于领域前瞻性的理解是如何体现在新功能的设计上的,运行了什么样的设计理念和设计原则。

软件质量的因素的关系表, + 表示有促进的作用, -表示降级的影响(借用《软件架构设计》 确定关键质量章节中质量属性关系矩阵图)

5,在前瞻性的理解和现阶段的现状中如何平衡的,不同的软件质量间如何做的取舍,那些是性能功耗优先,那些是复用扩展优先?

综上所说,我们的新功能不可避免的会增加代码的复杂性和对代码产生腐化的影响,因此在应用业务知识解决某个业务的情况下,需要纵向的对已有的业务进行纵向的相关性分析,从而在单个业务横向联系的知识点的基础上具备了纵向的联系,也只有达到横向和纵向的设计才能做到把引入新功能的复杂性降低。

当具备了横向和纵向的联系之后,我们的业务和代码才能实现真正的结构化,保证架构的稳定性。

上一篇下一篇

猜你喜欢

热点阅读