CSC8621 : Computing Foundations of Data Science
- Offered for Year: 2019/20
- Module Leader(s): Dr Jennifer Warrender
- Owning School: Computing
- Teaching Location: Newcastle City Campus
|Semester 1 Credit Value:||10|
This module aims to introduce the fundamental computing concepts and techniques underpinning contemporary data science. The module aims to provide students with a grounding in program design and implementation, programming environments. Furthermore, it explores how to apply and devise algorithms for a particular problem.
This module places an emphasis on clear design and development of programs, teaching how to break problems down to provide simpler and easier-to-use solutions. Students will apply these skills at a practical level with a particular programming language, though the skills learnt here can be applied to any programming language.
Outline Of Syllabus
- What is programming?
- The building blocks and structure of computer programs.
- Tackling data analysis problems.
- Algorithms and some examples.
- Introduction to a programming language, and relevant libraries, for data analysis.
- Methods and data structures for data analysis.
- Case studies in software development within a data science context.
|Guided Independent Study||Assessment preparation and completion||22||1:00||22:00||Lecture follow-up|
|Scheduled Learning And Teaching Activities||Lecture||22||1:00||22:00||N/A|
|Guided Independent Study||Assessment preparation and completion||10||2:00||20:00||Practical/Lab report exercises|
|Scheduled Learning And Teaching Activities||Practical||22||1:00||22:00||N/A|
|Guided Independent Study||Independent study||14||1:00||14:00||Background reading|
Teaching Rationale And Relationship
Lectures are used for the delivery of theory and explanation of methods, illustrated with examples, and for giving general feedback on marked work. Practicals are used both for solution of problems and work requiring extensive computation and to give insight into the ideas/methods studied. A practical is associated with each lecture in order to provide sufficient hands-on training and rapid feedback on understanding.
The format of resits will be determined by the Board of Examiners
|Practical/lab report||1||M||45||Up to 3 programming assignments (1000 words as specified for each report|
|Report||1||M||55||Software development project and report. (Word count: up to 1500 words)|
Assessment Rationale And Relationship
Programming assignments (approximately 3 pieces of work of approximately equal weight) followed by a larger piece of project work allow the students to develop their problem solving techniques, to practise the methods learnt in the module, to assess their progress and to receive feedback; the smaller pieces of work are thus formative as well as summative assessment.
The semi-structured interview facilitates a reflective discussion about how individual students have met the learning objectives of the module and how the principles of fundamental statistics are embedded in the functionality of their project work.