Software engineering is synonymous with software development, but generally implies a more rigorously structured design and the use of some automated development tools.