COMPSCI 235 introduces basic tools, approaches, and methodologies in software development. The course is good preparation for third-year study in software development, in-depth database, and web development courses. It is intended to strengthen the toolset of students regarding practical software development, thus deepening what is learned in COMPSCI 230 and preparing for the Software specialisation in Computer Science. It is strongly suggested but not required to take COMPSCI 235 after finishing COMPSCI 230.
The main focus of COMPSCI 235 is on software design methodologies to structure the process of developing software, common design patterns used for abstraction and data hiding, using tools like application frameworks, integrated development environments for programming and debugging or version control and bug tracking for management, as well as quality assurance techniques such as testing at different levels of the development process. Central to the course will be a practical assignment, where students learn to apply some of the important methodologies and gain hands-on experience. The course will be taught using the Python programming language.
COMPSCI 235 serves as a stepping stone for courses like COMPSCI 331, Large-Scale Software Development, or COMPSCI 335, but also prepares for software projects or capstone projects. Skills learned in this course are sought for in industry in roles like software developer or software engineer.