Level – 1G
Course units effective from academic year 2016/2017 to date
Course Code:  CSC101G3  
Course Title:  Foundations of Computer Science  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide logical and mathematical foundations of computer science, and illustrate the use of formal languages in computer science  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Use of chalkboard, Vocabulary drills, Flowcharts, Recitation oral questions, Timelines, Photographs, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC102G3  
Course Title:  Computer Programming I  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
—  135  165  
Objectives:  Provide fundamentals of programming concepts in Java and introduce the concepts of objectoriented programming  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Laboratory experiments, Supervised study, Practical records, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC103G2  
Course Title:  Multimedia Technologies  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth knowledge in technologies to develop multimediabased contents  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, recitation of oral questions, use of chalkboard and multimedia presentations  
Assessment Strategy: 


References: 

Course Code:  CSC104G2  
Course Title:  Design of Algorithms  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth knowledge in different algorithmic approaches for problem solving  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, class discussions, textbook assignments, laboratory practical  
Assessment Strategy: 


References: 

Course units effective from academic year 2013/2014 to 2016/2017
Course Code  CSC111GC3 
Course Title  Foundations of Computer Science 
Academic Credits  03 (45 Hours of lectures and tutorials) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code  CSC112GC3 
Course Title  Computer Programming I 
Academic Credits  03 (135 Hours of practical and assignments) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code  CSC113GC2 
Course Title  Data Structures and Algorithms I 
Academic Credits  02 (30 hours of lectures and tutorials) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course units effective from academic year 2003/2004 to 2013/2014
Course Code  CSC101GC2 
Course Title  Foundations of Computer Science 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC102GC2 
Course Title  Object Oriented Programming 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC104GC2 
Course Title  Practical Computing I 
Academic Credits  02 (90 hours of Practical) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC105GC2 
Course Title  Computer Networks and Internet Computing 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course unit effective from academic Year 2003/2004 to 2010/2011
Course Code  CSC103GC2 
Course Title  Computer Networks and Internet Computing 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course units before academic year 2003/2004
Introduction to Computing: Functional parts of computer, Representation of information in a of computers, Concept of Programming and Programming languages, Input and output devices, An overview of computer Applications, Classification of computers and Computer Systems, Concepts of Algorithms.
Pascal Programming: Basic concept of data and data types, standard types in Pascal, Type statement, Variable declaration, Input/output statement in Pascal, Control structure in Pascal, Array declaration, Sub Program declaration, in Pascal.
Topdown design, Modular design, Stepwise refinement structure Charts, Writing structured programming using Pascal.
Mathematical Reasoning, Set theory, Propositional logic, Boolean algebra, Number systems, Relations and functions, Combinatorial circuits, Difference equation, Linear algebra, Coordinate Geometry and coordinate transformation, Probability theory, Graph theory, Automata languages, Turing machines, Algorithm analysis.
Computer System Organisation: Representation of data, Internal Architecture of CPU instruction sets and addressing, principles of data 1/0, microprocessor systems.
Assembly Language Programming: Detail of an instruction set of a microprocessor and writing simple program.
Computer Input/Output System: Secondary storage, I/O interfaces peripheral devices, Computer communications, Principles and Techniques.
(Prerequisites: CSG 11, CSG12)
Arrays, Lists, Stacks, Ques, Trees, Graphs, Files and their Applications in Computer Science, Recursion.
Sorting Algorithms: Elementary methods such as Selection sort, Bubble sort, etc., advanced sorting methods such as Tree sort, Quick sort, Heap sort, etc., Study their computation complexity.
(Prerequisites: CSG 11, CSG12)