Software Engineering (SE) derives its essence from computer science as other engineering disciplines do from natural or life sciences, with an emphasis on issues of process, design, implementation, maintenance, analysis and verification providing a strong foundation in engineering principles and practices as applied to software development.