During my career I tried to bend software engineering (and I use that term only because some of my employers insisted) in the direction of professional engineering. We love standards so much we have hundreds of them. When programming can be reduced to a craft, we can write a code generator and be done with crafting code. Engineering involves metrics, but how many programmers know how their code performs, how much memory it takes up, or can give a reasonable estimate of how long it will remain useful?

I think the industry is still a long way off from real Software Engineering.