Instructor - Prof. S. R. Kodituwakku

This course provides you necessary background in Computer Programming. The course spans through 15 weeks. During this period, you learn about the fundamentals of programming including vocabulary, syntax and semantics, control structures, compilation and execution of programs, error handling and good programming practices. In order to understand concepts and to practice them, we discuss syntax and semantics of popular Java programming language. Therefore, more emphasis is given for object oriented programming concepts such as abstraction, encapsulation, inheritance, objects, classes, interfaces, packages etc.

Although the Java language is used to demonstrate how each concept can be used in design and implementing programs you would be able to use any object oriented programming language. 


This course provides you necessary background to develop software systems. The topics include: Introduction to Software and Software Engineering, Software Process models, Requirement Engineering, Software Design, Software Implementation, Software Testing and Software Maintenance.


This course provides you necessary background to construct and manipulate databases. The topics inludes: introcution to databases and database managements, architecture of databases, characteristics of database approach, database modeling: entity relationship modeling & relational modeling, SQL, transaction processing and indexing.