关于软件工程和爸爸的谈话录

来源:互联网 发布:淘宝设置手机号登陆 编辑:程序博客网 时间:2024/04/27 20:18

关于软件工程和爸爸的谈话录

昨天晚上,和爸爸进行了一个多小时的谈话,谈话的主要内容是软件工程方面的。其中爸爸有很多值得学习和记录的东西。
部分谈话录:
1. 计算机从业人员分为三个层次:工具设计师(Tool Smite)、开发者(Developer)、用户(User);
2. 软件工程是随着软件工具的增强而变化的;
3. 人们通常会面临两种难题,第一种是在人们认知范围之外的,这个我们不用管他;第二种是在人们能力范围之外的,我们可以通过对问题的分解将这类问题解决。但是在分解过程中要注意问题分解的程度,不能太大,也不能太小;
4. 软件的集成不是物理上的集成,而是逻辑上的集成;
5. 计算机软件开发的两个重要发展方向:预制件技术和自动化生产技术;
6. 现在的软件开发,人人都可以是开发者,大多时候非计算机专业的做出来的软件比计算机专业做出来的软件都好。这是因为开发工具越来越傻瓜化了,而软件应用越来越趋向行业应用了,那些人比计算机人员更懂得业务。而计算机专业人员应该更注重在算法这方面的修炼,因为傻瓜的开发工具就是计算机专业人员开发出来的。

总的来说,爸爸对软件工程是很有造诣的,而且在以前他就做过了很多这方面的探索和研究,例如,他在1987年和学生提出了“人件”这个概念,而也是80年代末,他提出了预制件技术和自动化生产技术这两个概念,可惜的是这些概念并没有被很好深入和整理。
随着软件工程的发展,特别是近几年时间,很多新的理论在被深化和应用,例如RUP(Rational统一过程)、XP(极限编程)、敏捷编程等等。同时各类建模工具和软件工程相关的工具也应允而生。例如我最近一直跟踪的IBM在软件工程方面的系列软件,更令我感到软件工程无论在理论还是相应的工具都有的飞速发展。

昨天晚上,我觉得我提出的两个观点还是被爸爸认可的:
1. 软件应该以人为本,软件永远是为人服务的。因此增强软件对人的亲和力是很重要的。
2. 软件实施过程中,一半因素是工具和方法,一半因素是人。这个人不仅包括了开发人员,也包括了项目管理者,客户等,这就是我们所说的项目涉众。
以后还要继续努力,因为我还差得很远。