A classification and comparison of model checking software architecture techniques