This introductory course in Software Engineering aims to equip first-year students with fundamental skills to identify requirements, document system design, and maintain developed software systems. Presuming a basic understanding of computers and programming, this course delves into the systematic approach essential for managing the increasing demand for software projects.

Software engineering has emerged to address the complexities and challenges of developing software across various domains. This course provides a comprehensive understanding of the software engineering process, concepts, and methodologies necessary for the systematic development and management of software projects.
This course provides a comprehensive understanding of fundamental data structures and principles of program design using the C programming language. The course equips students with the knowledge and skills to develop efficient and scalable software solutions by implementing primary data structures and algorithms and applying such data structures to solve real-world computing problems.