Software assessment through metrics and beyond