Q The essay is focused on Introduction to Software Engineering- The process of development of software to find solution. Home, - Introduction to Software Engineering Introduction to Software Engineering Software Engineering is the process of development of software in order to find solution of the prevailing problem. It consists of two terms that is Software and Engineering. A software is a set of instructions which are designed to accomplish a particular task and Engineering is the process of finding solutions to a problem that require minimum costs .Software Engineering involves designing and development of software, Smooth operation of a software and maintenance of software over time (Software Engineering). The main objectives of Software Engineering are to ensure reusability of software, to maintain software over time, to ensure software meets all the client requirements, to determine whether the software meets the required quality standards, to make the software adaptive in different environments and platforms and to make sure that software is able to be tested according to the designed test cases (Murphy, G., & Schafer,). Software Engineering develops the software in modules so that some of the common modules can be used for the new products also. When the software works over time, it requires updation of certain modules to meet the changing environment so, with the help of software engineering we can easily maintain software products over time. The product developed should meet all the requirements specified in the SRS document and it should be easy to design and implement test cases for the software product to ensure the developed product is correct. Software Engineering helps in maintaining correctness and testability of the software product. it also supports the working of software on multiple platforms and desired quality standards of the software. Software Engineering provides a set of software development lifecycle models to analyze the stages that a software product goes through during its life time. There are various models available such as Classical Waterfall Model, Iterative Waterfall Model, Prototype Model, Spiral Model and many more. Different model can be adopted according to different situations. It also provides different software testing techniques such as White box testing and Black box testing to ensure whether the software works according to the requirements specified in the SRS document (Bharadwaj, R., & Hall, R). White box testing is adopted when the tester is not concerned with the structure of the program but only the functionality of the program and black box testing is adopted when the user is concerned with the built of the program. For maintenance testing there is corrective, adaptive and perfective maintenance is available.