软件是在大脑中而不是电脑中构建的!
软件是怎么产生的?
表面上看,软件是由程序员在电脑中运行的开发平台上敲击代码产生的,但实际上它是程序员的大脑中产生的。
程序员首先是在大脑中构建了软件的架构,设计了每个单元、函数如何实现,之后把这些成熟的想法在电脑上敲击出来,借助开发平台工具,形成可执行程序。
如果程序员的大脑中是一片空白,再好的电脑,再先进的开发平台,也产生不了软件。
所以,归根结底,软件是在大脑中产生的。
敏捷的倡导者们一直宣扬软件开发应当以人为本,尽可能地发挥出人的作用,大抵也是基于这个认知。
一个组织要想自己的软件产品能够被高效、高质量地开发出来,有很高的竞争力,就应当重视对开发人员的培养,特别是培养开发人员以下3种能力:沟通能力、学习能力和思考能力。
开发人员在大脑中构建软件离不开这3项能力。
沟通能力
大多数情况下,软件开发都是一个团队协作而不是单兵作战的项目。
开发人员需要与用户沟通,以了解用户的需求,明确软件要完成的功能、性能及其它质量要求;开发人员需要与相关方沟通,搭建测试环境,完成软件的验证和确认。
如果开发人员缺乏良好的沟通能力,错误地理解需求,就不可能在大脑中构建出正确的软件;如果开发人员缺乏良好的沟通能力,也不可能顺利地完成软件的验证和确认。
沟通是有方法、有技巧的。比如,使用画图,形成统一语言等等。
学习能力
开发人员的软件开发过程常常也是一个学习的过程。比如,学习业务知识,学习新的开发工具,学习新的开发方法等等。
如果开发人员的学习能力差,不能尽快地掌握业务知识,他就不可能正确地理解需求;如果开发人员的学习能力差,软件的开发也不可能高效地进行。
思考能力
开发人员把自己沟通和学习获得的关于软件构建的知识,在大脑中通过思考进行整合、分析、设计,最终形成了软件的雏形。这些想法诉诸于键盘,在开发平台中对敲击出来的代码进行编译、调试,最终形成了可运行的软件程序。
总之,软件开发关键在人,软件质量是由开发人员决定的。
这正是:
软件产生来寻根,不在工具在人身
学习沟通会思考,软件质量差不了
参考书目:程序员的思维修炼:开发认知潜能的九堂课,作者:(美)亨特(Hunt),译者:崔康,出版社:人民邮电出版社