How to Automate Software Engineering