published in 19th International Conference on Software Engineering and Knowledge Engineering, SEKE 2007 Journal