This is going to be the best way to create any type of functionality that needs to extend accross all of your BOs. This is generally the same approach that we take when we need to have repeated functionality on our BOs.