削足适履
图为维多利亚时期英国画家Heywood Hardy的作品,在大洪水到来之前,飞鸟走兽们进入诺亚方舟。 上帝许可每种鸟兽至少保留一公一母进入方舟逃避即将到来的灭顶之灾。小小诺亚方舟承担了各种群延续的希望,在有限的空间中装载整个世界,这需要精巧的规划,绝不可轻易耗费资源。
作为成本的程序空间
- 规模是软件系统产品用户成本中一个很大的组成部分,开发人员必须设置规模的目标,控制规模,考虑减小规模的方法;
- 规模本身不是坏事,但不必要的规模是不可取的;
规模控制
- 对项目经理而言,规模控制既是技术工作的一部分,也是管理工作的一部分。必须研究用户和用户的需求,以设置待开发系统的规模;
- 仅对核心程序设定规模目标是不够的,必须把所有方面的规模都编入预算;
- 规模预算必须与分配的功能相关联;在指明模块大小的同时,确切定义模块的功能;
- 在大型项目中,为了满足目标,每个人都在局部优化自己的程序,很少会有人停下来,考虑一下对客户的整体影响,这种导向和缺乏沟通是最大的危险;
- 在整个实现过程期间,系统结构师必须保持持续的警觉,确保连贯的系统完整性;
- 培养开发人员从系统整体出发、面向用户的态度是软件编程管理人员最重要的职能;
空间技能
为了帮助团队取得良好的“空间——时间”折中:
1. 确保他们在编程技能上得到培训,而不仅仅是依赖他们自己的才能和先前的经验;
2. 认识到编程需要技术积累,需要开发很多公共单元构件;
数据的表现形式是编程的根本
- 精炼、充分和快速的程序,这种技艺改进的结果往往是战略上的突破,而不仅仅是技巧上的提高;
- 战略上的突破常来自数据或表的重新表达——这是程序的核心所在;
- 数据的表现形式是编程的根本;