Software engineers apply the principles of engineering to the design, development, maintenance, testing, and evaluation of the software and systems that make computers or anything containing software work. Major experiments performed in the lab are, problem analysis and project planning, thorough study of the problem-(Identify project scope, infrastructure), software requirement analysis (Individual Phases/modules of the project deliverables) and data Modeling Use work products – data dictionary, use case diagrams and activity diagrams, build and test class diagrams, sequence diagrams and add interface to class diagrams.