随着社会高速发展,对于一个人而言,最有价值的除了身体健康外,越来越属思维方式了。无论一个人智商多高,起点有多高,只要思维方式存在问题,后续的路都会越走越窄。今天我们聊的到不了人的层次,仅是对软件的一种设计思维做一点分析和探讨,主旨是让软件系统更有生命力、更符合时代发展,不再原地踏步。
软件设计和实现最常见的思维:线性思维
“线性思维”在软件设计中是一种以顺序性、逻辑性和逐步推进为核心的方法论,强调从问题定义到解决方案的单向推导,注重清晰的步骤划分和因果关系。
这种思维在目标、资源、能力等都明确的情况下,效果是可以保障的,并且开销也是可控的,所以,软件设计工作中常被用到,在使用过程也会采用一些结构化的思维进行配合使用,但这种结构化也是基于一点的并行处理而已。线性思维的好处作者不必多说了,但是,随着软件行业的持续发展,这种思维方式就暴露如下的问题,大家可以尝试体会一下:
1、线性思维,要从头到尾,人员连续性要求高、不确定大
2、工程混合在一起,精细化、针对性、部署等灵活的不够,问题分析困难
3、对于原有体系进行升级复杂度高,新陈代谢困难,缺失发展性,完成即落后
4、顺序、融合在一起 ,就容易形成组织僵化和排外,组织作战能力形成天花板
5、数据服务流程、数据服务线性逻辑,数据自身价值很小很小,不利于积累
6、线性逻辑下产生的数据,质量没有严密的检验机制,对错都淹没在历史中
所以,线性思维,不利于软件系统的质量、发展性、结构性、组织成长性、灵活性、数据性、工程师个人发展性等,软件系统的价值大大受损。也正是如此,大家想想是不是有太多的软件系统几乎年年做,次次做,更关键是次次从零开始做。这都是因线性思维的原因,社会、技术发展越快,这种问题越突出,费力不讨好。
软件系统采用线性思维,“耦合”其实是最大的问题,不良后果简单列举:
1、耦合=受限:框架、技术、功能、人员、数据、流程等耦合在一起,乱
2、耦合=脆弱:任何一点产生问题,全局都会受影响,怕
3、耦合=复杂:复杂/庞大的软件系统本身就是问题,死得快
4、耦合=无数据:数据若沾染了太强的逻辑性和功能性,就没有价值,完
耦合性太强,其实就是给自己设限,导致软件系统自废武功,很难适应这个高速发展和时刻变化的时代,毁灭就成为唯一结果。
所以,线性思维需要转变为结构化数据思维,才是正途,如何做呢?
1、解耦,是第一步,就是将线性逻辑给肢解,将一坨系统进行拆解
2、以数据维度进行解耦,拆解有多方处理共同数据的功能,形成功能->【数据+数据服务】->功能,业务功能和数据服务打交道,不再直接处理数据,形成数据顿挫
3、形成数据顿挫:采用“自驱、自验证、自清洗”的原则让数据具有生命属性,从而一方面保障数据质量,一方面保障数据主人责权利的一体性
4、原有功能就被拆分成更小的系统,因为数据顿挫,原有的线性系统就被肢解,形成通过数据服务系统协同众多小系统,这些小系统功能独立,自成体系,相互不产生依赖性,只和数据服务系统和公共系统做交互,因为小、独立,其新陈代谢能力就强,就有了很好的生命力
5、数据,在数据服务的保障下持续积累,做到和技术解耦、和功能解耦,“读写”两条线,配套生产机制和服务机制,让数据进入自驱的生命发展过程,保障只要数据在,上层的系统、技术、架构等都可以有上有下,有新有旧
6、系统小了、数据独立了、功能在协同基础上完成,这样一个完整的以结构化数据思维为核心的体系就形成了。并且,数据能有质量、系统能有生命力、协同也能清晰高效,这样的体系完全可以和时代发展、技术发展保持同步
7、对于此体系的软件工程师,因为系统多而小,只依赖于数据,所以,采用什么架构、什么技术都可以,不设限,做不好,推倒重来,数据在,一切都在。大家都可以独当一面,都可把事情做到足够正确足够精准,这对于工程师的发展是巨大利好。
最后要说:
软件系统,采用什么样的技术和什么样的框架都不关键,因为技术和框架很快就过时,真正关键的是做到足够结构化数据思维的设计
结构化数据思维做得足够好,就是将系统充分解耦,解耦到功能独立、数据独立、数据服务独立、公共服务独立、协同高效等
形成 “小系统+公共服务+数据+数据服务”这样的软件体系,彼此依靠但彼此不限制,相互独立又相互促进,各自发展,软件体系的生命力油然而生,任他时代如何变化,任他工程师如何交替,一切都在可控范围内
软件系统,考验的不是技术而是思维方式,当下众多软件公司对35岁以上的软件工程师区别对待,只能说这些公司采用的线性思维,要的是精力。而对基于结构化数据思维的软件系统,软件工程师35岁,其实才刚开始,因为这样的人才更有独立性
学无止境、思无上限,请坚信人的思维方式是软件行业最根本的驱动力,是甄选人才最重要的维度,目前基于结构化数据思维的软件系统设计和建设,更应景
祝思考的人、永远行动的人:节日快乐!
【注:以上仅是作者肤浅认识,仅供参考!】
来源:与智慧做朋友
作者:李志勇 ( 微信号:qichelaba )
声明:文章中部分图例来源于网络,版权并不属于作者
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...