Introduction to Software Development
Besides covering a number of topics in software engineering, with an emphasis on software design, this course focuses on imparting a number of skills and industry best practices that are valuable in the development of large software projects, such as source control techniques and workflows, issue tracking, code reviews, testing, continuous integration, working with existing codebases, integrating APIs and frameworks, generating documentation, deployment, and logging and monitoring. The course also emphasizes the importance of collaboration in real-world software development, including interpersonal collaboration and team management. The course will be organized primarily around the development of a class-wide software project, with students organized into teams. Collaboration both within and across teams will be essential to the success of the project.
Sources
- Course catalogue ↗2026-2027