Computer Science Challenges

Overview

Computer Science Challenges provides an opportunity for students to engage with practical and challenging problems in Computer Science. The course will offer a range of topical areas in Computer Science such as, data science, machine learning, cybersecurity or computing systems that students can select a project within. The choice of topical areas will depend on availability of resources. Through developing a project within one of the set areas, students will advance their programming experience, including the use of tools and technologies such as, version control, testing and secure and efficient programming.

Learning Objectives

Students must be able to:
- demonstrate knowledge of the topical areas and be able to apply this knowledge in a software project.
Additionally, students must be able to demonstrate the application of:
• Professional programming standards: clean code techniques, commenting and code review.
• Tools: appropriate integrated development environments (IDE) for the specific tasks, version control, debugging tools and static analysis tools.
• Program design: modular decomposition and functional decomposition.
• Professional programming practices: error handling, input validation, use of standard libraries and secure programming considerations.

Skills

Self learning, perseverance, debugging, user focused development, self promotion.

Assessment

Students must complete all elements of module assessment and attain an overall pass.

Coursework

100%

Examination

0%

Practical

0%

Credits

20

Module Code

CSC1028

Teaching Period

Spring Semester

Duration

12 Weeks