Software Engineering#

Course Description#

This Software Engineering course offers an introduction to the principles and practices of software engineering using Python. Through theoretical lectures and hands-on assignments, students will explore the entire software development lifecycle, from coding and testing to deployment and maintenance. The course will combine individual and team projects, ensuring students gain practical experience in collaborative software development.

Learning Goals#

By the end of this course, students will be able to:

  1. Understand the principles and practices of software engineering.

  2. Apply Python programming to solve complex software problems.

  3. Utilize various software development methodologies and version control systems.

  4. Conduct software testing, debugging, and optimization.

  5. Collaborate in team settings and manage software projects efficiently.

Grading#

  • Participation: 10%

  • Midterm: 30%

  • Term Project: 60%

Course Outline#