Software engineering is the technologies and practices that are used to create computer software while improving productivity and quality. These technologies and practices encompass languages, databases, tools, platforms, libraries, standards, patterns, and processes. Software engineering is the spectrum of applications that create economic and social value. Practitioners have built many successful and important systems, such as email, embedded software, graphical user interfaces, office suites, operating systems, optimizing compilers, relational databases, robotics controllers, video games, and the world wide web. Other important applications include accounting, airline reservations, avionics, banking, and telephony.
a subset of information systems engineering which is concerned with the analysis of computer processing specifications, designing programs that will be the most appropriate solution to satisfying these specifications, defining the machine operating instructions for executing the programs, and successfully producing executable object code for a computer. The objectives of Software Engineering are: To produce reliable programs that will perform according to specifications. To produce programs that are easy to maintain and modify. To physically implement programs in the most practical, efficient, and cost effective manner possible.