BSc (Hons) Software Engineering Degree
BSc (Hons) in Software Engineering program is concerned with the development and maintenance of software systems that behave reliably and efficiently. This program is different in character from other engineering disciplines due to both the intangible nature of software and the discontinuous nature of software operation. Modules of this program seeks to integrate the principles of mathematics and computer science with the engineering practices developed for tangible,physical artifacts.
Degree programs in software engineering have many courses. This program offers more about software reliability and maintenance and focus more on techniques for developing and maintaining software that is correct from its inception. The curriculum has been designed according to ACM/IEE international standard and it has been approved by the University Grants Commission of Sri Lanka.
Curriculum Details
Module Code | Module Name |
Semester 01 | |
CS1013 | Fundamentals of Programming |
CS1022 | Foundation of Computer Science |
CS1032 | Computer Systems Architecture |
CS1043 | Fundamentals of Databases |
CS1052 | Fundamentals of Visual Computing |
CM1012 | Probability and Statistics |
CM1022 | Engineering Mathematics |
DL1172 | Basic Study Skills in English |
COE1993 | Group Project in Hardware |
MS1014 | Military Studies |
Semester 02 | |
CS1062 | Developments in Mathematics & Sciences |
CS1073 | Object Oriented Programming I |
CS1082 | Web Development |
CS1092 | Computer Networks I |
EE1102 | Fundamentals of Electrical Engineering |
ET1102 | Basic Electronics |
CM1032 | Discrete Mathematics |
COE1993 | Group Project in Hardware |
MS1024 | Military Studies |
Module Code | Module Name |
Semester 03 | |
CS2013 | Data Structures and Algorithms |
CS2022 | Operating Systems |
CS2032 | Object Oriented Programming II |
CS2042 | Computer Networks II |
CS2052 | Requirement Engineering |
EE2122 | Electronics System |
CM2013 | Calculus & Numerical Methods |
CS2993 | Group project in Software Development |
MS2044 | Military Studies |
Semester 04 | |
CS2062 | Data Structures and Algorithms II |
CS2072 | Advance Computer Architecture & Organization |
CS2082 | Artificial Intelligence |
SE2012 | Software Project Management |
SE2022 | Software Process Engineering |
CM2022 | Statistical Distributions and Inference |
EE2222 | Computer Interfacing & Microprocessors |
CS2993 | Group project in Software Development |
MS2024 | Military Studies |
Module Code | Module Name |
Semester 05 | |
SE3012 | Engineering Foundation for Software |
SE3022 | Software Modeling |
SE3032 | Software Construction Technologies and Tools |
SE3042 | Software Design and Architecture |
CS3012 | Human Computer Interaction |
CS3052 | Essentials of Computer law |
CS3023 | Advanced database and Big Data Analytics |
Elective Modules (One Module) | |
CS3092 | Computer & Network Security |
CS3042 | Image Processing & Computer Vision |
CS3062 | Research Methodlogy |
CS3072 | Logic Programming |
CS3082 | Mobile Computing |
Semester 06 | |
SE3052 | Engineering Economics for Software |
SE3062 | Software Verification and Validation |
SE3072 | Software Process |
CS3162 | Social Aspects of Computing |
SE3992 | Independent Study |
Elective Modules (Four Module) | |
CS3172 | Digital Forensic |
CS3112 | Computer Graphics & Visualization |
CS3122 | Automata Theory |
CS3152 | Information Security |
CS3132 | High Performance Computing |
CS3142 | Complex Systems and Agent Technology |
Module Code | Module Name |
Semester 07 | |
SE4012 | Formal Methods and Software verification |
SE4022 | Software Evolution |
SE4032 | Software Quality |
SE4999 | Individual Research Project |
Elective Modules (Four Modules) | |
CS4012 | Emerging Trends in Computing |
CS4022 | Theory of Programing Languages |
CS4032 | Natural Language Processing |
CS4062 | Artificial Cognitive Systems |
CS4052 | Compilers Design |
CS4082 | Semantic web & Ontology |
CS4092 | Distributed Systems |
CM4012 | Advanced topics in Statistics |
Semester 08 | |
SE4996 | Industrial Training |