Software engineering is an area of computing focused on the specification, development and maintenance of software systems, with application of technologies and practices of project management and other disciplines, aiming organization, productivity and quality.