2013年4月底,应邀参加了首届中国软件质量高峰论坛,期间详细听了Jacobson公司的SEMAT的方法论。
此后思考了很长时间,因为一直感觉没有考虑成型,所以,迟迟没有发表任何相关的文字出来,今天有了一点思考,决定将之发布出来,与大家共享片段,更多的内容还要等后续有时间之后的总结。
SEMAT方法,Ivar公司号称是从2006年开始启动研究,2009年初步成形,2012年开始正式对外宣布的一套方法论,其关键点着眼于抓住必须不可或缺的环节,实现对每一个开发过程关键点的控制,而并不关心过程关键点之间是如何联系如何形成一体的。也就是说,SEMAT方法,只是一套方法,上面采用哪种过程模型是没有关系的,无论是瀑布、螺旋、循环、UP、XP等等都可以,只要SEMAT提到的关键点都有,就达到了SEMAT所要的目的。其结果和过程的可控性也就有了一定的保障。
SEMAT目前的问题是,提出了所有的他们目前认为的关键点,但是并没有给出这些关键点的审核方式,也就是说,如何验证这些关键点是否达到了要求,仍然是需要依靠团队中的具体的人来进行判断,一旦人的判断出现了失误,那结果必然会出现问题。同样,在其他的软件工程模型中也存在这个问题,这就是所谓的银弹不可能被找到的一个不可判定的逻辑结点。