Upload
duongnhi
View
222
Download
2
Embed Size (px)
Citation preview
1
COURSE CODE : COSC 11014
TITLE : Theoretical Foundations of Computer Science
PRE-REQUISITES : G.C.E (A/L)
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to demonstrate a good understanding
of fundamental theoretical aspects of Computer Science.
COURSE CONTENT:
Main components of a Computer: I/O devices, CPU, Memory; Organization of a Computer,
Secondary Storage devices and types of Secondary Storage; Classification of Computers;
Generations of Computers; Software: Systems Software and Application Software; Operating
Systems, functions and types of operating systems; Utility Programs, Translators (compilers,
interpreters, assemblers); Application Software Packages; Application Programs: Algorithms,
Computer programs, Computer programming Languages; Generations of programming
languages; Number Systems: Decimal, Binary, Octal and Hexadecimal; Conversions between
number systems; Use of number systems; Binary addition and subtraction; Representation of
Characters: ASCII, EBCDIC, Unicode; Representation of Numbers: Whole numbers and
Floating-point numbers, Sign-magnitude form, Two’s complement form, Scientific form,
Standard form; Introduction to Computer Networks: LAN, MAN, WAN; Types of Computer
networks: Bus, Star, Ring and Tree topologies; Advantages and disadvantages of computer
networks; Networking and Internetworking devices and their functions; Need for standard
protocols; Data transmission; Introduction to the Internet; Services available on the Internet:
World Wide Web (WWW) and E-mail; Web browsers and Search engines; Effective use of e-
mail; Information Systems: Types of Information Systems, Systems Development Life Cycle
(SDLC); Social, Ethical, Legal and Economic impacts of the use of computers; Computer crime.
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
assignments.
ASSESSMENT: End of semester examination and assignments.
RECOMMENDED READING:
1. Peter Norton, Introduction to Computers (2006, 6th Edition), Tata McGraw-Hill
Publishing Company Limited, India.
2. June Jamrich Parsons and Dan Oja, New Perspective on Computer Concepts (2003, 6th
Edition), Course Technology a division of Thomson learning Inc.
3. B. Ram, Computer Fundamentals : Architecture and Organization (2005, 3rd Edition),
New Age Publications, India.
2
COURSE CODE : COSC 12025
TITLE : Introduction to Programming and Program Design
PRE-REQUISITES :COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to demonstrate a good understanding
of structured computer programming concepts, algorithm designing and writing structured
programs using a procedural language.
COURSE CONTENT: Introduction to Programming: A brief history and types of programming languages.
Program Design: Introduction to software development, Algorithms, Algorithm specifications
(flow charts, N-S diagrams and pseudo code), Modular programming concepts, Elegance in
program design, Implementing an algorithm using a programming language, Program testing and
program documentation.
The C programming language: Data types, Constants, Identifiers, Variables, Expressions and
assignment, Input and output, Control structures, Functions, Storage classes, Pointers, Scope of
arguments, Structured data types (arrays, structures, unions), Programmer defined data types,
Recursion, File processing, Multi-file programming, Bit manipulation and enumerations, C
preprocessor and advanced features of C language.
Practical Sessions: Programming using C.
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
practical sessions.
ASSESSMENT: End of semester examination , practical examination and assignments.
RECOMMENDED READING:
1. Gottfried, B.S. Schaum's Outline of Theory and Problems of Programming in C , (2001,
2nd Edition), McGraw Hill Professional Publishing.
2. Kelly, A. and Pohl, I. A Book on C: Programming in C, (1999, 4th Edition), Addison
Wesley Longman Inc.
3. Rajaraman, V. , Computer Programming in C (2004, 6th Edition), Prentice Hall.
3
COURSE CODE : COSC 21015
TITLE : Data Structures and Algorithms
PRE-REQUISTIES : COSC 12025
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to demonstrate a good knowledge on
abstract data types in structured programming, implement and analyze commonly used searching
and sorting algorithms.
COURSE CONTENT:
Introduction to Data structures: A general introduction to data structures, The need for data
structures in programming, Data types, Data structures and abstract data types, Homogeneous
and heterogeneous structures, Static and dynamic structures;
Structures to be considered: Stacks, Queues, Deques, Lists, Trees and Graphs.
Searching Technique: Linear Search and Binary Search;
Sorting Techniques: Internal and External Sorting, Exchange (Bubble) Sort, Insertion Sort,
Selection Sort, Shell Sort, Quick Sort, Heap Sort, Merge Sort and Radix Sort;
Hashing Techniques;
Analysis of Algorithms: Analysis of searching and sorting algorithms, Efficiency of various
sorting algorithms and the need for external sorting.
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
practical sessions.
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING:
1. Kelley, AI & Pohl, Ira, A Book on C, (l998, 4th Edition) Addison-Wesley.
2. Kruse R.L., Leung B. P. and Tondo C. L., Data Structures and Program Design (2001),
Pearson Education (Singapore) Pte. Ltd.
3. Gottfried, B., Programming with C. (l999, 2nd Edition), Tata McGraw-Hill Company Ltd.
4. Rajaraman, V., Computer Programming in C, (1994), Prentice-Hall of India (Pvt) Ltd.
5. Langsam Y., Augenstein M. J. and Tenenbaum A. M., Data Structures using C and C++
(2002, 2nd Edition), Pearson Education (Singapore) Pte. Ltd.
4
COURSE CODE : COSC 22025
TITLE : Database Management Systems
PRE-REQUISITIES : COSC 21015
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student will be able to demonstrate the theoretical
knowledge of basic concepts of Database Management Systems and practical skills on
applications of them.
COURSE CONTENT:
Introduction to database systems: Database system concepts and architecture, Three tire
architecture and mapping; Data Modeling: Entity-Relationship (ER) model and Enhanced Entity-
Relationship (EER) model; Relational model: Introduction to the relational model, Relational
constraints, Normalization approach for relational database design (first, second, third and BCNF
normal forms), Advantages and disadvantages of the normalization approach; Logical database
design: ER to relational mapping and EER to relational mapping, Data Manipulation: Relational
algebra and relational calculus, Data Manipulation using SQL, Query Processing and
Optimization; Security and integrity in databases; Physical database design: Introduction to
transaction management in databases, Storing data and primary file organization, File
organization and indexes (primary, secondary, clustering and multilevel indexes), Dynamic
index structure B+ trees; Web based Database Design and Implementation: XML Data, XML
Data Model, XPATH Language, XQuery Language, XML and Relational Databases, Normal
Form for XML Data, Web based Database Applications
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
practical sessions.
ASSESMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING:
1. Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems (2006,5th
Edition),Addison-Wesley Longman Publishing Co., Inc.
2. Fred R. McFadden, Jeffrey A. Hoffer, and Mary B. Prescott, Modern Database
Management (2006, 8th Edition), Pearson Education Series.
3. Ramakrishnan G, Database Management Systems, (2002, 3rd edition), McGraw-Hill.
4. Gary W. Hansen and James V. Hansen, Database Management and Design (2nd Edition,
2002), Prentice Hall.
5. Michael Brundage, XQuery: The XML Query Language (2004), Addison Wesley
Longman Publishing Co., Inc.
5
COURSE CODE : COSC 22035
TITLE : Object Oriented Programming
PRE-REQUISITES : COSC 12025
CO-REQUISITES : None
LEARNING OUTCOMES:
On successful completion of this course module the student will be able to demonstrate an
understanding of the theory of object–oriented systems, be able to demonstrate how an object-
oriented programming language upholds object-oriented concepts and effectively use an industry
relevant object-oriented programming language.
COURSE CONTENT: Background and motivation of Object Oriented Methods, Concepts of Object-Oriented project
management issues, Principles and features of an industry standard Object-Oriented
Programming language (e.g.: Java/C++). Specific topics include Class and Object models,
Object declaration and creation, Instantiable classes, Visibility modifiers, arrays of objects, Self-
referencing pointers, Re-use of code, Static methods, Arithmetic Expressions, Variables, Scope,
Event-Driven Input and Output, File Objects and Looping Statements, Primitive and reference
types, Strings, Use of String buffer, Passing objects as parameters, Exceptions and Additional
Control Structures, Inheritance, Polymorphism, Encapsulation, Selection, collaboration,
hierarchical classification, using super, creating multilevel hierarchy, method overriding, using
abstract classes, use of final and other relations among classes and objects as well as both static
and dynamic system models and implementations.
Practical Sessions: Programming using Java/C++
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
practical sessions.
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING: 1. Booch, Rumbaugh and Jacobson., The Unified Modeling Language User Guide,(1996)
Pearson Education.
2. Eriksson and Penker., UML Toolkit, (1998), John Wiley & Sons.
3. Wu, T. An Introduction to Object-Oriented Programming with Jav,. (2001, 2nd Edition),
McGraw Hill.
4. Gamma et at. , Design Patterns: Elements of Reusable Object-Oriented Software, (1995)
Addison-Wesley, Reading, MA.
6
COURSE CODE : COSC 31014
TITLE : Data Communication and Networks
PRE-REQUISITES : COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this unit the student should be able to examine the use of computer networks and to
identify the forces behind their development, and be able to demonstrate a good understanding of
the design and implementation of various network topologies, architectures, protocols and
algorithms.
COURSE CONTENT:
Introduction: Data Communication, Network structures, Types of networks, The Internet,
Protocols and standards, Layers of the OSI model;
The physical layer: Transmission media (guided and unguided), analog and digital transmission,
Transmission impairment, Encoding techniques, Modulation techniques and Modems,
Multiplexing, Circuit switching; Telephone Networks and DSL technology;
The medium access sub-layer: Ethernet (CSMA/CD), token bus, token ring and FDDI;
The data link layer: Framing, error detection and correction, error control and flow control and
data link protocols;
The network layer: Addressing, Routing algorithms, Internetworking and network layer
protocols;
The transport layer: Transport layer protocols (UDP and TCP) and connection management;
The session layer: Token management and synchronization.
The presentation layer: Data compression, data security and encryption.
The application layer: Client-Server model, Application level protocols for File transfer,
Electronic mail, Network management, Hypertext transfer and World Wide Web;
Advanced telecommunication services and developments: ISDN, Frame Relay Networks, ATM
Networks, packet switching and X.25 Networks;
LAN, MAN , WAN and Networking software;
Networking and Internetworking Devices.
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials and
assignments.
ASSESSMENT: End of course examination, assignments and/or practical examination.
RECOMMENDED READING:
1. Forouzan B. A., Data Communications and Networking, (2004, 4nd Edition), McGraw
Hill.
2. Forouzan B. A., Local Area Networks, (2002, 1st Edition), Tata McGraw Hill Edition.
3. Stallings W., Data and Computer Communications, (2002, 6th Edition), Pearson
Education Inc.
4. Tanenbaum A.S., Computer Networks, (1996, 3rd Edition), Prentice-Hall International.
7
COURSE CODE : COSC 32025
TITLE : Web and Internet Technologies
PRE-REQUISITIES : COSC 31014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student will be able to demonstrate the theoretical
knowledge of basic concepts of Web and Internet Technologies and practical skills in their usage
in critical system development.
COURSE CONTENT:
Overview of the Internet: 7 Layer Architecture, Addressing, Routing, Control protocols,
Application Layer Services etc; Web technologies: Overview of HTTP and Web Servers,
HTML, CSS, Client side scripting, Server side scripting, three tier application development;
Internet technologies: Overview of Distributed Systems, Theory and Practice of Internet
Application Development, Hyper Text Transfer Protocol (HTTP) Programming, Web Servers,
Browsers, Downloading Utilities, Proxy Servers, Caching, User Tracking, Site Maintenance,
Search Engines, Web Crawlers, Programming using Email Protocols, Application Service
Providers (ASPs), Internet Service Providers (ISPs), Firewalls, FTP, Telnet, Tracert, Wireless
Web Access, eXtended Markup Language (XML), VoiceXML, ebXML & UBL; Web Services:
Overview of Web Services, Web Services Frameworks and their Performance, Simple Object
Access Protocol (SOAP), Web Services Description Language (WSDL), Web Services Security,
Wireless Web Services; e-Commerce: overview of e-Commerce, e-Business strategies and
models, Business and Marketing tools for e-Business, e-Marketing and e-Ethics, e-Business
laws
METHOD OF TEACHING AND LEARNING: A combination of lectures, practicals and
tutorials.
ASSESMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING:
1. Jeffrey C. Jackson, Web Technologies: A Computer Science Perspective (2006), Prentice
Hall.
2. Alison Cawsey and Rick Dewar, Internet Technology and E-Commerce, Palgrave
Macmillan.
3. Anders Mller and Michael I. Schwartzbach, An Introduction to XML and Web
Technologies (2006), Addison-Wesley Longman Publishing Co.
4. Paul J. Deitel, Tem R. Nieto, and Deitel, The Complete Internet and World Wide Web
Programming Training Course (2nd Edition), Prentice Hall.
5. Simon St. Laurent, Edd Dumbill and Joe Johnston, Programming Web Services with
XML-RPC, O'Reilly.
6. Sebesta and Robert W, Programming the World Wide Web (4th Edition, 2007), Addison
Wesley.
7. Chris Bates , Web Programming: Building Internet Applications (2003), John Wiley &
Sons, Inc
8
8. Harvey M. Deitel, Paul J. Deitel and Andrew B. Goldberg, Internet & World Wide Web
How to Program (3rd Edition), Prentice-Hall, Inc.
9. Matthew W. Guah and Wendy Currie, Internet Strategy: The Road to Web Services
Solutions, Idea Group Inc (IGI)
10. David Wood and Mark Stone, Programming Internet Email, O'Reilly.
11. Jean Andrews, i-Net+ Guide to Internet Technologies, Course Technology.
COURSE CODE : COSC 32035
TITLE : Visual Programming
PRE-REQUISITIES : COSC 21015
CO-REQUISITES : None
LEARNING OUTCOMES:
On successful completion of this course module the student will be able to demonstrate a good
understanding of visual computer programming and algorithm designing. They will be able to
demonstrate the ability to apply conventional structured programming techniques to the code
written for event driven procedures.
COURSE CONTENT: Introduction to Visual Programming: A brief history and types of programming languages, use of
an Integrated Development Environment, basic language facilities; events, errors and exceptions;
Facilities for building GUI interfaces: Form design, Uses of forms, Controls and control
properties, Design of forms;
Event driven programming: Introduction to basic control objects, Branching, Control loops,
Procedures and functions, Interacting with the user, stream-based file I/O, Arrays, Jet Database
Engine, Database connectivity, Connecting through ODBC, Introduction to Threads, Debugging
and Testing;
Querying the Database: Query by example, Query by form, Use of SQL commands;
Reports: Development of a variety of reports including tabular, group totals, sub totals and other
standard reports.
Practical Sessions: Programming using VB.NET
METHOD OF TEACHING AND LEARNING: A combination of lectures, tutorials,
practical sessions and a group project.
ASSESSMENT: End of course examination, practical examination and assignments.
RECOMMENDED READING:
1. Dale, N.B., McMillan M.,Visual Basic .NET: A Laboratory Course, (2002), John and
Bartlet Publishers.
2. Grundgeiger, D., Programming Visual Basic .NET, (2002), O'reilly Publications.
9
3. Vick, P., The Visual Basic .Net Programming Language, (2004), Addison-Wesley
Professional.
4. Blair, B., Crossland, J., Reynolds, M., Willis, T. (2002, 2nd Edition) Beginning VB.NET,
Wrox Press Ltd.. Birmingham.
5. Deitel, H.M., Deitel, P.J., Nieto,T.R. (2002, 2nd Edition), Visual Basic.Net How to
Program , Prentice Hall London.
6. Evjen, B., Hollis, B., Lotka, R., McCarthy, T., Pinnock, J., Ramachandran, R., Sheldon,
B., Professional VB.NET , (2004), Wiley Publishing, Inc. Indianapolis
7. Liberty, J., Programming Visual Basic.NET, (2003), O'Reilly and Associates Inc.
Sebastopol.
8. Schneider, D., An Introduction to Programming using Visual Baisc.NET, (2003), Pearson
Education Ltd. London.
1
COURSE CODE : STCS 44014
TITLE : Systems Analysis and Design
PRE-REQUISITES : COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES :
At the end of this course a student should be able to demonstrate an understanding of the key
principles and techniques of systems analysis and design, and the ways in which they are employed in
the development of information systems to meet the needs of organizations. Particular emphasis will
be given to the study of the role that analysts are expected to play in systems development.
COURSE CONTENT :
An Introduction to the Systems Process, The Systems Development Life Cycle, Systems Analysis and
Modeling, The Philosophy and Techniques of Systems Design, Prototyping, Modeling Tools for the
Systems Analyst, Systems Implementation and Management, Quality Assurance and Testing,
Maintaining and Managing the Systems Process, Issues in Information Systems Project Management.
METHOD OF TEACHING AND LEARNING: A combination of lectures and tutorials.
ASSESMENT: End of course examination, assignments and/or seminars.
RECOMMENDED READING:
1. Whitten et al, Systems Analysis and Design Methods, (2002), McGraw-Hill.
2. Perry Edwards, Systems Analysis and Design, (1993), McGraw-Hill.
3. Kenne!h E. Kendall and Julie E. Kendall, Systems Analysis and Design, (1998, 4th Edition),
Prentice Hall.
2
COURSE CODE : COSC 44024
TITLE : Object Oriented Analysis and Design
PRE-REQUISITES : COSC 22035
CO-REQUISITES : None
LEARNING OUTCOMES :
After successful completion of the course unit, a student will be able to design software in an
object-oriented environment and be able to use UML as a notation to support this design.
COURSE CONTENT: The course covers life-cycle and tasks for OO software development, up to, the actual writing of
code;
Object Concepts: Objects ,Classes, Inheritance, Software Development Methodology, Using
UML, CRC Cards, Requirements Capture, Business Perspective, Developer Perspective,
Analysis: Introduction, Static Analysis, Dynamic Analysis;
System Design: Introduction, Networked System Topologies, Choosing Technologies,
Partitioning Software, Subsystem Design, Designing the Business Logic, Persistence using a
Relational Database, Finalizing the User Interfaces, Designing the Business Services, Thread
Safety;
Code Specification: Object-Oriented Specification, Design by Contract, Informal Specification
in Java, UML Notation will be used throughout the course unit.
Practical Sessions: Programming using Java/C++
METHOD OF TEACHING AND LEARNING:
A combination of lectures, tutorial and practical sessions
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING:
1. Booch, Rumbaugh and Jacobson., The Unified Modeling Language User Guide,(1996),
Pearson Education.
2. Eriksson and Penker., UML Toolkit, (1998), John Wiley & Sons.
3. Wu, T., An Introduction to Object-Oriented Programming with Java. (2001, 2nd Edition),
McGraw Hill.
4. Gamma et al. , Design Patterns: Elements of Reusable Object-Oriented Software, (1995),
Addison-Wesley, Reading, MA.
3
COURSE CODE : STCS 44034
TITLE : Computer Architecture and Design
PRE-REQUISITES : COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES :
At the end of this course the student should be able to demonstrate an understanding of the important
aspects of the hardware of a conventional computer and the architectural features of microprocessors
provided to support efficient computation.
COURSE CONTENT: Introduction to Computer Organization, Architecture and Design Concepts;
Basic Principles: Boolean Algebra, Combinational and Sequential circuits, logic design techniques,
Karnaugh map, Latches, Flip-flops, Half-adder, Full-adder, counters and Shift registers;
Classification of Processor architectures: SISD, SIMD and MIMD;
Instruction sets: Sequential execution of the instructions with respect to a single Processor, Machine
instruction characteristics, Instruction set design, Addressing modes and formats, Instruction
Pipelining;
Input and Output: I/O modules, System bus, I/O channels and processors;
CPU Structure: Processor and register organization, Design of ALU, Arithmetic, Shift and logic
control systems, RISC machine and parallel architectures.
Memory Management: Memory hierarchy, Virtual memory and Cache memory, Performance
comparison.
Programmed data transfer: Interrupts and interrupt handling systems.
Assembly language programming
METHOD OF TEACHING AND LEARNING: A combination of lectures and tutorials.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Stallings W., Computer Organization and Architecture, (2002, 5th Edition), Prentice Hall
International Inc.
2. Ram B., Computer Fundamentals, (1995), Wiley Eastern Limited.
3. Tananbaum A. S., Structrued Computer Organization, (1990, 3rd Edition), Prentice Hall
International Inc. .
4. Morris Mano M., Computer System Architecture, (3rd Edition), Prentice-Hall International Inc.
4
COURSE CODE : STCS 44045
TITLE : Advanced Database Systems with Applications
PRE-REQUISITES : COSC 22025
CO-REQUISITES : None
LEARNING OUTCOMES :
At the end of this course module a student will be able to demonstrate the theoretical knowledge
on advanced database management system design principles and techniques, and practical skills
on applications of them.
COURSE CONTENT:
Relational database design; More on SQL; Physical data organization and Indexing: Basics,
ISAM, B-tree, more trees, hashing, textual, distributed/P2P indexing; Query processing: scan,
sort, hash, index-based, systems view; Buffer management; Query optimization: Rewrite, cost
estimation, algorithms; Online query processing and optimization, downsizing the DBMS;
Transaction Processing Concepts; Concurrency Control Techniques; Practical Database Design
and Tuning; Database Recovery Techniques; Object-Oriented Databases; Deductive databases;
Emerging Database Technologies and Applications; Distributed Databases and Client-Server
Architecture; XML, DTD, XPath, XQuery, XSLT, XML storage, XML indexing, streaming
XML; Database Security and Authorization; Enhanced Data Models for Advanced Applications;
Recent advances in database systems such as Spatial and Active Databases; Introduction to Data
warehousing and data mining.
METHOD OF TEACHING AND LEARNING:
A combination of lectures, tutorials, assignments and group projects.
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING
1. Ullman, J. D. and Widom, J., Database Systems: The Complete Book, (2002), Hector
Garcia-Molina, Prentice Hall.
2. Stonebraker M., and Hellerstein, J. M., Readings in Database Systems, (1998, 3rd
Edition), Morgan Kaufman.
3. Elmasri, R. and Navathe, S. B., Fundamentals of Database Systems (2006, 5th Edition),
Addison-Wesley Longman Publishing Co., Inc.
4. McFadden, F. R., Hoffer, J. A. and Prescott, M. B., Modern Database Management
(2006, 8th Edition), Pearson Education Series.
5. Ramakrishnan, G., Database Management Systems, (2002, 3rd edition), McGraw-Hill.
6. Hansen, G. W. and Hansen, J. V., Database Management and Design, (2002, 2nd
Edition), Prentice Hall.
7. Brundage, M., XQuery: The XML Query Language, (2004), Addison Wesley Longman
Publishing Co., Inc.
5
COURSE CODE : COSC 44055
TITLE : Logic Programming
PRE-REQUISITES : COSC 12025
CO-REQUISITES : None
LEARNING OUTCOME:
At the end of this course the student should be able to demonstrate an understanding of important
aspects in an Intelligent Knowledge Based System, and demonstrate skills in writing programs
using PROLOG.
COURSE CONTENT:
Introduction: Introduction to Artificial Intelligence (AI), Major areas of AI, Description of
Intelligent Knowledge Based Systems (IKBS);
Knowledge and Reasoning: Knowledge representation and types of reasoning;
Declarative/Procedural Programming Languages;
Logic Programming: Introduction to Logic Programming using PROLOG.
Basic Concepts: Facts, Rules and Queries, Data Objects, Goal Matching, Unification and
Backtracking, Recursion in Prolog, List manipulation in Prolog;
Search strategies and Search trees;
Cut and Negation: The Use of the Cut, Negation as Failure, Problems with Cut and Negation,
Implementing IF-THEN-ELSE condition;
Input and Output: Input and Output in Prolog, Communicating with files, Processing files of
terms.
Advanced features in Prolog: Difference Lists, Binary Trees in Prolog;
Some applications of Prolog: Searching and Sorting Techniques, Problem solving, Theorem
proving, Database applications, etc.;
Logic and Prolog: Deductive reasoning in Propositional and Predicate Logic, Resolution in
Propositional and Predicate Logic, First-order Predicate logic, Prolog and First-order Predicate
logic, Writing Logical Statements, Conversion of Logical Statements into Normal Form,
Unification, Unification algorithm, Resolution principle, Connection Graph proof procedures.
METHOD OF TEACHING AND LEARNING: A combination of lectures, assignments and practical classes.
ASSESSMENT: End of course examination, assignments and practical examination.
RECOMMENDED READING:
1. Bratko, Ivan, Prolog Programming for Artificial Intelligence, (1988, 2nd Edition),
Addison-Wesley.
2. Sterling, L & Shapiro, E., The Art of Prolog, (1986), The MIT Press.
3. Kaushik Saroj, Logic and Prolog Programming (2007, 1st Edition), New Age
International Publishers, India.
4. Russel, S. and Norvig, P., Artificial Intelligence – A Modern Approach (2005, 2nd
Edition), Prentice-Hall of India Private Limited.
5. Shinghal, R., Formal Concepts in Artificial Intelligence, (1992, 1st Edition), Chapman &
Hall.
6
6. Luger, G. F.& Stubblefield, W. A., Artificial intelligence, (1993, 2nd Edition) The
Benjamin/ Cummings Publishing Company, Inc.
7. Mc Donald C, Yazdani M., Prolog Programming, (1990, 1st Edition), Blackwell
Scientific Publications.
COURSE CODE : COSC 44064
TITLE : Machine Learning
PRE-REQUISITES : All COSC core course units followed in the General Degree.
CO-REQUISITES : None
LEARNING OUTCOME:
At the end of this course module a student will be able to demonstrate the ability to solve
problems using learning algorithms, neural networks and genetic algorithms.
COURSE CONTENT:
Learning: Learning Agent, Concept of learning, Nature inspired and other types of learning,
Decision tree learning;
Artificial Neural Networks: Basic Models, Hopfield Model, Design and implementation,
Perceptrons, Multilayer Networks and Backpropagation, Counterpropagation and recurrent
networks;
Statistical Training: Evaluating hypotheses, Bayesian learning, Bayesian belief networks,
Optimal Classifiers, Computational learning theory, Vapnic-Chervonenkis Dimension, Mistake
bound analysis, Sample complexity analysis, Instance-based learning;
Genetic Algorithms: Schemata, Design and implementation, Genetic operations, Hypothis Space
search, Genetic Programming, Models of Evolution and Learning;
Inductive and Analytical Learning; Reinforcement Learning; Classifier Systems;
Selected applications in data mining, automated knowledge acquisition, pattern recognition,
program synthesis, text and language processing, internet-based information systems, human-
computer interaction, semantic web, bioinformatics and computational biology.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Mitchell, T. M., Machine Learning, (1997), McGraw-Hill International Editions.
2. Bishop, C., Pattern Recognition and Machine Learning, (2006), Springer-Verlag.
3. Hertz, J., Krogh, A. and Palmer, R. G., Introduction to The Theory of Neural
Computation, (1991), Addison-Wesley Publishing Company.
4. Goldberg, D. E., Genetic Algorithms, (1989), Addison-Wesley Publishing Company.
5. Rao, M. A. and Srinivas, J., Neural Networks, (2004), Narosha Publishing House Pvt.
Ltd.
7
6. Mehothra, K., Mohan, C.K. and Ranka, S, Artificial Neural Networks,(1997), Oxford
University Press.
7. Looney, C.G., Pattern Recognition Using Neural Networks, (2000), MIT Press.
COURSE CODE : COSC44074
TITLE : Theoretical Aspects of Computer Graphics
PRE-REQUISITES : COSC 12025
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to demonstrate a good understanding
of concepts behind computer graphics and be able to apply the techniques and algorithms for
modeling and rendering 2D and 3D graphical objects.
COURSE CONTENT: Hardware and software components of graphics systems. Fundamental techniques in graphics
Output and filled data primitives. Graphic systems, Scan conversions, 2D and 3D geometric
transformations. Two dimensional viewing: viewing pipeline, clipping, and windowing. Three
dimensional viewing: viewing pipeline, viewing parameters, projections, viewing
transformations, clipping, visible surface detection. Basic rendering, Introduction to illumination
models and surface rendering, Geometric modelling and representations, Computer animation,
Visualization.
Practical Sessions: Programming using OpenGL
METHOD OF TEACHING AND LEARNING: A combination of lectures, assignments and practical classes.
ASSESSMENT: End of course examination, assignments and practical examination.
RECOMMENDED READING:
1. Hearn, D. and Baker, M.P., Computer Graphics with OpenGL, (2004, 3rd Edition),
Prentice Hall.
2. Giambruno M., 3D Graphics&Animation, (2002), Prentice Hall.
3. Hearn, D. and Baker, M.P., Computer Graphics C Version, (1997, 2nd Edition), Prentice
Hall.
4. Foley, J. D., van Dam, A, Feiner, S. K. and Hughes, J. F., Computer Graphics, (2002, 2nd
Edition), Pearson Education.
5. Xiang, Z. and Plastock, R., Theory and Problems of Computer Graphics, (2005, 2nd
Edition), Tata McGraw-Hill Publishing Company Limited New Delhi.
8
COURSE CODE : COSC 44084
TITLE : Data Security
PRE-REQUISITES : COSC 31014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to understand the need for good
security management and should be able to identify the security attacks associated with computer
networks and how to provide security against such attacks.
COURSE CONTENT: An introduction to cryptography and security mechanisms: Security Services, mechanisms and
Attacks; Conventional cryptography: Symmetric Ciphers, Block Ciphers; Modular Arithmetic;
Public-key cryptography: Key management, Message Authentication and Hash functions, Digital
Signatures and Authentication Protocols;
Network security: Protection of data transferred over commercial information networks, Generic
security technologies relevant to networks, user identification techniques, authentication
protocols and key distribution mechanisms, Electronic mail security, IP Security, Web Security;
Computer Security: Defining security requirements (security policy). Intruders, Malicious
Software, Firewalls, Security models, The main security features and mechanisms in operating
systems, Security-related issues of computer architecture.
Security of Middleware: Software protection, Standards and security evaluation criteria,
Security-related standards, Guidelines for managing IT security.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Stallings, W., Cryptography and Network Security, (2004, 3rd Edition), Prentice-Hall of
India Private Limited.
2. Pfleeger, C. P. and Pfleeger, S. L., Security in Computing, (2005, 3rd Edition), Pearson
Education.
3. Bishop, M., Introduction to Computer Security, (2005), Addison-Wesley, Pearson
Education, Inc.
4. Carroll, J M, Computer Security, (1996), Butterworth-Heinemann.
5. Leiss ,E.L., Principles of Data Security, (1962), Plenum Press.
9
COURSE CODE : COSC 44094
TITLE : Software Engineering
PRE-REQUISITES : COSC 44014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to understand the principles behind
software engineering processes and the strengths and weaknesses of various software processes,
produce simple analyses, designs, implementations and test suites for small systems
COURSE CONTENT: Software Process: Software products, Software processes, Software life-cycle and process
models, process assessment models, Team work in the software process, Professional
responsibility;
Software requirements and specifications: Requirements elicitation, requirements analysis
modeling techniques, functional and nonfunctional requirements, prototyping, basic concepts of
formal specification techniques;
Software Design: Fundamental design concepts and principles, design patterns, software
architecture, structured design, object-oriented analysis and design, design for reuse; comparison
of design strategies, User interface design;
Software Reliability: Software reliability metrics, Programming for Reliability, Software Reuse.
Verification and Validation: Validation planning, testing fundamentals, including test plan
creation and test case generation, black-box and white-box testing techniques, unit integration,
validation, and system testing, object oriented testing, inspections;
Software evolution: Software maintenance, characteristics of maintainable software,
Configuration management, Software Reengineering, Legacy systems, Safety critical systems,
Security critical systems, Software reuse.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Sommerville, I., Software Engineering, (8th Edition)
2. Pressman, R. S., and Ince, D., Software Engineering: A Practitioner's Approach, (1992,
5th Edition), McGraw Hill.
3. Ghezzi, C., Jazayeri, M., and Mandrioli, D., Fundamentals of Software Engineering,
(2002), Prentice Hall.
4. Goodbole, N. S., Software Quality Assurance, (2004), Narosha Publishing House Pvt.
Ltd.
10
COURSE CODE : COSC 44104
TITLE : Software Project Management
PRE-REQUISITES : COSC 44014 and COSC 44094
CO-REQUISITES : None
LEARNING OUTCOMES: At the end of this course module a student should be able to
explain how a project can be broken down into stages and what each stage contributes to the
project, be able to select appropriate techniques for use in the stages of a project, be able to
justify the appropriateness of these techniques, and apply them to practical situations, be able to
explain the limitations of the project approach in developing information/software systems.
COURSE CONTENT: Software Project Management Techniques and Concepts: The profile of a project, understanding
and decomposing the task, Estimation and risk, Scheduling and resourcing, Monitoring and
control, Quality assurance, Maintenance, Cost benefit analysis, Software project documentation
issues, The project team and the project manager, Alternative approaches and emerging issues,
Human Resource Management, Professional, legal and ethical issues, Computer crime,
Computer law in Sri Lanka.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments
ASSESSMENT: End of course examination and assignments
RECOMMENDED READING:
1. Yeates, D. and Cadle, J., Project Management for Information Systems, (1996, 2nd
Edition) , Pitman Publishing.
2. Pressman, R. S., Software Engineering, (1997, 4th Edition), McGraw-Hill.
3. Kemerer, C. F., Software Project Management: Readings and Cases, (1997), IRWIN
Publishers.
4. Hughes, B. , Cotterell, M., Software Project Management, (2002), McGraw-Hill.
11
COURSE CODE : COSC44114
TITLE : Multimedia Systems Development
PRE-REQUISITES : COSC 31014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to understand the characteristics of
multimedia systems and how to address issues, be aware of the differences among multimedia
authoring systems, be familiar with the software development process as practiced in a
multimedia development environment.
COURSE CONTENT: Introduction to Multimedia: Multimedia and Hyper media, Components of multimedia,
Multimedia authoring and tools;
Graphics and Image Representation: Text, Images, Audio and Video representation. Image data
types, Colour lookup tables, File formats, Graphics animation files;
Colour in Image and Video: Colour science, Colour models in images, Colour models in video;
Concepts in Video: Types of video signals, Analog video, Digital video;
Digital Audio: Digitization of sounds, Quantization and Transmission of audio, Musical
Instrument Digital Interface (MIDI);
Multimedia Data Compression: Lossless compression algorithms, Lossy compression
algorithms, Text and Image compression, Image compression standards, Video compression
techniques, Audio compression techniques, MPEG audio and video compression;
Multimedia Communication: Computer and Multimedia networks, Multimedia network
communications and applications, Wireless networks, Multimedia over wireless networks,
Entertainment networks;
Practical applications using a suitable multimedia authoring tool.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Li, Z., and Drew, M. S., Fundamentals of Multimedia, (2005), Pearson Education.
2. Halsall, F., Multimedia Communications, (2001), Addison-Wesley.
3. Andleigh, P. K., and Thakrar, K., Multimedia Systems Design, (1998),Prentice-Hall.
4. Zendler, A., Haggenmüller, R. and Schwärtzel, H., Multimedia Development Systems:
With Methods for Modeling, (1998), Tectum Verlag DE.
12
COURSE CODE : COSC 44124
TITLE : Wireless Communication and Networks
PRE-REQUISITES : COSC 31014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to demonstrate a good understanding
of principles, issues and design of wireless networks.
COURSE CONTENT: Introduction to wireless communication technology, Protocols and TCP/IP Suite, Antennas and
propagation of signals, Signal encoding and decoding, Spread spectrum, Multiple access
methods, Coding and error control, Satellite communications, Cellular wireless networks,
Cordless systems and wireless local loop, Wireless LAN technology and Standards, Bluetooth,
GPRS and 3G wireless systems.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Stallings, W., Wireless Communications and Networking, (2004), Prentice-Hall of India
Private limited, New Delhi.
2 Vijay Kumar and Garg, V.K., Wireless communication systems, (2007), Elsevier
Science & Technology.
13
COURSE CODE : COSC 44134
TITLE : Theory of Computation
PRE-REQUISITES : COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to understand the advanced concepts of
the theory of computation.
COURSE CONTENT: Regular Languages and Expressions: Finite Automata, Deterministic and Nondeterministic Finite
Automata, Kleene's Theorem, Criteria for Regularity, Regular expressions, Pumping lemma,
Closure properties of Regular languages;
Context-Free Languages: Context free grammars, Derivation Trees and Ambiguity, Simplified
and Normal Forms, Chomsky Normal Form, Gireibach Normal Form;
Pushdown Automata: Pushdown Automata (PDA) and Context-Free Languages (CFLs) and
Nondeterministic CFLs;
Turing Machines: P, NP and NP complete Problems, Reusability, Undecidability, Recursively
Enumerable Languages; Computability and Complexity Theory.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Natarajan, A.M., Tamilarasi, A., and balasubramani, P., Theory of Computation, (2007),
New Age International Bublishers.
2. Xavier, S. P. E., Theory of Automata, Formal Languages and Computation, (2007), New
Age International Bublishers.
3. Martin ,J.C., Introduction to Languages and Theory of Computation, (1996), McGraw
Hill.
4. Sipser, M., Introduction to the Theory of Computation, PWS Publishing Co.
5. Hopcroft, J. E., Motwani, R. and Ullman, J.D., Introduction to Automata Theory,
Languages and Computation, (2nd Edition, 2002), Pearson Education.
14
COURSE CODE : COSC 44144
TITLE : Compiler Theory
PRE-REQUISITES : All COSC core course units.
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should be able to understand the advanced concepts
on compiler construction, operation and its applications.
COURSE CONTENT: Motivation for studying compilers; desirable qualities of a compiler; tracing the compilation of
an example expression; lexical analysis and DFAs; tokens and lexemes; syntax analysis and
CFGs and PDAs; semantic analysis, symbol tables, Tracing the compilation of an example
expression (continued); translation and instruction selection; the compiler as a frontend/backend
pair; intermediate languages; the frontend composed of a scanner and parser; role of scanner
and parser, parse tree nodes, Implementing parse tree behaviour, The backend composed of
instruction selection, register allocation, and instruction scheduling; optional optimization phase
between the frontend and backend; difficult language features; introduction to lexical analysis;
scanner generators; specifying patterns for scanners; formal languages; regular expressions and
regular languages; operations; More regular expression examples; scanner generation theory;
definition of finite automata; DFA vs. NFA; transition diagrams; examples; table
implementation of DFA; relationship of generators and their advantages; acceptance in an NFA;
equivalence of RE, DFA, & NFA, Role of the parser; formal vs. informal descriptions of
programming languages; context free grammars and their advantages; derivations and parse
trees; leftmost & rightmost derivations; different derivations producing difference precedence
of operators; enforcing precedence; ambiguity, rearranging grammar to eliminate ambiguity;
dangling else solutions; common grammar constructs; parsing and role of parser; desirable
properties of a single-scan parser, Introduction to LL(1) and LR(1); top-down vs. bottom-up
parsers; predictive parsing & recursive descent parsing; problems with left recursion;
eliminating left recursion, Introduction to semantic analysis; name binding and type checking;
name binding and scoping rules in the Tiger language; separate name spaces for types and
variables; predefined names; Symbol tables and associated operations (insert, lookup, delete);
hash tables with chaining; keeping track of scopes; hash table with inter-twining linked list,
Type checking constructs: function call, array and record access, if-then-else, while & for loops,
and declarations of types, variables, arrays, records, and functions; Activation records/frames
and their format; code for calling linkage; different storage locations for variables; accessing
lexically nested variables; de Bruijn notation, garbage collection; reference counting; mark-n-
sweep, copying collection; generational copying collection; introduction to compiler
optimization; types of optimization: execution speed, code size, power consumption, etc.; safety
of compiler transformations, Register allocation; historical perspective; the graph coloring
problem; NP Completeness of problems; liveness of variables and the interference graph;
graph simplification algorithm; spilling; enhancements: coalescing, optimistic coloring, and
node merging.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
15
RECOMMENDED READING:
1. Holmes, J., Building Your Own Compiler with C++, (1995), Prentice Hall.
2. Barrett, W.A., Compiler Construction: Theory and Practice, (1986), Science Research
Associates.
3. Aho, A. V. and Ullman, J. D., Principles of Compiler Design, (2002), Narosha Publishing
House Pvt. Ltd.
COURSE CODE : COSC44154
TITLE : Digital Image Processing
PRE-REQUISITES : COSC 44074
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module a student should have an understanding about analytical tools
and methods which are currently used in digital image processing as applied to image
information for human viewing.
COURSE CONTENT: Image Sensing and Digital Image Representation, Image Analysis, Human Visual Perception;
Image Enhancement: Smoothing and Image restoration; System models: Gray scale models,
histogram models; Image Transforms: Discrete transforms, Fourier transforms, Discrete cosine
transforms, Walsh-hadamard, Haar, PCT, Filtering, Wavelet transformation, Wavelets and
Multiresolution Processing; Image Compression; Pseudo colour; Morphological Image
Processing.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Gonzalez, R. C. and Woods, R. E. , Digital Image Processing, (2002), Prentice Hall.
2. Pratt, W. K. , Digital Image Processing : PIKS Scientific Inside, (2007), John Wiley &
Sons.
3. Fu, K. S. and Young, T. Y. , Handbook of Pattern Recognition and Image Processing,
(1986), Academic Press.
16
COURSE CODE : COSC 44164
TITLE : Data mining and warehousing
PRE-REQUISITES : COSC 22025 and COSC 44045
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to understand advanced aspects of
data warehousing and data mining, encompassing the principles, research results and commercial
application of the technologies.
COURSE CONTENT: Review of database technology underpinning data warehousing and data mining;
Data warehouse logical design: Star schemas, Fact tables, Dimensions, Snowflake schemas,
Dimension hierarchies, Data marts.
Data warehouse physical design: Partitioning, Parallelism, Compression, Indexes, Materialized
views;
Data warehouse construction: Data extraction, Transformation, Loading and refreshing, Data
warehouse support in Oracle, Warehouse metadata.
From data warehousing to data mining: OLAP architectures, OLAP operations, SQL extensions
for OLAP.
Data mining approaches and applications: Data mining technologies and implementations,
Techniques for mining large databases, Data mining support in SQL Server, Oracle, Clementine,
Data mining standards.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Jarke, M, and et al., Fundamentals of Data Warehouses, (2003, 2nd Edition), Springer.
2. Han, J. and Kamber, M., Data Mining Concepts and Techniques, (2001), Morgan
Kaufmann.
3. Seidman, C., Data Mining with Microsoft SQL Server 2000 Technical Reference,
Microsoft Press.
4. Nagabhushana, S., Data Warehousing OLAP and Data Mining, (2007), New Age
International (P) Limited Publishers.
17
COURSE CODE : COSC 44174
TITLE : E-Business Technologies
PRE-REQUISITES : COSC 11014
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student should be able to understand advanced aspects of e-
commerce and steps involved in launching an online business.
COURSE CONTENT: Foundations of Information Systems in Business, Components of e-Business, Competing with
Information Technology, Comparison of e-Marketing with traditional marketing , Managing
Data Resources, Functional and Cross-Functional e-Business Systems, Enterprise e-Business
Systems in Practice, Electronic Commerce Systems, Decision Support in e-Business, Developing
e-Business Strategies, Developing E-Business Solutions, Electronic Payment Systems,
Evaluation of EPSs, Comparison of EPS with traditional payment systems, Electronics Funds
Transfer, Payment Cards, Electronic cash, electronic checks and electronic wallets, Tools and
Technologies for secure EPS, Security Management of e-Business, Legal and Ethical Issues in e-
Business.
METHOD OF TEACHING AND LEARNING: A combination of lectures and assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Napier, H. A., E-Business Technologies, (2002), Thomson Course Technology.
2. Bidgoli, H., Electronic Commerce: Principles and Practice, (2002), Academic Press,
New York.
3. Deitel, H. M., Deitel, P. J. and Steinbuhler, K., e-Business and e-Commerce for
Managers, (2001), Prentice-Hall, New Jersey.
4. Elsenpeter, R. C. and Velte, T. J., E-Business: A Beginner’s Guide, Osborne, McGraw-
Hill.
5. Amor, D., Electronic Business Revolution, (2000), Prentice Hall, NJ.
18
COURSE CODE : COSC 44184.
TITLE : Natural Language Processing
PRE-REQUISITES : All COSC core course units.
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module the student will be able to demonstrate an understanding of the
theory and practices involved in building computer systems for human language processing.
COURSE CONTENT:
Introduction and Overview, Regular Expressions, String Edit Distance and Alignment, Context
Free Grammars, Non-probabilistic Parsing, Information Theory, Language modeling and Naive
Bayes, Part of Speech Tagging and Hidden Markov Models, Viterbi Algorithm for Finding Most
Likely HMM Path, Probabilistic Context Free Grammars, Parsing with PCFGs, Maximum
Entropy Classifiers, Maximum Entropy Markov Models & Conditional Random Fields, Lexical
Semantics, Machine Translation, Unsupervised Language Discovery, Topic Models and
Language in Social Networks, Pragmatics, Information Extraction & Reference Resolution.
METHOD OF TEACHING AND LEARNING:
A combination of lectures, tutorials, assignments and group projects.
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING:
1. Jurafsky, D. and Martin, J. H., Speech and Language Processing, (2004), Pearson
Education.
2. Lutz and Ascher, Learning Python, O'Reilly.
3. Manning and Schutze, Statistical Natural Language Processing, MIT Press.
19
COURSE CODE : COSC 44194
TITLE : Special Topics in Computer Science
PRE-REQUISITES : All COSC core course units.
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this course module, the student will be knowledgeable on emerging technologies in
Computer Science.
COURSE CONTENT:
This course is designed with the aim of introducing emerging technologies in Computer Science.
METHOD OF TEACHING AND LEARNING: A combination of lectures, assignments, presentations and practical sessions as applicable.
ASSESSMENT:
End of course examination, assignments and/or practical examination as applicable.
RECOMMENDED READING:
Required reading material will be recommended by the lecturer(s) depending on the topic at the
beginning of the course module.
COURSE CODE : COSC 43206
TITLE : Research Project
PRE-REQUISITES : All COSC core course units.
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this project the student will be able to demonstrate an understanding in planning
and carrying out a substantial research based project in the field of Computer Science and also be
able to express themselves both in verbal and written forms.
COURSE CONTENT:
A study and/or an implementation of a computer system related to major sub disciplines of
Computer Science curriculum under an assigned supervisor.
METHOD OF TEACHING AND LEARNING: A combination of self-study, Seminars, Presentations and a dissertation.
ASSESSMENT: Dissertation, Seminars and Oral presentations.
20
RECOMMENDED READING:
Reading list and material relevant for each selected topic will be provided at the beginning of the
academic year by the supervisor.
COURSE CODE : COSC 43214
TITLE : Industrial Training
PRE-REQUISITES : All COSC core course units.
CO-REQUISITES : None
LEARNING OUTCOMES:
At the end of this industrial training, the student will be able to work in an industrialized
environment and to analyze, design and implement a real world problem assigned by the
industry.
COURSE CONTENT:
Major aspects to be covered are the main phases of software and/or hardware systems
development, generic skills needed to work in an industrialized environment and understanding
of expectations of an organization.
METHOD OF TEACHING AND LEARNING: Training under the supervision and guidance of a suitable trainer in an IT related industry.
ASSESSMENT: Evaluation of the progress report submitted by the trainer and the technical report submitted by
the student.
RECOMMENDED READING:
Reading and reference material recommended by the relevant industry.
Course Structure and Syllabi of Computer Studies
B.Sc. (General) Degree Programme – Computer Studies
Level Semester Code Title Type Credits
1
I COSC 11014 Theoretical Foundations of Computer
Science
C 4
II COST 12115 Introduction to Programming C 5
2
I COST 21123 Database Management Systems C 3
II COST 22133 Structured Systems Analysis and Design C 3
COST 22144 Web Technology and e-Commerce Applications C 4
3
I COST 31153 Visual Programming C 3
COST 31163 Management Information Systems C 3
II COST 32172 Web Programming C 2
COST 32183 Multimedia Technologies C 3
B.Sc. (Special) Degree Programme – Computer Studies
Level Semester Code Title Type Credits
1
I COSC 11014* Theoretical Foundations of Computer
Science
C 4
II COST 12115* Introduction to Programming C 5
2
I COST 21123* Database Management Systems C 3
II COST 22133* Structured Systems Analysis and Design C 3
COST 22144* Web Technology and e-Commerce Applications C 4
3
I
COST 31414 Mathematics for Information Technology C1 4
COST 31153* Visual Programming C 3
COST 31163* Management Information Systems C 3
COST 31424 Data Structures and Algorithms C 4
PRPL 31012 Professional Placement O 2
II
COST 32434 Statistics for Information Technology C2 4
COST 32172* Web Programming C 2
COST 32183* Multimedia Technologies C 3
COST 32444 Object Oriented Programming C 4
4 I and II
COST 44513 Operating Systems C 3
COST 44522 Human-Computer Interaction C 2
COST 44532 Software Quality Assurance C 2
COST 44542 Software Project Management C 2
COST 44554 Data Communication and Networks C 4
COST 44562 Systems and Network Administration C 2
COST 44574 Object Oriented Analysis and Design C 4
COST 44584 Computer Architecture and Organization C 4
COST 44594 Advanced Database Systems with Applications C 4
COST 41604 e-Business Technologies O 4
COST 41614 Industrial Training O 4
COST 44624 Computer Graphics C 4
COST 44634 Logic Programming C 4
COST 44644 Information Security C 4
COST 43656 Research Project C 6
Note 1. Students are allowed to register to follow either COST 41604 or COST 41614, but not
both in Semester I of Level 4.
2. Other Level 4 course units will be offered either in Semester I or Semester II of Level 3
or Level 4.
3. * signifies course units offered for the B.Sc. (General) Degree Programme.
4. C1 - Compulsory only for students entered to the Special Degree Programme from
the Biological Science stream.
5. C2 - Compulsory for all students who have not followed the course units STAT
11014 and STAT 11021 in Level 1.
Course Units offered for B. Sc. (General) Degree Programme
Level 1
Type/Status : Compulsory
Course Code : COSC11014
Course Title : Theoretical Foundations of Computer Science
Pre-requisites : G.C.E (A/L)
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
explain fundamental theoretical aspects of Computer Science.
Course Content:
Definition of a Computer, Digital Computers, Main components of a Computer: I/O devices,
CPU, Memory; Organization of a computer, Secondary storage devices and types of Secondary
storage, Peripheral devices; Classification of computers; Software: Systems Software and
application Software; Operating Systems, functions and types of operating systems; Utility
Programs, Translators (compilers, interpreters, assemblers); Application Software Packages;
Application Programs: Algorithms, computer programs, Computer Programming Languages;
Generations of programming languages; Number Systems: decimal , Binary, Octal and
Hexadecimal; Conversion between number systems; Use of number systems; Binary addition
and subtraction; Representation of Characters: ASCII,EBCIDIC, Unicode; Representation of
Numbers: Whole numbers and Floating-point numbers, Sign magnitude form, Two’s
complement form, Scientific form, Standard form; Introduction to Computer Networks:
Networking and Internetworking devices and their functions; Need for standard protocols; Data
transmission; Introduction to the Internet; Services available on the Internet: Word Wide Web
(WWW) and E-mail; Web browsers and search engines; Effective use of e-mail; Information
systems: Types of Information Systems, Systems development Life Cycle (SDLC) ; Social ,
Ethical, Legal and Economic impacts of the use of computers; Cyber crime
Method of Teaching and Learning:Lectures, tutorials and assignments.
Assessment:End of semester examination, tutorials and assignments.
Recommended Reading:
1. Peter Norton, (2006),Introduction to Computers, 6th Edition, Tata McGraw-Hill
Publishing Company limited, India.
2. June Jamrich Parsons and Dan Oja, (2003),New Perspective on Computer Concepts,6th
Edition, Course Technology a division of Thomson learning Inc.
3. B.Ram, (2005),Computer Fundamentals: Architecture and organization, 3rd Edition, New
Age Publications, India.
4. Forouzan, B. A. and Mosharraf, Firouz, (2008), Foundations of Computer Science, 2nd
Edition, Cengage Learning EMEA.
Type/Status : Compulsory
Course Code : COST 12115
Course Title : Introduction to Programming
Pre-requisites : COSC11014
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate skills on structured programming concepts, algorithm designing and
writing structured programs using a procedural language.
Course Contents:
Introduction to Programming: A brief history and types of programming languages.
Program Design: Introduction to software development, Algorithms, Algorithm specifications
(flow charts, N-S diagrams and pseudo code), Modular programming concepts, Elegance in
program design, Implementing an algorithm using a programming language, Program testing and
program documentation.
The C programming language: Data types, Constants, Identifiers, Variables, Expressions and
assignment, Input and output, Control structures, Functions, Storage classes, Pointers, Scope of
arguments, Structured data types (arrays, structures, unions), Programmer defined data types,
Recursion, File processing, Multi-file programming, Enumeration in C, C preprocessor and
advanced features of C language.
Method of Teaching and Learning:Lectures, tutorials and practical sessions using C.
Assessment: End of semester examination, practical examination and assignments.
Recommended Reading:
1. Gottfried, B.S., (2001),Schaum's Outline of Theory and Problems of Programming in C
,2nd Edition, McGraw Hill Professional Publishing.
2. Kelly, A. and Pohl, I., (1999),A Book on C: Programming in C, 4th Edition, Addison
Wesley Longman Inc.
3. Rajaraman, V., (2004),Computer Programming in C, 6th Edition, Prentice Hall.
Level 2
Type/Status : Compulsory
Course code : COST 21123
Course Title : Database Management Systems
Pre-requisites : G.C.E (A/L)
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
describe various logical database architectures,
design & develop databases using relational model and manipulate data,
prepare forms and reports using Structured Query Language.
Course Content:
The role of DBMS in organizations. The database approach: database fundamentals, data
modeling, Entity Relationship Diagram, relational database architecture, logical modeling, data
independence, data dictionary, data manipulation and Structured Query Language (SQL).
Historical database architectures and comparison with relational architecture.
Method of Teaching and Learning:Lectures, supervised hands on practical sessions on SQL,
tutorials and group work.
Assessment: End of semester examination and continuous assessment.
Recommended Reading:
1. Fred R. McFadden, Jeffrey A. Hoofer, and Mary B. Prescott,Modern Database
Management, 7th Edition, Addison-Wesley Pub Co.
2. CJ Date, (2004), Introduction to Database Systems, 8th Edition, Addison Wesley.
3. Elmira R. and Navathe S. B., (2003), Fundamentals of Database Systems, 4th Edition,
Addison Wesley.
Type/Status : Compulsory
Course Code : COST 22133
Course Title : Structured Systems Analysis & Design
Pre-requisites : COSC 11014
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
identify the stages of software development life cycle,
describe the methods of requirements gathering to analyze the system and its
implications,
identify human and technical factors involved in systems analysis and design and the
need for a structured approached to the systems development process,
recognize the importance of user interface design,
demonstrate system analyzing and designing for information systems using
Structured System Analysis and Design Methodology.
Course Content:
Early systems and methods used for system analysis & design. Evolution of system analysis &
design. Software Development Life Cycle (SDLC). System Concept: system approaches, system
elements, systems environment, boundary of a system, sub systems, types of systems, control of
a system. Systems analysis and design: facts gathering techniques, feasibility studies,
requirement analysis, system design, logical & physical design, code design, testing, file/
database design, system implementation and maintenance. Structured System Analysis & Design
Methodology (SSADM) version 4+: modules, stages, steps & tasks of SSADM. Data Flow
Modeling & Logical Data Modeling. CASE tool support.
Method of Teaching and Learning:Lectures, supervised practical sessions, tutorials and group
work.
Assessment:End of semester examination, continuous assessment and group project.
Recommended Reading:
1. Philip L. Weaver, Nicholas Lambrou& Matthew Walkley,(1998), Practical SSADM
version 4+, 3rd Edition, Pitman Publishing.
2. Philip L. Weaver, Nicholas Lambrou& Matthew Walkley, (2002), Practical Business
Systems Development using SSADM: A complete tutorial guide,3rd Edition,Financial
Times/ Prentice Hall.
3. Goodland & Slater, (1995), SSADM Version 4 – A Practical Approach, McGraw Hill.
4. David Hargrave, (1996), SSADM 4+ for Rapid System Development, McGraw Hill.
Type/Status : Compulsory
Course Code : COST 22144
Course Title : Web Technology and e-Commerce Applications
Pre-requisites : COST 12115
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate the theoretical knowledge on basic concepts of Web and the Internet
Technologies and practical skills in their usage in critical systems development.
Course Content:
Principles of multimedia document management, Hypertext, Hypermedia, distributed
multimedia, web designing tools, HTML, creation of web sites, Adding multimedia features,
Aspects of maintaining websites, security features;
Ecommerce: Introduction to E-Commerce/E-Business Technology; Internet Fundamentals, XML
Fundamentals, Architecture & Modeling Fundamentals;
E-Business Applications: Architecture of E-Business Applications, Layer-based design,
Messaging and Event-Driven Architecture, Emerging Trends and Best practices;
Web Services & E-Business Automation: Service-Oriented Architectures, XML-Based Business
Automation and Related Support, Web Services Development, Service-Oriented Architectures,
Workflows, Enterprise Service Buses, etc.
Method of Teaching and Learning: Lectures, practical classes and tutorials.
Assessment: End of semester examination, practical examination and assignments.
Recommended Reading:
1. Jeffrey C. Jackson, (2006), Web Technologies: A Computer Science Perspective, Prentice
Hall.
2. Alison Cawsey and Rick Dewar, Internet Technology and E-Commerce, Palgrave
Macmillan.
3. Janice Reynolds, (2004),The Complete E-Commerce Book: Design, Build, and Maintain
a Successful Web-Based Business, CMP Books.
Level 3
Type/Status : Compulsory
Course Code : COST 31153
Course Title : Visual Programming
Pre-requisites : COST 12115
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
define the term event-driven programming,
identify components of the Integrated Development Environment (IDE),
characterize the commonly used events in event-driven programming,
describe main controls and their methods and properties,
choose appropriate controls and events to develop user-friendly interfaces,
perform database access through graphical user interfaces by using available classes
and technologies,
implement an information system for a simple, real-world business problem.
Course Content:
Introduction to visual and event-driven programming, Relevance of object oriented programming
concepts, The Integrated Development Environment, Graphical User Interface (GUI) design,
Controls and their Properties, Methods and Events, Data types, variables and constant, Structured
data types, Control structures, Sub programming, Error Handling and Debugging, Database
programming, Design of Reports, Practical sessions using Visual Basic .NET
Method of Teaching and Learning:Lectures, interactive classroom sessions, hands-on practical
sessions, self-study assignments and a group mini project.
Assessment: End of semester exam, in-class assignments, mid-term test, practical examination.
Recommended Reading:
1. Harvey M. Deitel, Paul J. Deitel, Tem R. Nieto, Visual Basic .Net How to Programme,
2nd Edition, Prentice Hall
2. Richard Blair, Jonathan Crossland, Matthew Reynolds, Thearon Willis, Beginning
VB.NET, 2nd Edition, Wrox Publishing
3. Thearon Willis, Beginning Visual Basic 2005 Databases, Wrox Publishing
Type/Status : Compulsory
Course Code : COST 31163
Course Title : Management Information Systems
Pre-requisites : COST 22133
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
explain the value of information for decision making
examine the suitability of different types of information systems for enterprises
assess the impact of information systems on enterprises.
Course Content:
Role of information systems; Strategic role played by information systems; Types of information
systems; E-commerce and e-business application; Enterprise applications; Ethical, social and
legal impact of information systems; Information security
Method of Teaching and Learning: Lectures, in-class discussions and case studies.
Assessment: Listening and speech tests, end of semester examination and in-class assignments.
Recommended Reading:
1. Kenneth C Laudon and Jane P Laudon, (2007), Management Information Systems, 10th
Edition, Prentice Hall
2. James A O’Brien and George M Marakas, (2006), Management Information Systems, 7th
Edition, McGraw Hill
Type/Status : Optional
Course Code : COST 32172
Course Title : Web Programming
Pre-requisites : COST 22144
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate the theoretical and practical skills on the design and techniques for
developing internet-based applications, mainly focusing on web programming.
Course Content:
Internet Overview: Networks, TCP-IP, Web Organization and Addressing, Ports, Packets,
Routers, and Routing, Web Browsers and Web Servers, Client/Server Architectures, Security;
Web Page Basics: HTML, Java Script, and CGI scripts, Designing a web presence, Building
dynamic applications;
Web Applications: Java and Applets (client side applications), CGI (server side applications),
Servlets and JSP (server side applications);
Advanced Web Applications: Crawlers and Search Engines, Advanced Interactive Tools,
Distributed and Redundant Resources; Legal and Ethical Issues.
Method of Teaching and Learning: Lectures, practical classes and tutorials.
Assessment: End of semester examination, practical examination, assignments and a mini
project.
Recommended Reading:
1. Jeffrey C. Jackson, (2006),Web Technologies: A Computer Science Perspective, Prentice
Hall.
2. Deitel and Deitel, (2003),Java How to Program, 5th Edition.
3. M. Fowler, (2002), Patterns of Enterprise Application Architecture.
4. Sebesta and Robert W, (2007), Programming the World Wide Web, 4th Edition, Addison
Wesley.
5. Chris Bates, (2003),Web Programming: Building Internet Applications, John Wiley &
Sons, Inc.
6. Harvey M. Deitel, Paul J. Deitel and Andrew B. Goldberg, Internet & World Wide Web
How to Program, 3rd Edition, Prentice-Hall, Inc.
Type/Status : Optional
Course Code : COST 32183
Course Title : Multimedia Technologies
Pre-requisites : COSC11014
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
identify suitable business applications for multimedia developments,
use the tools, techniques and technologies used for multimedia production,
describe the basic principles of graphic design,
use Flash and Photoshop software in digital graphic design and multimedia projects,
select suitable colors for multimedia products,
describe concepts in non-linear video editing,
create an after effect composition.
Course Content:
Multimedia fundamentals. Principles of design: contrast, repetition, alignment, and proximity.
Four elements in design: typography, images, color, and layout. Introduction to Flash,
Introduction to Photoshop. Color theory. Design and composition. Digital video editing. After
effects. Flash animation.
Method of Teaching and Learning:
Lectures, case discussions, practical sessions, tutorials and group work.
Assessment: End of semester examination, in-class assessments and Continuous assessment.
Recommended Reading:
1. Jim Ames, Color Theory Made Easy: A New Approach to Color Theory and How to
Apply It to Mixing Paints, Watson-Guptill Publications: New York,
2. Ze-Nian Li and Mark S. Drew, (2004),Fundamentals of Multimedia, Prentice-Hall.
3. Tink aka Stephen Downs, Paul Barnes-Hoggett, Glen Rhodes, Craig Swann, Matt
Voerman, Todd Yard, (2005), Flash 8 Essentials, Friends of ED, an Apress Company.
4. Adobe Creative Team, Adobe® Photoshop 7.0 Classroom in a Book, Adobe Press.
Course Units offered for the B. Sc. (Special) DegreeProgramme in Computer Studies
Level 3
Type/Status : Compulsory (Only for the students from the Biological Science stream)
Course Code : COST 31414
Course Title : Mathematics for Information Technology
Pre-requisites : None
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
apply fundamental concepts in Number systems, Coordinate Systems and Vectors,
Mathematical Logic, Set Theory, Relations, Functions, Differentiation and
Integration, Systems of linear equations, Determinants and Matrices to solve simple
real world problems.
Course Content:
Number systems, Coordinate Systems, Fundamentals of Vector algebra, Mathematical Logic
(Propositional and Predicate Logic), Boolean Algebra, Methods of Proofs, Set Theory, Relations
and Functions, Differentiation and Integration, Systems of linear equations, Matrices up to order
4 and Inverse of a non-singular square matrix, Determinant of a square matrix.
Method of Teaching and Learning:A combination of lectures, tutorials and assignments.
Assessment: End of semester examination, tutorials and assignments.
Recommended Reading:
1. Johnsonbaugh,R., (2003), Discrete Mathematics, 5th Edition, MacMillan.
2. Rosen, K. H., (2003), Discrete Mathematics and Its Applications, 5th Edition, McGraw-
Hill,New York.
3. Lipschutz, S., (1976), Discrete Mathematics, McGraw-Hill, New York.
4. Nachman, L.J., (1978), Fundamental Mathematics, John Wiley, New York.
5. Vatssa, B. S., (2002), Discrete Mathematics, 3rd Edition, WishwaPrakashana, India.
6. Bostock, L. and Chandler, S., Pure Mathematics 1,(2002), Stanley Thornes (Publishers)
Ltd.
7. Bostock, L. and Chandler, S., Pure Mathematics 2,(2002), Stanley Thornes (Publishers)
Ltd.
Type/Status : Compulsory
Course Code : COST 31424
Course Title :Data Structures and Algorithms
Pre-requisites : COST 12115
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate a good knowledge on abstract data types in structured programming,
implement and analyze commonly used searching and sorting algorithms.
Course Content:
Introduction to Data structures: A general introduction to data structures, The need for data
structures in programming, Data types, Data structures and abstract data types, Homogeneous
and heterogeneous structures, Static and dynamic structures;
Structures to be considered: Stacks, Queues, Deques, Lists, Trees and Graphs.
Searching Technique: Linear Search and Binary Search;
Sorting Techniques: Internal and External Sorting, Exchange (Bubble) Sort, Insertion Sort,
Selection Sort, Shell Sort, Quick Sort, Heap Sort, Merge Sort and Radix Sort;
Hashing Techniques.
Method of Teaching and Learning:A combination of lectures, tutorials and practical sessions
using C language.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Kelley, AI & Pohl, Ira, A Book on C, (l998), 4th Edition, Addison-Wesley.
2. Kruse R.L., Leung B. P. and Tondo C. L., Data Structures and Program Design (2001),
Pearson Education (Singapore) Pte. Ltd.
3. Gottfried, B., Programming with C. (l999), 2nd Edition, Tata McGraw-Hill Company Ltd.
4. Rajaraman, V., Computer Programming in C, (1994), Prentice-Hall of India (Pvt) Ltd.
5. Langsam Y., Augenstein M. J. and Tenenbaum A. M., Data Structures using C and C++
(2002), 2nd Edition, Pearson Education (Singapore).
Type/Status : Compulsory
Course Code : COST 32434
Course Title : Statistics for Information Technology
Pre-requisites : COST 31414 (Only for the students from the Biological Science stream)
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
apply fundamental concepts in descriptive statistics and probability theoryfor real
world problem solving,
apply techniques provided in Statistical Software Packages to solve problems in
Statistics.
Course Content:
Introduction: Rationale for learning Statistics, How the Statistics serves the scientists, Basic
terminology, Essence of Science, Types of measurement and Statistical approach. Descriptive
Statistics: Frequency distribution, Measures of Central Tendency, Measures of Dispersion and
Shapes of distributions. Probability: Permutations and Combinations, Random or non-
deterministic experiment, Sample space, Events and event space, Classical definition of
probability, Frequency definition of probability, Axiomatic definition of probability, Conditional
probability, Partition of a sample space, Total probability and Bayes’ Theorem. Probability
distributions: Binomial distribution, Poisson distribution and Normal distribution. Fitting a
theoretical distribution to set of observed values: Binomial, Poisson and Normal distributions.
Sampling and sampling distributions: Random sampling, Stratified sampling, Sampling error,
Sampling distributions and Degrees of freedom. Tests of Hypotheses: Basic terminology of
scientific research, Rationale of scientific decision making, Limitations of scientific decisions
and the ways that they may be in error. Decisions about relationships: Introduction to
Correlation, Relationship between interval/ratio variables, Geometric appearance of relationship,
Product-Moment Correlation.
Introduction of one of the statistical packages Minitab, SPSS, SAS or R, features of the package
and how to use the package to solve problems in Statistics.
Method of Teaching and Learning: A combination of lectures, tutorials, practical sessions and
assignments.
Assessment: End of semester examination, practical examination, tutorials and assignments.
Recommended Reading:
1. Murray R. Spiegel and Larry J. Stephens, (2006), Theory and Problems of Statistics, 3rd
Edition, Tata MaGrew-Hill Publishing Company Limited.
2. Runyon Richard P., HarberAndrey, Pittenger David J., Coleman Kay, (2002),
Fundamentals of Behavioural Sciences, 8th Edition, McGraw-Hill.
3. Horvath Theadore, (1985), Basic Statistics for Behavioural Sciences, LittleBrown&
Company.
4. Erricker B. C., Advanced General Statistics, (1975), Reprint, Alden Press Oxford.
Type/Status : Compulsory
Course Code : COST 32444
Course Title :Object Oriented Programming
Pre-requisites : COSC 11014, COST 12115
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate the knowledge of the theory of object–oriented systems,
demonstrate how an object-oriented programming language upholds object-oriented
concepts,
effectively use an industry relevant object-oriented programming language.
Course Content:
Background and motivation of Object Oriented Methods, Concepts of Object-Oriented project
management issues, Principles and features of an industry standard Object-Oriented
Programming language (e.g.: Java/C++). Specific topics include Class and Object models,
Object declaration and creation, Instantiable classes, Visibility modifiers, arrays of objects, Self-
referencing pointers, Re-use of code, Static methods, Arithmetic Expressions, Variables, Scope,
Event-Driven Input and Output, File Objects and Looping Statements, Primitive and reference
types, Strings, Use of String buffer, Passing objects as parameters, Exceptions and Additional
Control Structures, Inheritance, Polymorphism, Encapsulation, Selection, collaboration,
hierarchical classification, using super, creating multilevel hierarchy, method overriding, using
abstract classes, use of final and other relations among classes and objects as well as both static
and dynamic system models and implementations.
Method of Teaching and Learning:A combination of lectures, tutorials and practical
sessionsusing Java/C++.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Booch, Rumbaugh and Jacobson,(1996),The Unified Modeling Language User Guide,
Pearson Education.
2. Eriksson and Penker,(1998), UML Toolkit, John Wiley & Sons.
3. Wu, T.,(2001),An Introduction to Object-Oriented Programming with Java, 2nd Edition,
McGraw Hill.
4. Gamma et at. ,(1995),Design Patterns: Elements of Reusable Object-Oriented Software,
Addison-Wesley, Reading, MA.
Level 4
Type/Status : Compulsory
Course Code : COST 44513
Course Title :Operating Systems
Pre-requisites : COSC11014
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
explain the role and characteristics of modern operating systems,
describe memory management, file management and storage management,
describe similarities and differences between modern operating systems such as Unix,
Windows etc.,
implementbasic and important OS algorithms.
Course Content:
Computer system overview; Process description and control; Concurrency issues (mutual
exclusion and synchronization); Deadlock prevention, avoidance and detection; Memory
management and paging; Virtual memory; CPU scheduling algorithms; Disk scheduling
algorithms; File management; Other topics (security, networking) as time allows.
Method of Teaching and Learning:A combination of lectures, tutorials and assignments.
Assessment:End of semester examination and assignments.
Recommended Reading:
1. Abraham Silberschatz, Peter Baer Galvin and GregGagne, (2005), Operating Systems
Concepts, 8th Edition, John Wiley Sons.
2. Tanenbaum, A. S., (2008), Modern Operating Systems, 3rd Edition, Pearson Prentice
Hall.
Type/Status : Compulsory
Course Code : COST 44522
Course Title : Human-Computer Interaction
Pre-requisites :COST 22144, COST 31153
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
understand how interface design practices and methods can be integrated with user
centred principles and methods now being employed,
identify current trends in HCI research,
understand the nature of the HCI design process,
apply an integrated perspective to the design process,
understand the difficulties and pitfalls of translating theory and principles derived
from research findings into practical advice on user-centred design,
apply metaphorical reasoning and conceptual models to user interface design,
explore strategies for improving web site usability,
describe the major aspects of usability engineering,
apply usability and design principles to the evaluation of current interfaces.
Course Content:
Human factors issues in the development of software, use of database systems, and design of
user interfaces for interactive systems. Fundamentals of HCI (theories, models, usability studies
and controlled experimentation) and software engineering (gathering user interface requirements,
prototyping user interfaces) with user interface development environments. Issues include:
command languages, menus, forms, and direct manipulation, graphical user interfaces, computer
supported cooperative work, information search and visualization, World Wide Web design,
input/output devices, and display design. Evaluation of user interfaces and current trends in HCI
research.
Method of Teaching and Learning: A combination of lectures, tutorials and assignments.
Assessment: End of semester examination, tutorials and assignments.
Recommended Reading:
1. Ben Shneiderman and Catherine Plaisant, (2010), Designing the User
Interface:Strategies for Effective Human-Computer Interaction, 5thEdition, Addison-
Wesley.
2. Alan Dix, Janet E. Finlay, Gregory D. Abowd and Russell Beale, (2004), Human
Computer Interaction, 3rd Edition, Pearson Education.
3. Soren Lauesen,(2005), UserInterfaceDesign: A Software Engineering Perspective,
Pearson Education.
4. Winograd, T. and Flores, F.,(1987),Understanding Computers and Cognition: A New
Foundation forDesign, Addison-Wesley.
5. J. Preece, Y. Rogers, H. Sharp, D. Benyon, S. Holland and T. Carey,(1994), Human-
Computer Interaction: Concepts and Design, Addison-Wesley.
Type/Status : Compulsory
Course Code : COST 44532
Course Title : Software Quality Assurance
Pre-requisites : COSC 11014, COST 22133
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
develop an understanding of software quality and approaches to assure software
quality,
differentiate software verification and validation,
describe the processes of software quality management and software configuration
management,
implement different types of software testing methods.
Course Content:
Software Process assessment overview; Software Quality management; Verification and
Validation; Software configuration Management; Software standards; Software Testing- white
box testing/ black box testing; Software defect prevention.
Method of Teaching and Learning:A combination of lectures, tutorials and assignments.
Assessment: End of semester examination, tutorials and assignments.
Recommended Reading:
1. DanielGalin, (2009), Software quality assurance - from theory to
implementation, PearsonEducation.
2. S.Watts Humphrey, (1999), Managing the software process, Addison Wesley.
Type/Status : Compulsory
Course Code : COST 44542
Course Title : Software Project Management
Pre-requisites : COST 22133
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
explain how a project can be broken down into stages and what each stage contributes
to the project,
select appropriate techniques for use in the stages of a project,
justify the appropriateness of these techniques, and apply them to practical situations,
explain the limitations of the project approach in developing information/software
systems.
Course Content:
Software Project Management Techniques and Concepts: The profile of a project, understanding
and decomposing the task, Estimation and risk, Scheduling and resourcing, Monitoring and
control, Quality assurance, Maintenance, Cost benefit analysis, Software project documentation
issues, The project team and the project manager, Alternative approaches and emerging issues,
Human Resource Management, Professional, legal and ethical issues, Computer crime,
Computer law in Sri Lanka.
Method of Teaching and Learning: A combination of lectures and assignments.
Assessment: End of semester examination and assignments.
Recommended Reading:
1. Yeates, D. and Cadle, J., (1996),Project Management for Information Systems, 2nd Edition,
Pitman Publishing.
2. Pressman, R. S., (1997), Software Engineering, 4th Edition, McGraw-Hill.
3. Kemerer, C. F., (1997), Software Project Management: Readings and Cases, Irwin
Publishers.
4. Hughes, B., Cotterell, M., (2002), Software Project Management, McGraw-Hill.
Type/Status : Compulsory
Course Code :COST 44554
Course Title : Data Communication and Networks
Pre-requisites : COSC11014
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
examine the use of computer networks,
identify the forces behind their development,
demonstrate a good understanding of the design and implementation of various
network topologies, architectures, protocols and algorithms.
Course Content:
Introduction: Data Communication, Network structures, Types of networks, The Internet,
Protocols and standards, Layers of the OSI model; The physical layer: Transmission media
(guided and unguided), analog and digital transmission, Transmission impairment, Encoding
techniques, Modulation techniques and Modems, Multiplexing, Circuit switching; Telephone
Networks and DSL technology; The medium access sub-layer: Ethernet (CSMA/CD), token bus,
token ring and FDDI; The data link layer: Framing, error detection and correction, error control
and flow control and data link protocols; The network layer: Addressing, Routing algorithms,
Internetworking and network layer protocols; The transport layer: Transport layer protocols
(UDP and TCP) and connection management; The session layer: Token management and
synchronization. The presentation layer: Data compression, data security and encryption. The
application layer: Client-Server model, Application level protocols for File transfer, Electronic
mail, Network management, Hypertext transfer and World Wide Web; Advanced
telecommunication services and developments: ISDN, Frame Relay Networks, ATM Networks,
packet switching and X.25 Networks; LAN, MAN , WAN and Networking software;
Networking and Internetworking Devices.
Method of Teaching and Learning:A combination of lectures, tutorials and assignments.
Assessment: End of semester examination, practical examination, tutorials and assignments.
Recommended Reading:
1. Forouzan B. A., (2004), Data Communications and Networking, 4th Edition, McGraw Hill.
2. Forouzan B. A.,(2002),Local Area Networks, 1st Edition, Tata McGraw Hill Edition.
3. Stallings W., (2009), Data and Computer Communications, 8thEdition, Pearson Education
Inc.
4. Tanenbaum A.S., (2008), Computer Networks, 4thEdition, Prentice-Hall International.
Type/Status : Compulsory
Course Code :COST 44562
Course Title : Systems and Network Administration
Pre-requisites : COSC 11014, COST 44513, COST 44553
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
describe the structural components of the Unix/Linux and Windows environments,
install and configure workstations, servers, software and network devices,
handle system backup and recovery,
create and manage user accounts and groups,
monitoring and optimizing system/network performance and security.
Course Content:
An overview of the Unix/Linux and Windows OS/servers; Virtual Machine Environment;
System startup and shutdown; Installing Unix/Linux; Installing and configuring network devices
and operating systems; Package managers and software installation; Bash Shell/vim editor;
Administrator responsibilities and getting help; Administrating user accounts and groups; File
system and storage device; System Backup and Emergency Recovery; System/Network
Monitoring.
Method of Teaching and Learning:A combination of lectures, practical, assignments.
Assessment: End of semester examination and assignments.
Recommended Reading:
1. Wale Soyinka, (2009), Linux Administration – A Beginner’s Guide, 5th Edition, McGraw-
Hill.
2. Mark Burgess, (2004), Principles of network and system administration, 2nd Edition, John
Willy & Sons Ltd.
Type/Status : Compulsory
Course Code : COST 44574
Course Title : Object Oriented Analysis and Design
Pre-requisites : COST 32444
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
design software in an object-oriented environment,
use UML as a notation to support this design.
Course Content:
The course covers life-cycle and tasks for OO software development, up to, the actual writing of
code;
Object Concepts: Objects ,Classes, Inheritance, Software Development Methodology, Using
UML, CRC Cards, Requirements Capture, Business Perspective, Developer Perspective,
Analysis: Introduction, Static Analysis, Dynamic Analysis;
System Design: Introduction, Networked System Topologies, Choosing Technologies,
Partitioning Software, Subsystem Design, Designing the Business Logic, Persistence using a
Relational Database, Finalizing the User Interfaces, Designing the Business Services, Thread
Safety;
Code Specification: Object-Oriented Specification, Design by Contract, Informal Specification
in Java, UML Notation will be used throughout the course unit.
Method of Teaching and Learning:A combination of lectures, tutorial and practical sessions
using Java/C++.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Booch, Rumbaugh and Jacobson., (1996), The Unified Modeling Language User Guide,
Pearson Education.
2. Eriksson and Penker., (1998), UML Toolkit, John Wiley & Sons.
3. Wu, T., (2001),An Introduction to Object-Oriented Programming with Java. 2nd Edition,
McGraw Hill.
4. Gamma et al.,(1995), Design Patterns: Elements of Reusable Object-Oriented Software,
Addison-Wesley, Reading, MA.
Type/Status : Compulsory
Course Code : COST 44584
Course Title : Computer Architecture and Organization
Pre-requisites : COSC 11014, COST 44513
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate an understanding of the important aspects of the hardware of a
conventional computer and the architectural features of microprocessors provided to
support efficient computation.
Course Content:
Introduction to Computer Organization, Architecture and Design Concepts;
Basic Principles: Boolean Algebra, Combinational and Sequential circuits, logic design
techniques, Karnaugh map, Latches, Flip-flops, Half-adder, Full-adder, counters and Shift
registers;
Classification of Processor architectures: SISD, SIMD and MIMD;
Instruction sets: Sequential execution of the instructions with respect to a single Processor,
Machine instruction characteristics, Instruction set design, Addressing modes and formats,
Instruction Pipelining;
Input and Output: I/O modules, System bus, I/O channels and processors;
CPU Structure: Processor and register organization, Design of ALU, Arithmetic, Shift and logic
control systems, RISC machine and parallel architectures;
Memory Management: Memory hierarchy, Virtual memory and Cache memory, Performance
comparison;
Programmed data transfer: Interrupts and interrupt handling systems, Assembly language
programming.
Method of Teaching and Learning: A combination of lectures and tutorials.
Assessment: End of semester examinationand assignments.
Recommended Reading:
1. Stallings W., (2008), Computer Organization and Architecture, 7thEdition, PrenticeHall
International Inc.
2. Ram B., (2007), Computer Fundamentals: Architecture and Organization, 4th Edition,
Wiley Eastern Limited.
3. Tananbaum A. S., (2006), Structured Computer Organization, 5thEdition, Prentice Hall
International Inc.
4. Morris Mano M., (2007), Computer System Architecture, 3rd Edition, Prentice-Hall
International Inc.
Type/Status : Compulsory
Course Code : COST 44594
Course Title : Advanced Database Systems with Applications
Pre-requisites : COST 21123
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate the theoretical knowledge on advanced database management system
design principles and techniques, and practical skills on applications of them.
Course Content:
Relational database design; More on SQL; Physical data organization and Indexing: Basics,
ISAM, B-tree, more trees, hashing, textual, distributed/P2P indexing; Query processing: scan,
sort, hash, index-based, systems view; Buffer management; Query optimization: Rewrite, cost
estimation, algorithms; Online query processing and optimization, downsizing the DBMS;
Transaction Processing Concepts; Concurrency Control Techniques; Practical Database Design
and Tuning; Database Recovery Techniques; Object-Oriented Databases; Deductive databases;
Emerging Database Technologies and Applications; Distributed Databases and Client-Server
Architecture; XML, DTD, XPath, XQuery, XSLT, XML storage, XML indexing, streaming
XML; Database Security and Authorization; Enhanced Data Models for Advanced Applications;
Recent advances in database systems such as Spatial and Active Databases; Introduction to Data
warehousing and data mining.
Method of Teaching and Learning:A combination of lectures, practical sessions on Oracle,
tutorials, assignments and group projects.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Ullman, J. D. and Widom, J., (2002), Database Systems: The Complete Book, Hector
Garcia-Molina, Prentice Hall.
2. Stonebraker M., andHellerstein, J. M., (1998), Readings in Database Systems, 3rd Edition,
Morgan Kaufman.
3. Elmasri, R. and Navathe, S. B.,(2006), Fundamentals of Database Systems,5th Edition,
Addison-Wesley Longman Publishing Co., Inc.
4. McFadden, F. R., Hoffer, J. A. and Prescott, M. B., (2006), Modern Database Management
8th Edition, Pearson Education Series.
5. Ramakrishnan, G., (2002), Database Management Systems, 3rd Edition, McGraw-Hill.
6. Hansen, G. W. and Hansen, J. V., (2002), Database Management and Design, 2nd Edition,
Prentice Hall.
7. Brundage, M., (2004), XQuery: The XML Query Language, Addison Wesley Longman
Publishing Co., Inc.
Type/Status :Optional
Course Code : COST 41604
Course Title : e-Business Technologies
Pre-requisites : COSC 11014, COST 22144
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
understand advanced aspects of e- commerce and steps involved in launching an
online business.
Course Content:
Foundations of Information Systems in Business, Components of e-Business, Competing with
Information Technology, Comparison of e-Marketing with traditional marketing , Managing
Data Resources, Functional and Cross-Functional e-Business Systems, Enterprise e-Business
Systems in Practice, Electronic Commerce Systems, Decision Support in e-Business, Developing
e-Business Strategies, Developing E-Business Solutions, Electronic Payment Systems,
Evaluation of EPSs, Comparison of EPS with traditional payment systems, Electronics Funds
Transfer, Payment Cards, Electronic cash, electronic checks and electronic wallets, Tools and
Technologies for secure EPS, Security Management of e-Business, Legal and Ethical Issues in e-
Business.
Method of Teaching and Learning:A combination of lectures and assignments.
Assessment:End of semester examination and assignments.
Recommended Reading:
1. Napier, H. A., (2002), E-Business Technologies, Thomson Course Technology.
2. Bidgoli, H., (2002),Electronic Commerce: Principles and Practice, Academic Press, New
York.
3. Deitel, H. M., Deitel, P. J. and Steinbuhler, K., (2001), e-Business and e-Commerce for
Managers, Prentice-Hall, New Jersey.
4. Elsenpeter, R. C. and Velte, T. J., E-Business: A Beginner’s Guide, Osborne, McGraw-
Hill.
5. Amor, D., (2000), Electronic Business Revolution, Prentice Hall, NJ.
Type/Status : Optional
Course Code :COST 41614
Course Title : Industrial Training
Pre-requisites : All COST core course units
Co-requisite : None
Learning Outcomes:
On completion of this course, the student should be able to:
work in an industrialized environment and to analyze, design and implement a real
world problem assigned by the industry.
Course Content:
Major aspects to be covered are the main phases of software and/or hardware systems
development, generic skills needed to work in an industrialized environment and understanding
of expectations of an organization.
Method of Teaching and Learning:This internship is for one complete semester covering
nearly 600 hours. Training is under the supervision and guidance of a suitable trainer in an IT
related industry.
Assessment:Evaluation of the progress report submitted by the trainer and the technical report
submitted by the student.
Recommended Reading:Reading and reference material will be recommended by the relevant
industry.
Type/Status : Compulsory
Course Code : COST 44624
Course Title : Computer Graphics
Pre-requisites : COST 12115, COST 31414 (For Biological Science students)
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate a good understanding of concepts behind computer graphics and be able
to apply the techniques and algorithms for modeling and rendering 2D and 3D
graphical objects.
Course Content:
Hardware and software components of graphics systems, Fundamental techniques in graphics
Output and filled data primitives. Graphic systems, Scan conversions, 2D and 3D geometric
transformations. Two dimensional viewing: viewing pipeline, clipping, and windowing. Three
dimensional viewing: viewing pipeline, viewing parameters, projections, viewing
transformations, clipping, visible surface detection. Basic rendering, Introduction to illumination
models and surface rendering, Geometric modeling and representations, Computer animation,
Visualization.
Method of Teaching and Learning:A combination of lectures, assignments and practical
sessions using OpenGL.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Hearn, D. and Baker, M.P., (2004), Computer Graphics with OpenGL, 3rdEdition, Prentice
Hall.
2. Giambruno M., (2002), 3D Graphics&Animation, Prentice Hall.
3. Hearn, D. and Baker, M.P., (1997), Computer Graphics C Version, 2ndEdition, Prentice
Hall.
4. Foley, J. D., van Dam, A, Feiner, S. K. and Hughes, J. F., (2002), Computer Graphics,
2ndEdition, Pearson Education.
5. Xiang, Z. and Plastock, R., (2005), Theory and Problems of Computer Graphics,
2ndEdition, Tata McGraw-Hill Publishing Company Limited New Delhi.
Type/Status : Compulsory
Course Code : COST 44634
Course Title : Logic Programming
Pre-requisites : COST 12115, COST 31414 (For Biological Science students)
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate an understanding of important aspects in an Intelligent Knowledge Based
System,
demonstrate skills in writing programs using PROLOG.
Course Content:
Introduction: Introduction to Artificial Intelligence (AI), Major areas of AI, Description of
Intelligent Knowledge Based Systems (IKBS);
Knowledge and Reasoning:Knowledge representation and types of reasoning;
Declarative/Procedural Programming Languages;
Logic Programming: Introduction to Logic Programming using PROLOG.
Basic Concepts: Facts, Rules and Queries, Data Objects, Goal Matching, Unification and
Backtracking, Recursion in Prolog, List manipulation in Prolog; Search strategies and Search
trees;
Cut and Negation: The Use of the Cut, Negation as Failure, Problems with Cut and Negation,
Implementing IF-THEN-ELSE condition;
Input and Output: Input and Output in Prolog, Communicating with files, Processing files of
terms.
Advanced features in Prolog: Difference Lists, Binary Trees in Prolog;
Some applications of Prolog: Searching and Sorting Techniques, Problem solving, Theorem
proving, Database applications, etc.;
Logic and Prolog: Deductive reasoning in Propositional and Predicate Logic, Resolution in
Propositional and Predicate Logic, First-order Predicate logic, Prolog and First-order Predicate
logic, Writing Logical Statements, Conversion of Logical Statements into Normal Form,
Unification, Unification algorithm, Resolution principle.
Method of Teaching and Learning:A combination of lectures, assignments and practical
sessions.
Assessment:End of semester examination, practical examination and assignments.
Recommended Reading:
1. Bratko, Ivan, (2001), Prolog Programming for Artificial Intelligence, 3rd Edition, Addison-
Wesley.
2. Sterling, L & Shapiro, E.,(1994), The art of Prolog: Advanced programming Techniques,
The MIT Press.
3. KaushikSaroj,(2007), Logic and Prolog Programming, 1st Edition, New Age International
Publishers, India.
4. Russel, S. and Norvig, P., (2005), Artificial Intelligence – A Modern Approach, 2ndEdition,
Prentice-Hall of India Private Limited.
5. Shinghal, R., (1992), Formal Concepts in Artificial Intelligence, 1st Edition, Chapman &
Hall.
6. Luger, G. F.& Stubblefield, W. A., (1993), Artificial intelligence, 2nd Edition, The
Benjamin/ Cummings Publishing Company, Inc.
7. Mc Donald C, Yazdani M.,(1990),Prolog Programming, 1st Edition, Blackwell Scientific
Publications.
Type/Status : Compulsory
Course Code : COST 44644
Course Title : Information Security
Pre-requisites : COST 44554
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
understand the need for good security management,
identify the security attacks associated with computer networks and how to provide
security against such attacks.
Course Content:
An introduction to cryptography and security mechanisms: Security Services, mechanisms and
Attacks;
Conventional cryptography: Symmetric Ciphers, Block Ciphers; Modular Arithmetic;
Public-key cryptography: Key management, Message Authentication and Hash functions, Digital
Signatures and Authentication Protocols;
Network security: Protection of data transferred over commercial information networks, Generic
security technologies relevant to networks, user identification techniques, authentication
protocols and key distribution mechanisms, Electronic mail security, IP Security, Web Security;
Computer Security: Defining security requirements (security policy). Intruders, Malicious
Software, Firewalls, Security models, The main security features and mechanisms in operating
systems, Security-related issues of computer architecture.
Security of Middleware: Software protection, Standards and security evaluation criteria,
Security-related standards, Guidelines for managing IT security.
Method of Teaching and Learning:A combination of lectures and assignments.
Assessment:End of semester examination and assignments.
Recommended Reading:
1. Stallings, W., (2006), Cryptography and Network Security, 4th Edition, Prentice-Hall of
India Private Limited.
2. Pfleeger, C. P. and Pfleeger, S. L., (2005), Security in Computing, 3rd Edition, Pearson
Education.
3. Bishop, M.,(2005),Introduction to Computer Security, Addison-Wesley, Pearson
Education, Inc.
4. Carroll, J M, (1996), Computer Security, Butterworth-Heinemann.
5. Leiss ,E.L., (1962), Principles of Data Security, Plenum Press.
6. Forouzan, B, A., (2007), Cryptography and Network Security, Tata McGraw-Hill
Publishing Company Ltd, India.
Type/Status : Compulsory
Course Code : COST 43656
Course Title : Research Project
Pre-requisites :All COST core course units
Co-requisites : None
Learning Outcomes:
On completion of this course, the student should be able to:
demonstrate an understanding in planning and carrying out a substantial research
based project in the field of Information Technology/Computer Science,
express themselves both in verbal and written forms.
Course Content:
A study and/or an implementation of a computer system related to major sub disciplines of
Information Technology/Computer Science curriculum under an assigned supervisor.
Method of Teaching and Learning:A combination of self-study, Seminars, Presentations and a
dissertation.
Assessment:Dissertation, Seminars and Oral presentations.
Recommended Reading:Reading list and material relevant for each selected topic to be
provided at the beginning of the academic year by the supervisor.
Level 1
Course Code: STAT 11014
Title: Statistical Modelling
Pre-requisite: A/L Combined Mathematics/Mathematics.
Co-requisite: STAT 11021
Learning Outcomes:
On successful completion of this course module the students will be able to: (i) demonstrate
the importance of statistics in making decisions on day-to-day life problems, (ii) construct
appropriate statistical models for real-life situations and apply concepts and procedures in
statistical decision making to those models.
Course Content: Introduction: Rationale for learning Statistics, How the Statistics serves
the scientists, Basic terminology, Essence of Science, Types of measurement and Statistical
approach. Descriptive Statistics: Frequency distribution, Measures of Central Tendency,
Measures of Dispersion and Shapes of distributions. Probability: Algebra of sets,
Permutations and Combinations, Random or non-deterministic experiment, Sample space,
Events and event space, Classical definition of probability, Frequency definition of
probability, Axiomatic definition of probability, Conditional probability, Partition of a
sample space, Total probability and Bayes' Theorem. Probability distributions: Binomial
distribution, Poisson distribution and Normal distribution. Fitting a theoretical distribution
to set of observed values: Binomial, Poisson and Normal distributions. Sampling and
sampling distributions: Random sampling, Stratified sampling, Sampling error, Sampling
distributions and Degrees of freedom. Tests of Hypotheses: Basic terminology of scientific
research, Rationale of scientific decision making, Limitations of scientific decisions and the
ways that they may be in error. Decisions about relationships: Introduction to Correlation,
Relationship between interval/ratio variables, Geometric appearance of relationship, Product-
Moment Correlation. Linear Regression: Prediction of one variable from another, Linear
regression.
Recommended reading:
1. Runyon Richard P., Harber Andrey, Pittenger David J., Coleman Kay, 8th edition, (2002),
‘Fundamentals of Behavioural Sciences’, McGraw-Hill.
2. Horvath Theadore, (1985), ‘Basic Statistics for Behavioural Sciences’, LittleBrown &
Company.
3. Erricker B. C., (1975), Reprint, ‘Advanced General Statistics’, Alden Press Oxford.
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 11021
Title: Statistical Laboratory I
Pre-requisite: A/L Combined Mathematics/Mathematics.
Co –requisite: STAT 11014
Learning Outcomes:
On successful completion of this course module the students will be able to apply techniques
provided in Statistical Packages to solve problems in Statistics.
Course Content: Introduction of one of the statistical packages Minitab, SPSS, or SAS,
Features of the package, How to use the package, Solving problems based on the course unit
STAT 11014 using the statistical package.
Recommended reading:
Manuals relevant to statistical packages
1. Runyon Richard P., Harber Andrey, Pittenger David J., Coleman Kay, 8th edition, (2002),
‘Fundamentals of Behavioural Sciences’, McGraw-Hill.
2. Horvath Theadore, (1985), ‘Basic Statistics for Behavioural Sciences’, LittleBrown &
Company.
3. Erricker B. C., (1975), Reprint, ‘Advanced General Statistics’, Alden Press Oxford.
Method of teaching and learning: Laboratory work.
Assessments: End of course practical examination and assignments
Course Code: STAT 12033
Title: Probability Distributions and Applications I
Pre-requisite: STAT 11014 & STAT 11021
Co-requisite: None
Learning Outcomes:
On successful completion of this course module the students will be able to design an
experiment and generate the probability distribution corresponding to a given real-life
situation involving one variable and apply principles of Probability and Statistics to such
experiments.
Course Content: Random variables: Rationale for the introduction of random variables,
Definition of a random variable, Types of random variable. Distributions: Discrete
probability density function of a discrete random variable, Probability density function of a
continuous random variable and Cumulative probability distribution function of a random
variable. Expectation of a function of a random variable: General definition, Properties of
expectation, Mathematical expectation, Variance and Standard deviation, Moments, Moment
generating function, Probability generating function and Characteristic function. Discrete
Probability Distributions: Discrete uniform, Bernoulli, Binomial, Poisson, Geometric and
Negative binomial. Continuous Probability Distributions: Uniform, Normal, Negative
exponential and Gamma.
Recommended reading:
1. Alexander M. Mood., Franklin A. Graybill, Pittenger Duane C. Boes, 3rd edition, Reprint
(2005), ‘Introduction to the Theory of Statistics’, McGraw-Hill.
2. Hoel Paul G., Port Sidney C., Stone Charles J., 1st edition, (1971), ‘Introduction to
Probability Theory’, Houghton Mifflin Company
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 12042
Title: Operational Research (OR) I
Co-requisite: None
Learning Outcomes: At the end of this course unit the students should be able to (i)
translate real life situations involving linear relationship into Linear Programming (LP)
Models, (ii) apply OR techniques in solving LP models.
Course Content: Introduction to OR, Construction of Mathematical Models, Solution
Techniques: Graphical Method, Simplex Method: Algebraic Approach, Tabulation
Approach : Standard Form, Non Standard Form, Duality and Sensitivity Analysis:
Formulation of the dual problem, Primal Dual relationship, Dual Simplex method, The
Primal-Dual method, Interior Point Method: Karmarkar"s Projective Algorithm.
Recommended readings: 1. Fredrick S. Hiller, Gerald J. Lieberman, 8th Edition,(2005),’Introduction toperations
Research’, Mc-Graw Hill.
2. Hamdy A.. Taha, 8th Edition, (2007), ‘Operations Research’, Tara Mc-Graw Hill.
3. Bazaraa M.S., Javis J.J., Sherali H. D., 2nd Edition, (1990), ‘Linear programming and
network flows’.
Methods of teaching and learning: A combination of lectures and tutorials. Assessment: End of course examination and assignments.
Level 2
Course Code: STAT 21053
Title: Probability Distributions and Applications II
Pre-requisite: STAT 12033
Co-requisite: None
Learning Outcomes: On successful completion of this course module the students will be
able demonstrate the knowledge and the skills of multi dimensional probability models in
solving real-life situations involving more than one variable.
Course Content: Two-dimensional Random variables: Rationale for the introduction of
two-dimensional random variables, Cumulative distribution function of two-dimensional
random variable: Definition, Properties of bivariate cumulative distribution function, Joint
density functions, Marginal density functions, Conditional probability distributions,
Independence and related theorems. Expectations: Expectation of a function of two-
dimensional random variable, Covariance and correlation coefficient, Conditional
expectation and related theorem, Conditional variance and related theorem, Joint moments,
Joint moment generating function, Uncorrelated random variables and Cauchy-Schwartz
Inequality. Distributions of functions of random variables and Expectations:
Distributions of sum, difference, product and quotient of two continuous random variables,
Expectations and related theorems. Probability distributions of maximum and minimum
of a set of random variables, Moment generating technique for obtaining probability
distributions, Transformations, Sampling and sampling distributions: Sampling,
Distribution of a sample, Sample moments, Sample variance, Law of Large Numbers,
Central Limit theorem, sampling from Normal distribution, Chi-square distribution, Student’s
t distribution and F distribution.
Recommended reading:
Alexander M. Mood., Franklin A. Graybill, Pittenger Duane C. Boes, 3rd edition, Reprint
(2005), ‘Introduction to the Theory of Statistics’, McGraw-Hill.
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 21062
Title: Statistical Inference I
Pre-requisite: STAT 21053
Co-requisite: None
Learning Outcomes: At the end of this course unit students should be able to demonstrate a
good knowledge and techniques of estimation in finding estimators of the population
parameters.
Course Content: Techniques of Finding Point Estimators: Introduction to Point Estimation; Methods of
Estimation : Methods of Moments, Maximum Likelihood Method, Bayes Estimators: Loss
and Risk Functions, Prior and Posterior Distributions, Bayes Risk, Bayes Estimator,
Properties of Point Estimators: Closeness, Mean – Squared Error, Unbiasedness,
Consistency and BAN, Loss and Risk Functions, Sufficiency, Unbiased Estimation:
UMVUE, Cramer-Rao Inequality, Sufficiency and Completeness, Rao-Blackwell Theorem,
Lehmann-Scheffe Theorem;
Interval Estimation: An Introduction to Intervals, Pivotal Quantity Method, Sampling
from Normal Distribution: Confidence Interval for the Mean, Confidence Interval for the
variance, Simultaneous Confidence Region for the Mean and Variance, Confidence Interval
for difference in Means, Approximate Confidence Intervals, Basian Interval Estimates
Recommended readings: 1. Alexander M.. Mood , Franklin A..Graybill , Pittenger Duane C. Boes, 3rd Edition,
Reprinted ( 2005 ), ’Introduction to the Theory of Statistics’, McGraw-Hill.
2. Ronald E. Walpole, Raymand H..Mayers, 6th Edition (1997), ‘Probability and Statistics
for Engineers and Scientits’.
Methods of teaching and learning: A combination of lectures and tutorials. . Assessment: End of course examination and assignments.
Course Code: STAT 22073
Title: Statistical Inference II
Pre-requisite: STAT 21062
Co-requisite: None
Learning Outcomes: At the end of this course unit students should be able to demonstrate
the knowledge of testing hypotheses in making decisions.
Course Content:
Test of Hypotheses: Introduction and Termonology to Hypotheses, Simple Versus
Simple : Simple Likelihood Ratio Test, Most Powerful Test : Definition, Neyman-Pearson
Lemma.Composite Hypotheses: Generalized Likelihood Ratio Test, Uniformly Most
Powerful Test ; Sampling from the Normal Distribution: Tests on the mean, Test on the
variance, Tests on the several Means, Tests on Several Variances; Chi-Squre Tests:
Asymptotic Distribution of Generalized Likelihood-ratio, Chi-square Goodness-of-fit Test,
Test of Independence in Contingency Tables : Two-way Contingency Tables;
Nonparametric Methods: Introduction to Nonparametric Methods, Equality of Two
Distributions: Two-sample Sign Test, Run Test, Signed Rank Test, Median Test, Rank-sum
Test, Wald-wolfwoitz Runs Test.
Recommended readings: 1. Alexander M.. Mood , Franklin A..Graybill , Pittenger Duane C. Boes, 3rd Edition,
Reprinted ( 2005 ), ‘Introduction to the Theory of Statistics’, McGraw-Hill.
2. Ronald E. Walpole, Raymand H..Mayers, 6th Edition,(1997),’Probability and Statistics
for Engineers and Scientits’.
Methods of teaching and learning: A combination of lectures and tutorials. Assessment: End of course examination and assignments.
Course Code: STAT 22082
Title: Survey Methods and Sampling Techniques
Pre-requisite: STAT 22073
Co-requisite: None
Learning Outcomes: At the end of this unit the students will be able to demonstrate the
knowledge in planning surveys and analyzing the results using the most appropriate sampling
technique.
Course Content: Introduction and terminology, Techniques of data collection,
Sampling methods: Introduction, Simple Random Sampling, Sampling Proportions and
Percentages, Stratified Random Sampling, Ratio estimators, Regression estimators,
Introduction to cluster sampling and systematic sampling.
Recommended reading: 1. Cochran, W.G., 3rd Edition, (1977), ‘Sampling Techniques’ , John Wiley & Sons
2. Barnet, V. , 3rd Edition, (1974),‘Elements of Sampling Theory’ , London: The English
University Press Ltd
Method of teaching and learning: A combination of lectures, tutorial and practical sessions
Assessments: End of course examination and assignments
Level 3
Course Code: STAT 31094
Title: Operational Research (OR) II
Pre-requisite: STAT 12042
Co-requisite: STAT 31101
Learning Outcomes: At the end of this course unit the students should be able to apply OR
techniques in Queuing Theory, Network models, Integer programming models and Game
theory to real life problems.
Course Content:
The Transportation Models and their solution techniques , The Assignment Models and
their solution techniques, Queuing Theory: Queuing Systems, Queue Characteristics,
Poisson Process, and M/M/1 System, Other Systems (M/M/s, M/M/1/k, and M/M/s/k).
Network Models: Shortest path Problem, The Minimum Spanning Tree Problem, The
Maximum Flow Problem, The Minimum Cost Flow Problem, Project Planning and Control
with PERT-CPM, Project Management, Integer programming: Introduction to Integer
programming, Formulation Possibilities with Binary Variables, Perspectives on Solving
Integer programming Problems, The Branch and Bound Techniques and its Application to
Binary Integer Programming, Game Theory: Formulation of Two-Person, Zero-Sum
Games, Solving Simple Games, Game with Mixed Strategies, Graphical Solution Procedure,
Solving by Linear Programming .
Recommended readings: 1. Fredrick S. Hiller, Gerald J. Lieberman, 8th Edition , (2005), ‘Introduction to Operations
Research’, Mc-Graw Hill.
2. Hamdy A.. Taha, 8th Edition, (2007), ‘Operations Research’, Tara Mc-Graw Hill.
3. Bazaraa M.S., Javis J.J., Sherali H. D., 2nd Edition, (1990), ‘Linear programming and
network flows’.
4. Laurence A. Wolsey, Edition, (1998), ‘Integer Programming’.
Methods of teaching and learning: A combination of lectures and tutorials. Assessment: End of course examination and assignments.
Course Code: STAT 31101
Title: O.R. Laboratory
Pre-requisite: STAT 12042
Co-requisite: STAT 31094
Learning Outcomes: On successful completion of this course module the students will be
able to apply techniques provided in O.R. Packages to solve problems in O.R.
Course Content: Introduction of one of the O.R. Packages TORA, Solver, LINGO or
LINDO, features of the package, Solving problems based on the course units STAT 12042
and STAT 31094 using the statistical package.
Recommended readings: 1. Fredrick S. Hiller, Gerald J. Lieberman, 8th Edition,(2005), ‘Introduction to Operations
Research’, Mc-Graw Hill.
2. Hamdy A.. Taha, 8th Edition, (2007), ‘Operations Research', Tara Mc-Graw Hill.
Method of teaching and learning: Laboratory work.
Assessments: End of course practical examination and assignments
Course Code: STAT 32112
Title: Statistical Quality Control
Pre-requisite: STAT 21053
Co-requisite: None
Learning Outcomes: At the end of this unit the student will be able to demonstrate the
knowledge and understanding of the principles of statistical quality control to solve problems
that arise in the industry.
Course Content: Classification of Inspection plans, OC-curve, process curve, methods of
choosing sampling plans, acceptance sampling schemes, inspection by variables, control
charts, cumulative sum charts, decision rules, continuous sampling plans, process trouble
shooting.
Recommended reading:
Douglas C. Montgomery, 5th Edition, (2004), Introduction to Statistical Quality Control’,
John Wiley and Sons
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 32123
Title: Linear Models
Pre-requisite: STAT 22073
Co-requisite: None
Learning Outcomes: At the end of this unit the students will be able to effectively apply
regression techniques to build statistical models derived from real life problems.
Course Content: Regressions: Simple linear regression model, Parameter estimation,
Gauss-Markov Theorem, Inferences about the model, Prediction, Analysis of variance
approach, Model adequacy, Lack of fit. Multiple linear regression model, Parameter
estimation, Inferences about the model, Prediction, Model adequacy, Variable selection and
model building procedures, Multicolinearity
Design an Analysis of experiments: Principles of design, Analysis of variance for one-way
classification, Analysis of variance for two-way classification, Missing values, Multiple
comparisons.
Recommended reading:
1. Draper, N.R and smith, 3rd Edition, (1998), ‘Applied Regression Analysis’, John Wiley
& Sons.
2. Montgomery, D.C., 5th Edition, (2001), ‘Design and Analysis of Experiments’, John
Wiley & Sons.
3. Hicks, C.R., 4th Edition, (1993), ‘Fundamental Concepts in Design of Experiments’,
Oxford University Press.
Method of teaching and learning:
A combination of lectures, tutorial and practical sessions
Assessments:
End of course examination and assignments
Course Code: STAT 32131
Title: Statistical Laboratory II
Pre-requisite: STAT 11021
Co-requisite: None
Learning Outcomes: On successful completion of this course module students will
be able to effectively analyse data using a standard statistical package.
Course Content: Solving problems based on inferential statistics, sampling
techniques and linear modules using a standard statistical package
Recommended reading: Manual relevant to the statistical package
Method of teaching and learning: Laboratory work.
Assessments: End of course practical examination and assignments
Course Code: STAT 14142
Title: Statistics for Natural Sciences
Pre-requisite: None
Co-requisite: None
Learning Outcomes: On successful completion of this course module students will
be able to design random experiments using the appropriate statistical method.
Course Content: Introductory concepts: Descriptive statistics, An introduction to
probability, Some important probability distributions, Sampling techniques. Parametric
Inference: Inferences associated with a single population, Inferences associated with two
populations. Goodness-of-fit tests, Correlation and Regression analysis, An introduction to
analysis of variance procedures. Nonparametric statistical methods.
Recommended reading:
1. Anderson, D.R., Sweeney, D.J. and William, T.A, 2nd Edition, (1991), ‘Introduction to
Statistics Concepts and Applications’, West Publishing Company.
2. McClave, J.T., Dietrich, F.H. and Sincich, T., 7th Edition, (1997), ‘Statistics’, Prince Hall
Method of teaching and learning: A combination of lectures and tutorials
Assessments: End of course examination and assignments.
Course Code: STAT 14152
Title: Fundamentals of Applied Statistics
Pre-requisite: None
Co-requisite: None
Learning Outcomes: At the end of this unit students should have the knowledge to apply the
basic statistical concepts to real life applications in the field of Humanities and Social
Sciences. They will be able to design and perform any random experiments and use statistical
methods to analyze the data obtained from the experiment.
Course Content: Introduction: The definition of statistical analysis, Basic mathematical
concepts. Descriptive statistics: Frequency distributions and graphing techniques, Percentiles,
Measures of central tendency, Measures of dispersion, The standard deviation. Distributions:
Some important discrete distributions, Standard Normal distribution, An introduction to
contingency tables and Chi-Square tests, Correlation and Regression, An introduction to
Multivariate Data Analysis, Inferential Statistics: Introduction to statistical inference,
Parametric tests of significance, Design and Analysis of simple comparative experiments,
Non-Parametric tests of significance.
Recommended reading:
1. Elifson. Kirk, Runyon. Richard, and Haber. Audrey, 3rd Edition, (1998), ‘Fundamentals
of Social Statistics’, McGraw-Hill.
2. Miller. Janet, 2nd Edition, (1983), ‘Statistics for Advanced Level’, Cambridge Press.
Method of teaching and learning: A combination of lectures and tutorials
Assessments: End of course examination and assignments.
Special Degree Course Units
Course Code: STAT 41013
Title: Time Series Analysis
Pre-requisites: Core courses covered in the first two years
Co-requisite: None
Learning Outcomes:
At the end of this unit students should be able to analyse time series data, fit suitable
models to the data, and use forecasting techniques to predict future values of the model
under consideration.
Course Content: An introduction to Time Series, Stationary time series, Components of
a time series, Simple forecasting techniques: Moving averages, Exponential smoothing,
Halt-Winters procedure, Auto-Covariance function, Auto-Correlation function, Models
of time series: Auto Regressive models, Moving Average models, Auto Regressive
Moving Average models, and Auto Regressive Integrated Moving Average models,
Tentative identification of a model for a given set of observations, Estimation of model
parameters, Model checking and forecasting, Case Studies.
Recommended reading:
1. Brockwell and Davis, 2nd Edition, (1991), ‘Time Series- Method and Forecasting’,
Springer.
2. Box and Jenkins, (1976), ‘Time Series Analysis’, John Willy.
3. DeLurgio, S.A., (1998), ‘Forecasting Principles and Applications’, McGraw Hill.
4. Chatfield, C., 2nd Edition, (1980), ‘Analysis of Time Series’, Chapman-Hall.
Method of teaching and learning: A combination of lectures tutorials and group projects.
Assessments: End of course examination and assignments
Course Code: STAT 44024
Title: Categorical Data Analysis
Pre-Requisites: Core courses covered in the first two years
Co-requisite: None
Learning Outcomes:
At the end of this unit students should be able to analyse categorical data, fit suitable
models and interpret these models.
Course Content:
Introduction to categorical variables, Contingency tables, Methods for two binomial variates,
Logit models for categorical data, Methods for log-linear models for multiway contingency
tables, Fitting logit and loglinear models, Selection of a model, Testing goodness of fit of a
model, Association and independence in multidimensional tables.
Recommended reading:
1. S. E. Fienberg, 2nd Edition,( 1980), ‘The analysis of cross- classified categorical data’,
New York Springer
2. A. Aqresti, 2nd Edition, (2002), ‘Categorical data analysis’, John Wiley& sons.
3. D. Collet, 2nd Edition, (2003) ‘Modelling Binary data’, Chapman & Hall
Method of teaching and learning: A combination of lectures, tutorial and practical sessions
Assessment: End of course examination and assignments.
Course Code: STAT 41033
Title: Optimization
Pre –Requisites:
Co-requisite: None
Learning Outcomes:
At the end of this course unit students should demonstrate the knowledge and understanding
of the mathematical concepts of linear optimization and some classical polynomially solved
network optimization problems.
Course Content: Introduction and Applications, The simplex Method: Linear Programs in Standard Form,
Basic Solution: Optimality Test and Basis Exchange, The Fundamental Theorem of Linear
Programming, Degeneracy and Fitness of the simplex Method, Finding a feasible Starting
Solution, The revised Simplex Method. Duality and Further Variations of the Simplex
Method: Dual Programs and the Duality Theorem, Complementary Slackness Conditions,
The Dual Simplex Method, The Primal –Dual Simplex Method ,Linear Programs with
Bounded Variables Interior Point Method: Karmarkar’s Projective Algorithm: One
Iteration of Karmarkar’s Projective Algorithm, Projective Transformation, Move in the
Direction of Steepest Descent, Inverse Transformation ,Karmarkar’s Projective Algorithm, A
purification Scheme, Converting a Given LP into the Required Format. Introduction to
Graph Theory and Shortest Path Problems:Introduction to Graph Theory ,Shortest
Dipaths with Nonnegative Costs, Shortest Dipaths with Negative Costs, Pairwise Shortest
Dipaths, Shortest Path Problems,Shortest Dipath Problems and Linear Programs. Network
Flow Problems: Definition and Basic Properties of Network Flows, Maximal Flows,
Feasible Flows for NFP and the Negative Dicycle Algorithm ,The Network Simplex
Algorithm .Matchings: Definition and basic Properties, Bipartite Matching Problems,
Maximal Matching Problem in Bipartite Graphs, Minimal cost Matching Problem in
Bipartite Graphs, Matching Problem in Arbitrary Graphs, MMP in Arbitrary Graphs ,MCMP
in Arbitrary Graphs.
Recommended reading:
1. Bazaraa, M.S., Jarvis,J.J., Sherali, H.D., 3rd edition, (2004), ‘Linear Programming and
Network Flows’, Wiley, New York.
2. Papaddimitriou, C.H., Steiglitz, K., Unabridged edition, (1998), ‘Combinatorial
Optimization:Algorithem and Complexity’, Dover Publications.
Method of teaching and learning: A combination of lectures and tutorials
Assessment: End of semester examination and assignments
Course Code: STAT 44044
Title: Actuarial Mathematics
Pre-Requisites: STAT 22073
Co-requisite: None
Learning outcomes:
At the end of this unit students should be able to demonstrate the knowledge and
understanding of the underlying principles of actuarial statistics in life insurance industry.
Course Content:
Life Insurance: Survival distribution and the life tables, Discrete & continuous Life Insurance
Models, Life Annuities: Introduction to Annuity Models, continuous whole life & the
Discrete Life Annuity Due Model, Net Premiums: Fully discrete whole life, the aggregate
determination & loss function approach, Net Premium Reserves, Multiple Life Functions,
Multiple Decrement Models, Valuation theory for pension plans, Insurance models including
expenses, Non-Forfeiture benefits and dividends.
Recommended reading:
1. S. D. Promislow, 1st Edition, (2006), ‘Fundamentals of Actuarial Mathematics’, JohWiley and Sons.
2. Hans U. Gerber, 3rd Edition, (1997), ‘Life Insurance Mathematics’, Springer.
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 42053
Title: Bayesian Inference & Decision theory
Pre-Requisites: STAT 22073
Co-requisite: None
Learning Outcomes:
At the end of this course unit students should be able to solve real world problems related to
Bayesian Inference and Decision Theory.
Course Content: Bayesian Inference for Discrete Random Variables: Two equivalent ways of using
Bayes’ theorem, Bayes’ theorem for binomial with discrete prior. Bayesian inference
for Binomial Proportion: Using a uniform prior, Using a beta prior, Choosing your
prior, Summarizing the posterior distribution, Estimation the proportion, Bayesian
credible interval. Comparing Bayesian and Frequentist Inferences for Proportion:
Frequent interpretation of probability and parameters, Point estimation, Comparing
estimators for proportion, Interval estimation, Hypothesis testing, Testing a one-Sided
hypothesis, Testing a two-sided hypothesis. Bayesian inference for Normal mean:
Bayes’ theorem for normal mean with a discrete prior, Bayes’ theorem for normal
mean with a continuous prior, Choosing your normal prior, Bayesian credible interval
for normal mean, Predictive density for next observation. Comparing Bayesian and
Frequentist Inferences for Mean: Comparing frequentist and bayesian point
estimators, Comparing confidence and credible intervals for mean, Testing a one-sided
hypothesis about a normal mean, Testing a two-Sided hypothesis about a normal mean.
Bayesian Inference for Difference between Means: Independent random samples
from two normal distributions, Case 1: Equal variances, Case 2: Unequal variances,
Bayesian inference for differences between two proportions using Normal
approximation, Normal random samples from paired experiments. Bayesian Inference
for Simple Linear Regression: Least square regression, Exponential growth model,
Simple linear regression assumptions, Bayes’ theorem for the regression model,
Predictive distribution for future observation
Recommended reading:
1. William M.B., 2nd Edition, (2004), ‘Introduction to Bayesian Statistics’, John Wiley &
Sons.
Method of teaching and learning: A combination of lectures and tutorials.
Assessment: End of semester examination and assignments.
Course Code: STAT 43066
Title: Stochastic Processes
Pre-requisite: STAT 21042.
Co-requisite: None
Learning Outcomes:
On successful completion of this course module students should be able to: (i) demonstrate
the importance of stochastic models in the study of Physical, Biological, Social and
Economic systems encounterd in day-to-day life, (ii) construct appropriate stochastic models
for such real-life situations giving the better representation, description and specification and,
apply concepts and procedures in Stochastic Processes to those models.
Course Content: Introduction: Rationale for learning Stochastic Processes, Role of
stochastic models in the study of Physical, Biological, Social and Economic systems
encounter in day-to-day life. Stochastic Processes in General: States and the State Space,
Parameter Space and a realization of a Stochastic Process, Classification of Stochastic
Processes, Probability Distribution of a Stochastic Process, Transition Probability
Distributions, Markov Dependence of a Stochastic Process, Markov Processes and Chapman
Kolmogorov Equation. Markov Chain: Two-state Markov chains, Two-state Markov
process as a limiting case of a Two-state Markov chain, Classification of States of a Markov
Chain, Limit theorem on Markov Chain, Periodicity, Limits of the Higher Probabilities.
Finite Markov Chains: One-step and n-step Transition Probability Distributions, Irreducible
Aperiodic finite Markov chains, Finite Markov Chains with Transient and Recurrent States.
Infinite Markov Chains: Irreducible Aperiodic Infinite Markov Chains, Queuing Processes,
Non-irreducible Infinite Markov Chains, Branching Processes. Markov Processes with
Discrete State Space: Poisson Processes and its properties, Pure Birth Processes, Pure Death
Processes and, Birth and Death Processes.
Recommended reading:
1. Narayan Bhat, U., (1972), ‘Elements of Applied Stochastic Processes’, John Wiley &
Sons Inc.
2. Bailey, N. T. J., 1st Edition 3rd Reprint (1967), ‘The Elements of Stochastic Processes’,
John Wiley & Sons Inc.
3. Medhi, J. 1st Edition Reprint (1991), ‘Stochastic Processes’, Wiley Eastern Ltd.
4. Hoel, P. G., Port, S. C., Stone, C. J., (1994), ‘Introduction to Stochastic Processes’,
Houghton Miffin Company.
5. Feller, W., 2nd Edition Reprint (1966), Volume I, ‘An Introduction to Probability Theory
and Its Applications’, John Wiley & Sons Inc.
Method of teaching and learning: A combination of lectures, group work and tutorials.
Assessment: End of course examination and assignments.
Course Code: STAT 44073
Title: Multivariate Data Analysis
Pre-requisite: Core courses covered in first three years
Co-requisite: None
Learning outcomes:
At the end of this unit students should be able to (i) recognize multivariate data and identify
contexts where multivariate data analysis techniques should be used (ii) test hypotheses about
the population means based on multivariate data (iii) compare two or more population means
based on multivariate data (iv) analyse the correlation structure of multivariate data using the
appropriate technique.
Course Content:
Introduction to multivariate data, Multivariate normal distribution, Wishart distribution and
Hotelling's T-squared distribution, Testing hypotheses on single population means based on
Hotelling's T-squared distribution, Comparison of two multivariate population means,
Multivariate Analysis of Variance (MANOVA), Discriminant data analysis, Principal
component analysis, Factor analysis, Cluster analysis
Recommended reading:
1. Richard A. Johnson and Dean W. Wichern, 4th edition, (1998), ‘Applied Multivariate
Statistical Analysis’, Prentice Hall
2. Morrison, D. F., 4th Edition, (2004), ‘Multivariate Statistical Methods’, Duxbury Press
Method of teaching and learning: A combination of lectures and tutorial.
Assessment: End of course examination and assignments.
Course Code: STAT 42083
Title: Design and Analysis of Experiments
Pre-requisite: STAT 32123
Co-requisite: None
Learning Outcomes:
At the end of this unit students should be able to demonstrate advanced designing skills so as
to ensure the best possible designs in statistical experiments.
Course Content:
Experiments with a Single Factor: The Analysis of Variance, Analysis of the Fixed Effects
Model, Model Adequacy Checking, Practical Interpretation of Results, Determining Sample
Size, The Regression Approach to the Analysis of Variance, Randomized Blocks, Latin
Square and Related Designs: The Randomized Complete Block Design, The Latin Square
Design, Balanced Incomplete Block Design, Introduction to Factorial Designs: Basic
Definitions and Principles, The Advantage of Factorials, The Two-Factor Factorial Design,
The General Factorial Design, Blocking in a Factorial Design. The 2k Factorial designs: the
22 Design, the 23 Design and The General 2k Design.
Recommended reading: 1. Hicks C. R., 4th Edition, (1993), ‘Fundamental Concepts in Design of Experiments’,
Oxford University Press.
2. Hicks C. R., Turner K. V., 5th Edition, (1999),’Fundamental Concepts in Design of
Experiments’, Oxford University Press.
3. Douglas C. Montgomery, 5th Edition, (2001), ‘Design and Analysis of Experiments’,
John Wiley & Sons, Inc.
Method of teaching and learning: A combination of lectures, tutorials and assignments.
Assessment: End of semester examination and assignments.
Course Code: STAT 44094
Title: Econometrics
Pre-requisite: STAT 32123
Co-requisite: None
Learning Outcomes:
On successful completion of this course module the students will be able to identify the
appropriate techniques in modelling economic data and produce their own empirical
econometric analysis.
Course Content: Relaxing the assumptions of the classical model: Multicollinearity and
micronumerosity, Heterosecdasity, Auto-correlation, Econometric modelling, Topics in
Econometrics: Regression models on dummy independent variables, Regression models on
dummy dependent variables, Dynamic econometric model, Simultaneous-Equation models.
Time series Econometrics: Stationarity, Unit roots, Cointegration, Forecasting.
Recommended reading:
1. Domodar N. Gujarat., 4th Edition, (2002), ’Basic Econometrics’, McGraw-Hill.
2. William H. Greene., 5th edition, (2002), ‘Econometric Analysis’, Prentice Hall.
3. Maddala. G.S., 3rd Edition, (2001), ‘Introduction to Econometrics’, Wiley
Method of teaching and learning: A combination of lectures, tutorial and practical sessions
Assessment: End of course examination and assignments
Course Code: STAT 44104
Title: Special Topics in Statistics
Pre-requisite: Core courses covered in the first three years
Co-requisite: None
Learning Outcomes:
At the end of this course students should be knowledgeable about modern trends in
Statistics.
Course Content:
This course is designed to include specialized modern topics in Statistics.
Recommended reading: Required reading material will be recommended by the lecturer depending on the
relevant topic.
Method of teaching and learning: A combination of lectures, tutorials and group projects.
Assessment: End of semester examination, assignments and group projects.
Course Code: STAT 43116
Title: Research Project/ Independent Study
Pre-requisite: Core courses covered in the first three years
Co-requisite: None
Learning Outcomes:
At the end of this course students should be able to conduct a research project/ an
independent study in an area in Statistics.
Recommended reading: Required reading material will be recommended by the supervisor depending on the
relevant project/study.
Method of teaching and learning: A project/ study project under the supervision of a senior
staff member of the department.
Assessment: A dissertation should be submitted and the results should be presented at a
seminar. The work will be assessed on the dissertation and the seminar.
COURSE CODE : STCS 44045
TITLE : Advanced Database Systems with Applications
PRE-REQUISITES : COSC 22025
CO-REQUISITES : None
LEARNING OUTCOMES :
At the end of this course module a student will be able to demonstrate the theoretical
knowledge on advanced database management system design principles and techniques, and
practical skills on applications of them.
COURSE CONTENT:
Relational database design; More on SQL; Physical data organization and Indexing: Basics,
ISAM, B-tree, more trees, hashing, textual, distributed/P2P indexing; Query processing:
scan, sort, hash, index-based, systems view; Buffer management; Query optimization:
Rewrite, cost estimation, algorithms; Online query processing and optimization, downsizing
the DBMS; Transaction Processing Concepts; Concurrency Control Techniques; Practical
Database Design and Tuning; Database Recovery Techniques; Object-Oriented Databases;
Deductive databases; Emerging Database Technologies and Applications; Distributed
Databases and Client-Server Architecture; XML, DTD, XPath, XQuery, XSLT, XML
storage, XML indexing, streaming XML; Database Security and Authorization; Enhanced
Data Models for Advanced Applications; Recent advances in database systems such as
Spatial and Active Databases; Introduction to Data warehousing and data mining.
METHOD OF TEACHING AND LEARNING:
A combination of lectures, tutorials, assignments and group projects.
ASSESSMENT: End of semester examination, practical examination and assignments.
RECOMMENDED READING
1. Ullman, J. D. and Widom, J., Database Systems: The Complete Book, (2002), Hector
Garcia-Molina, Prentice Hall.
2. Stonebraker M., and Hellerstein, J. M., Readings in Database Systems, (1998, 3rd
Edition), Morgan Kaufman.
3. Elmasri, R. and Navathe, S. B., Fundamentals of Database Systems (2006, 5th
Edition), Addison-Wesley Longman Publishing Co., Inc.
4. McFadden, F. R., Hoffer, J. A. and Prescott, M. B., Modern Database Management
(2006, 8th Edition), Pearson Education Series.
5. Ramakrishnan, G., Database Management Systems, (2002, 3rd edition), McGraw-Hill.
6. Hansen, G. W. and Hansen, J. V., Database Management and Design, (2002, 2nd
Edition), Prentice Hall.
7. Brundage, M., XQuery: The XML Query Language, (2004), Addison Wesley
Longman Publishing Co., Inc.
COURSE CODE : COSC 44064
TITLE : Machine Learning
PRE-REQUISITES : All COSC core course units followed in the General Degree.
CO-REQUISITES : None
LEARNING OUTCOME:
At the end of this course module a student will be able to demonstrate the ability to solve
problems using learning algorithms, neural networks and genetic algorithms.
COURSE CONTENT:
Learning: Learning Agent, Concept of learning, Nature inspired and other types of learning,
Decision tree learning;
Artificial Neural Networks: Basic Models, Hopfield Model, Design and implementation,
Perceptrons, Multilayer Networks and Backpropagation, Counterpropagation and recurrent
networks;
Statistical Training: Evaluating hypotheses, Bayesian learning, Bayesian belief networks,
Optimal Classifiers, Computational learning theory, Vapnic-Chervonenkis Dimension,
Mistake bound analysis, Sample complexity analysis, Instance-based learning;
Genetic Algorithms: Schemata, Design and implementation, Genetic operations, Hypothis
Space search, Genetic Programming, Models of Evolution and Learning;
Inductive and Analytical Learning; Reinforcement Learning; Classifier Systems;
Selected applications in data mining, automated knowledge acquisition, pattern recognition,
program synthesis, text and language processing, internet-based information systems, human-
computer interaction, semantic web, bioinformatics and computational biology.
METHOD OF TEACHING AND LEARNING: A combination of lectures and
assignments.
ASSESSMENT: End of course examination and assignments.
RECOMMENDED READING:
1. Mitchell, T. M., Machine Learning, (1997), McGraw-Hill International Editions.
2. Bishop, C., Pattern Recognition and Machine Learning, (2006), Springer-Verlag.
3. Hertz, J., Krogh, A. and Palmer, R. G., Introduction to The Theory of Neural
Computation, (1991), Addison-Wesley Publishing Company.
4. Goldberg, D. E., Genetic Algorithms, (1989), Addison-Wesley Publishing Company.
5. Rao, M. A. and Srinivas, J., Neural Networks, (2004), Narosha Publishing House Pvt.
Ltd.
6. Mehothra, K., Mohan, C.K. and Ranka, S, Artificial Neural Networks,(1997), Oxford
University Press.
7. Looney, C.G., Pattern Recognition Using Neural Networks, (2000), MIT Press.