In general, I would say no, for particular examples, I would say certainly. The problem is that there are so many boolean functions that for some one of the intermediate steps like generating a DNF may explode so that other ways can then be more efficient. However, there is no silver bullet, I am afraid.