The Bachelor of Science Honours in Computer Science degree programme offered by the Faculty of Computing and Technology is a four-year programme aligned with the recommendations of the Standing Committee on Computing of the University Grants Commission (UGC), and the guidelines stipulated by the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronic Engineers (IEEE). The student intake for this degree programme is 50 at present.
This programme provides students with solid knowledge on theoretical concepts in the domain of Computer Science. This degree programme also provide the necessary skills and knowledge required to design and implement complex software and hardware systems through supporting hands-on laboratory sessions.
The Bachelor of Science Honours in Computer Science degree programme offered by the Faculty of Computing and Technology (FCT) has a strong focus on practical applications of Computer Science with the view of preparing highly marketable graduates for a wide variety of industrial applications expected by the ever growing high-end IT industry in Sri Lanka.
Incorporation of specialized application areas such as Information Security, Artificial Intelligence, Data Science and Analytics, Database Management, Virtualization and Cloud Computing, Network Management, Wireless and Mobile Communications, Web and Internet Programming, Mobile Application Development, Data Structures and Algorithms, Automata, and Virtual Reality to the curriculum provides ample flexibility for students to specialize in their own areas of interest.
Depending on the student’s interest, a student will be able to follow a standard four year Computer Science degree programme or a special degree from third year on specialization areas such as Cyber Security, Data Science, Artificial Intelligence and Scientific Computing.
Students will get an opportunity to work in the industry for six months through the compulsory internship programme to be completed in the 4th year as partial requirement to obtain the degree. The medium of instructions and examinations is English.
Course Code | Title | Pre - Requisites | Credits | Compulsory/ Optional |
CSCI 11014 | Mathematics for Computer Science – I | G.C.E. (A/L) | 4 | Compulsory |
CSCI 11023 | Fundamentals of Statistics | G.C.E. (A/L) | 3 | Compulsory |
CSCI 11032 | Structured Programming – I | G.C.E. (A/L) | 2 | Compulsory |
CSCI 11042 | Fundamentals of Digital Electronics | G.C.E. (A/L) | 2 | Compulsory |
CSCI 11052 | Web Fundamentals | G.C.E. (A/L) | 2 | Compulsory |
CSCI 11062 | Introduction to Database Management Systems | G.C.E. (A/L) | 2 | Compulsory |
CSCI 11072* | Foundations in Computer Science | G.C.E. (A/L) | 2 | Optional |
DELT 13302* | English for Computing and Technology | G.C.E. (A/L) | 2 | Compulsory |
Course Code | Title | Pre - Requisites | Credits | Compulsory/ Optional |
CSCI 12013 | Mathematics for Computer Science – II | CSCI 11014 | 3 | Compulsory |
CSCI 12022 | Probability Distribution and Applications | CSCI 11023 | 2 | Compulsory |
CSCI 12033 | Computer Architecture & Design | CSCI 11014 | 3 | Compulsory |
CSCI 12042 | Structured Programming - II | CSCI 11032 | 2 | Compulsory |
CSCI 12052 | Fundamentals of Operating Systems | CSCI 11014 | 2 | Compulsory |
CSCI 12063 | Web Programming | CSCI 11052 | 3 | Compulsory |
Course Code | Title | Pre - Requisites | Credits | Compulsory/ Optional |
CSCI 21013 | Statistical Inference | CSCI 12022 | 3 | Compulsory |
CSCI 21023 | Data Communication and Networks | CSCI 11014, CSCI 11032 |
3 | Compulsory |
CSCI 21033 | Data Structures and Algorithms | CSCI 12042 | 3 | Compulsory |
CSCI 21042 | Software Engineering | CSCI 12042 | 2 | Compulsory |
CSCI 21052 | Object Oriented Programming - I | CSCI 12042 | 2 | Compulsory |
CSCI 21062 | Advanced Database Management Systems | CSCI 12062 | 2 | Compulsory |
CSCI 23072 | Group Project | Compulsory units in Year 1 | 2 | Compulsory |
DELT 21212* | English for the World | DELT 13302 | 2 | Compulsory |
MGMT 21012* | Principles of Management | G.C.E. (A/L) | 2 | Compulsory |
Course Code | Title | Pre - Requisites | Credits | Compulsory/ Optional |
CSCI 22012 | Statistics for Decision Making | CSCI 21013 | 2 | Compulsory |
CSCI 22022 | Advanced Operating Systems | CSCI 12052 | 2 | Compulsory |
CSCI 22032 | Object Oriented Analysis and Design | CSCI 21042 | 2 | Compulsory |
CSCI 22042 | Visual Programming | CSCI 21052 | 2 | Compulsory |
CSCI 22052 | Introduction to Artificial Intelligence | CSCI 12013 | 2 | Compulsory |
CSCI 22062 | Introduction to Cyber Security | CSCI 21023 | 2 | Compulsory |
CSCI 22072 | Mobile Application Development | CSCI 21052, CSCI 12063 |
2 | Optional |
CSCI 22082 | Object Oriented Programming - II | CSCI 21052 | 2 | Compulsory |
MGMT 22012* | Human Resource Management | MGMT 21012 | 2 | Compulsory |
Course Code | Title | Pre - Requisites | Credits | Pathway No. | ||||
1 | 2 | 3 | 4 | 5 | ||||
CSCI 31014 | Mathematics for Computer Science III | CSCI 12013 | 4 | C | C | C | C | C |
CSCI 31022 | Machine Learning and Pattern Recognition | CSCI 22052 | 2 | O | C | C | C | C |
CSCI 31032 | Theory of Programming Languages | CSCI 21033 | 2 | O | O | O | O | C |
CSCI 31042 | Advanced Data Structures and Algorithms | CSCI 21033 | 2 | O | C | O | O | O |
CSCI 31052 | Project Management | CSCI 21042 | 2 | O | O | O | O | O |
CSCI 31062 | Semantic Web and Ontological Modeling | CSCI 12063 | 2 | O | O | O | O | |
CSCI 31072 | Python Programming | CSCI 12042 | 2 | O | C | O | O | O |
CSCI 31082 | Systems and Network Administration | CSCI 21023, CSCI 22022 |
2 | C | O | O | O | O |
CSEC 31012 | Applied Cryptography | CSCI 12013 | 2 | C | O | |||
CSEC 31022 | Data and Systems Security | CSCI 22022, CSCI 21062 |
2 | C | O | |||
AINT 31012 | Natural Language Processing | CSCI 22052 | 2 | O | C | O | ||
AINT 31022 | Deductive Reasoning and Logic Programming | CSCI 12013 | 2 | C | O | C | ||
SCOM 31013 | Numerical Analysis and Scientific Programming | CSCI 12013, CSCI 12042 |
3 | C | ||||
SCOM 31022 | Scientific Visualization | CSCI 12013, CSCI 12042 |
2 | C | ||||
SCOM 31032 | Mathematical Modeling | CSCI 12013, CSCI 12042 |
2 | C | ||||
DELT 33212* | English for Professional Purposes | DELT 21212 | 2 | C | C | C | C | C |
MGMT 31012* | Introduction to Entrepreneurship | MGMT 22012 | 2 | C | C | C | C | C |
Course Code | Title | Pre - Requisites | Credits | Pathway No. | ||||
1 | 2 | 3 | 4 | 5 | ||||
CSCI 32012 | Theory of Automata | CSCI 12013 | 2 | C | C | C | C | C |
CSCI 32022 | Human Computer Interaction | CSCI 21042 | 2 | C | C | C | C | C |
CSCI 32032 | Research Methodology and Scientific Communication | CSCI 22012 | 2 | C | C | C | C | C |
CSCI 32042 | Social and Professional Issues | CSCI 21042 | 2 | C | C | C | C | C |
CSCI 32052 | Distributed Systems & Cloud Computing | CSCI 12063 | 2 | C | O | O | C | O |
CSCI 32062 | Computer Graphics | CSCI 12013 | 2 | O | O | C | C | C |
CSCI 32073 | Introduction to Game Development | CSCI 21033 | 2 | O | O | O | ||
CSCI 32083 | Stochastic Processes | CSCI 21013 | 2 | O | C | O | O | O |
CSCI 32092 | Data Mining and Warehousing | CSCI 21062 | 2 | O | C | O | O | O |
CSEC 32012 | Wireless Communications and Networking | CSCI 21023 | 2 | C | O | O | O | O |
CSEC 32022 | Advanced Computer Communication and Networking | CSCI 21023 | 2 | C | O | O | ||
CSEC 32032 | Network Security | CSEC 31022 | 2 | C | O | |||
DSCI 32012 | Advanced Database Applications | CSCI 21062 | 2 | O | C | O | O | C |
AINT 32012 | Digital Image Processing and Computer Vision | CSCI 12013 | 2 | C | O | O | ||
AINT 32022 | Complex Systems & Agent Technology | CSCI 22052 | 2 | O | C | O | ||
SCOM 32012 | Parallel Computing | CSCI 21023 | 2 | O | O | O | C | O |
Course Code | Title | Pre - Requisites | Credits | Pathway No. | ||||
1 | 2 | 3 | 4 | 5 | ||||
CSCI 43018 | Research Project | All compulsory course units | 8 | C | C | C | C | C |
CSCI 44026 | Industrial Training | All compulsory course units | 6 | C | C | C | C | C |
CSCI 44032 | Mobile Computing | CSEC 32012 | 2 | O | O | O | O | O |
CSCI 44042 | Theory of Computability and Complexity | CSCI 32012 | 2 | O | O | O | ||
CSCI 44052 | Software Quality and Automation | CSCI 21042 | 2 | O | ||||
CSCI 44062 | Software Architecture and Design | CSCI 21042 | 2 | O | ||||
CSCI 44072 | Computer Modelling and Simulation | CSCI 32062 | 2 | O | O | O | ||
CSCI 44082 | Emerging Technologies in Computing | All compulsory course units | 2 | O | O | O | O | O |
CSCI 44092 | Enterprise Application Development | CSCI 21042 | 2 | O | O | O | O | O |
CSCI 44103 | Advanced Compilers | CSCI 31032 | 3 | O | O | |||
CSCI 44112 | Introduction to Quantum Computing | CSCI 22052 | 2 | O | O | O | O | O |
CSEC 44012 | Internet of Things | CSCI 21023 | 2 | C | O | O | O | O |
CSEC 44022 | Information Security Management and Auditing | CSCI 22062 | 2 | C | O | |||
CSEC 44032 | Cyber Crime and Forensics | CSCI 22062 | 2 | C | O | O | O | |
CSEC 44042 | Security Analytics | CSEC 31012 | 2 | C | ||||
CSEC 44052 | Cyber Laws and Standards | CSCI 22062 | 2 | O | O | O | O | |
CSEC 44062 | Ethical Hacking and Vulnerability Analysis | CSEC 31022,CSEC 32032 | 2 | C | ||||
CSEC 44072 | Secure Software Engineering | CSEC 31022 | 2 | C | O | |||
CSEC 44082 | Information & Coding Theory | CSCI 22062 | 2 | O | O | |||
CSEC 44092 | Mobile & IOT Security | CSEC 31012 | 2 | O | ||||
CSEC 44102 | Advanced Cryptography | CSEC 31012 | 2 | O | ||||
DSCI 44012 | Python for Data Science | CSCI 31072 | 2 | C | O | O | ||
DSCI 44022 | Data Visualization | CSCI 32092 | 2 | C | ||||
DSCI 44033 | Big Data Analytics | CSCI 32092 | 3 | C | ||||
DSCI 44042 | NoSQL Databases | DSCI 32012 | 2 | O | O | |||
DSCI 44052 | Time Series Analysis for Data Science | CSCI 21013 | 2 | C | O | O | O | |
DSCI 44062 | Big data Architecture & Management | CSCI 32052 | 2 | O | O | O | ||
DSCI 44072 | Geographical Information Systems | CSCI 31042 | 2 | O | ||||
AINT 44012 | Artificial Neural Networks | CSCI 31022 | 2 | O | O | C | O | O |
AINT 44022 | Fuzzy Logic | CSCI 31014 | 2 | O | O | C | O | O |
AINT 44032 | Deep Learning | CSCI 31022 | 2 | O | C | O | ||
AINT 44042 | Machine Translation | AINT 31012 | 2 | C | ||||
AINT 44052 | Intelligent Autonomous Robotics | CSCI 32022 | 2 | C | O | O | ||
AINT 44062 | Computational Cognitive Science | AINT 31022 | 2 | O | ||||
AINT 44072 | Introduction to Virtual Reality | CSCI 32062 | 2 | O | O | O | ||
SCOM 44012 | High Performance Computing | SCOM 32012 | 2 | O | O | O | C | O |
SCOM 44022 | Advanced Numerical Analysis and Scientific Programming | SCOM 31013 | 2 | C | ||||
SCOM 44033 | Survey of Materials Simulation Methods | CSCI 12042, CSCI 31014 | 3 | O | ||||
SCOM 44043 | Finite Element Methods in Scientific Computing | CSCI 12042, CSCI 31014 | 3 | O | ||||
SCOM 44052 | Finite Element Methods in Scientific Computing | CSCI 32062 | 2 | O |