根据意识:言而有据的诉求
判断基于事实,承诺源自依据。日本软件企业在软件开发过程中让人感觉到一种习惯性的根据意识:立足于数据而不是假设之上。规模估算、进度估算、成本估算、人员估算,都需要说明理由,而不是仅仅凭借经验甚至感觉作出判断;进度调整、质量评估、费用超支、人员追加,仍然需要提出变更的原因,不管这种变更是否对企业有利;项目意见、作业提案、选择建议、管理流程,都需要通过调查分析阐述各自的依据。尽可能排除直观感觉可能带来的误差甚至错误,通过切实有效的数据来反映事实状况,并通过这些数据来判断发展趋势,作到“言之有据”。因为面对客户的需求,不能主观随意地作出判断或者抛出承诺,而没有相应的根据,否则顾客将会感到“不安”。这就是软件开发者的根据意识。根据意识源自危机意识,日本似乎与生俱来的危机感促使其在软件开发过程中尽量排除风险,而排除风险就必须基于科学的决策,必须拥有根据,而不是凭空决策。
精度管理:敏感的数据倾向
危险出在管理上,魔鬼藏在精度中。精度表现着对事物认识的深入程度,不管是软件成熟度模型,还是六西格玛,都表达着对高精度管理的诉求。日本软件开发过程中对精度的要求包括项目计划精度、工数估算精度、进程控制精度、缺陷统计精度、成本控制精度、品质控制精度等等,力求通过数据来描述和分析问题。特别是在项目规模、项目缺陷、累计工数、需求变更、测试和审查等方面,更加注重精度管理,更加注重度量。以前,日本企业的规模估算等方面依赖于KDD,即勘(Kan:直觉)、经验(Keiken)、度胸(Dokyou:胆识),但这种情况已经被基于数据和科学方法的精度管理所取代。数据敏感,具有较好的数据分析和判断能力,这已经逐渐成为现代企业管理者的基本资质要求。如果分析和判断建立在准确数据的基础之上,那么精度管理就获得了必要的操作依托。软件开发计划与实绩管理就是最明显的精度管理:精度意味着实绩与计划的吻合程度,如果实绩与计划相去甚远,那么其计划精度就存在问题。当软件品质中融入精度管理的时候,精度管理就成为与软件品质改善并驾齐驱的主线。
可视作业:工具的灵活运用
可视化作业能在作业的效率和质量上给项目团队带来惊喜。日本软件企业在软件开发过程中注重作业过程中的可视化,追求项目成果的可预见性、项目问题的可追溯性、项目绩效的可评价性,利用各种软件开发工具来阐明现状、沟通思想、分析问题和团队作业,防微杜渐,通过新旧七大工具以及Microsoft Project等工具推动可视化,并在数据、图表、模型等的熟练使用方面拥有相当的根基。项目管理方面的“看板”就是典型。工具是用来处理其他事务的手段或器材。灵活运用工具解决实际问题的能力,对管理层人员来说至关重要:没有对软件开发过程的可见度就无法管理;而没有对事物进行适当的度量,也无法进行有效和高效的管理。软件工程的方法论主要在提供可见度方面下工夫,从多个角度推动可视作业,对软件开发的绩效发挥着越来越重要的作用。