## CM20318: Comparative programming languages

[Page last updated: 20 April 2021]

Owning Department/School: Department of Computer Science
Credits: 6      [equivalent to 12 CATS credits]
Notional Study Hours: 120
Level: Intermediate (FHEQ level 5)
Period:
Semester 2
Assessment Summary: EX100
Supplementary Assessment:
Like-for-like reassessment (where allowed by programme regulations)
Requisites: Before taking this module you must take CM10228 AND take CM10311
Aims: To introduce students to a mathematical basis to support computer science in general and other Computer Science units in particular.
To provide a systems-based understanding of data, data modelling, storage, access, retrieval and protection.

Learning Outcomes: 1. Calculate and reason with sets, functions and relations using the language of set theory.
2. Write formal propositional and predicate calculus formulae to express mathematical assertions, reason formally, and recognise when formulae are correct.
2. Recognise and reason about elementary number theory.
4. Recognise rigorous mathematical proofs in ordinary mathematical language and write elementary proofs
5. Demonstrate understanding of the nature, capture, formal description and representation of data and its processing.
6. Be conversant with emerging database developments such as big data, data mining, and cloud-based data storage, and be able to critically review their professional, legal and ethical implications.

Skills: Use of IT (T/F, A), Problem Solving (T/F, A), Application of Number (T/F,A)

Content: Propositional and predicate calculus.
Sets, functions, and relations (e.g. injections, surjections, bijections, and relational composition).
Elementary number theory (e.g. prime numbers, induction and modular arithmetic, rational numbers).
Basic mathematical proofs using induction.
Data modelling methodologies (e.g. UML and relational and non-relational models).
Data management and exchange techniques (e.g. relational algebra, SQL, normalization, and XML).
Datamining, big data and pattern discovery in large datasets.
Cloud-based, distributed data storage and its professional, legal and ethical implications.

Programme availability:

#### CM20318 is Compulsory on the following programmes:

Department of Computer Science
• USCM-AFB06 : BSc(Hons) Computer Science (Year 2)
• USCM-AAB07 : BSc(Hons) Computer Science with Study year abroad (Year 2)
• USCM-AKB07 : BSc(Hons) Computer Science with Year long work placement (Year 2)
• USCM-AFB20 : BSc(Hons) Computer Science and Mathematics (Year 2)
• USCM-AAB20 : BSc(Hons) Computer Science and Mathematics with Study year abroad (Year 2)
• USCM-AKB20 : BSc(Hons) Computer Science and Mathematics with Year long work placement (Year 2)
• USCM-AFM01 : MComp(Hons) Computer Science (Year 2)
• USCM-AAM02 : MComp(Hons) Computer Science with Study year abroad (Year 2)
• USCM-AKM02 : MComp(Hons) Computer Science with Year long work placement (Year 2)
• USCM-AFM14 : MComp(Hons) Computer Science and Mathematics (Year 2)
• USCM-AAM14 : MComp(Hons) Computer Science and Mathematics with Study year abroad (Year 2)
• USCM-AKM14 : MComp(Hons) Computer Science and Mathematics with Year long work placement (Year 2)

 Notes: This unit catalogue is applicable for the 2021/22 academic year only. Students continuing their studies into 2022/23 and beyond should not assume that this unit will be available in future years in the format displayed here for 2021/22. Programmes and units are subject to change in accordance with normal University procedures. Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules.Find out more about these and other important University terms and conditions here.