100 Level

First Semester


Courses Title Units
GNS 111 French/Arabic for Beginners I 1           
GNS 112 Use of English           1
GNS 113 Elements of Civic Education 1
GNS 115 Use of Library I 1
CSC 111 Introduction to Computer Science (PR OL Math)    1
MAT 111 General Mathematics I    3
MAT 112 General Mathematics II   3
PHY 111 General Physics I 3
PHY 112 Experimental Physics I 1
CHM 111 General Chemistry I 3
CHM 112 Experimental Chemistry I 1
BIO 111 General Biology I   3
BIO 112 Experimental Biology I 1
  TOTAL 24


Second Semester


GNS 121 French/Arabic for Beginners II 1
GNS 122 Use of English (Listening and Skills) II 2
GNS 123 Elements of Civic Education II 1
CHM 121 General Chemistry II 2
CHM 123 Experimental Chemistry II 1
CSC 121 Introduction to Computing 1
CSC 122 Problem Solving (BASIC) 3
PHY 121 General Physics II 3
PHY 122 Experimental Physics II 1
MAT 121 General Mathematics III 3
BIO 121 General Biology II 3
BIO 122 Experimental Biology II 1
  TOTAL 22

200 Level

First Semester

Courses Title Units
GNS 211 French/Arabic for Beginners III 1
GNS 212 Use of English III (Writing Skills) 2
GNS 213 Sociology of Nigerian People & Culture I 1
GNS 214 International/Current Affairs 1
CSC 211 Foundations of Sequential Programming 3
CSC 212 Scientific  Programming (FORTRAN) 3
MAT 212 Sets, Logic and Algebra 3
MAT 213 Linear Algebra I 3
MAT 214 Mathematics Methods I 3
PHY 211 Elementary modern Physics 2
  TOTAL 22

Second Semester

GNS 221 French /Arabic for Beginners IV            1
GNS 222 Use of English IV (Reading & Skills) 2
GNS 223 Sociology of Nigerian People and Culture II 1
GNS 224 Introduction to Philosophy and Logic             1
CSC 221 Computer Hardware 3
CSC 222 Structured Programming (C++) 3
CSC 223 Discrete Structures 3
PHY 222 Electronics    3
MAT 222 Linear Algebra II 3
  TOTAL 20

300 Level

First Semester

Courses Title Units
GNS 312 General Psychology 1
GNS 313 Economics and Management Science I 1
GNS 315 Use of English VI 2
CSC 311 System Analysis & Design            3
CSC 312 Computer Architecture 3
CSC 313 Object Oriented Programming (Java) 3
CSC 314 Fundamentals of Data Structures 3
CSC 315 Software Engineering 2

Electives 3 CU from

CSC 316 Theory of Computing       3
MAT 316 Numerical Analysis I 3
  TOTAL 22

Second Semester


GNS 322 Psychology of the Military 1
GNS 323 Economics and Management Science  II 1
GNS 325 Use of English V 2
CSC 321 Data Communications 3
CSC 322 Operating Systems 3
CSC 323 Formal Method of Software Development    3
CSC 324 Data Based Management System 2
FSR 321 Research Methods 2
CSC 398

Cadets Ind. Work Experience Scheme(CIWES)

/(Field Trip)I

Electives 3 CU from

MAT 326 Operations Research I 3
CSC 325 Statistical Computing 3
  TOTAL 23

400 Level

First Semester

Courses Title Units
CSC 411 Net-Centric Computing 3
CSC 412 Design and Analysis of Algorithms 3
CSC 413 Computer Networking 3
CSC 414 Human - Computer Interface 3
CSC 415 Compiler Construction 3

Electives 3 CU from

CSC 415 Compiler Construction 3
CSC 416 Computer Graphics & Visualisation 3
CSC 417 Queuing Systems Performance Evaluation 2
CSC 418 Special Topics on Software Engineering 3
CSC 419 Special Topics in Computer Science    3
  TOTAL 18

Second Semester

CSC    421 Artificial Intelligence 3
CSC    422 Survey of Programming Languages 3
CSC    423 Computational Science & Numerical Methods       3
CSC    498 Cadets Ind. Work Experience Scheme (CIWES)II  3
CSC    499 Project 6

Electives 6 CU from

CSC    424 Modelling and Simulation 3
CSC    425 Distributed Systems 3
CSC    426 Project Management 3
CSC    427 Optimization Techniques 3
CSC    428 Computer System Performance Evaluation 3
CSC    429 Formal Method of Computation 3
CSC    441 Information Technology Laws 3
  TOTAL 24

Course Description for the Computer Science Programme

The discipline of computer science, history of computer science, Data representation in digital computers. Basic computer organization, Basic computer algorithms in pseudo-code. Introduction to computer network, and the internet. Overview of computer application.

CSC 121    INTRODUCTION TO COMPUTING: (1 Unit) (L 30: P 0: T 0)
Pre-requisite CSC 111
General introduction to the Computer. Computer and Applications; Word Processors, Spreadsheet, Presentation Software, the Internet, using the internet.
CSC 122    PROBLEM SOLVING (BASIC) 2: (1 Unit) Pre-requisite CSC 111
Computer Programming Statements, Symbolic Names, Arrays, Subscripts, Expressions and Control Statements using Basic Programming Language.

The relationships between H/L languages and the Computer Architecture that underlies their implementation: basic machine architecture, assembles specification and translation of P/L Block Structured Languages, parameter passing mechanisms.

Control and operation of the computer, statements, constants, variables, operations, formats. Transfer of control, loops, subscripted variables, multidimensional arrays, input-output operations, functions and subroutines,
CSC 221    COMPUTER HARDWARE:  (3 Units) (L 45: P 0)
Pre-requisite CSC 111
Computer circuit diode arrays, PLAS etc, integrated circuit fabrication process. Use of MSL, LSI and VLSIIC hardware design, Primary and Secondary Memories; core memory, etc. Magnetic Device: Disks, Tapes, Video Disks etc. peripheral devices: Printers, CRTs, Keyboards, Character Recognition, Operational Amplifies: Analogue to Digital and digital Converter.
CSC 222    STRUCTURED PROGRAMMING:  (3 Units) (L 45: P 0 )
Pre-requisite CSC 122
Structured Programming elements, structured design principles, abstraction modularity, stepwise refinement, structured design techniques.  Teaching of a structured programming language etc.

CSC 223    DISCRETE STRUCTURES:  (3 Units) (L 45: P 0 : T 0)
Pre-requisite MAT 201
Basic set theory: Basic definitions, relations, Equivalence Relations partitions, Ordered sets. Boolean Algebra & Lattices, Logic Theory: Directed and Undirected graphs, Isomorphism, Basic Graph Theorems, Matrices, Integer and Real Matrices, Boolean Matrices, Matrices Med, Path matrices. Adjacent vectors/Matrices: Path adjancy matrix, Numerical & Boolean Adjacency Matrices. Application to counting, Discrete Probability generating Function.

CSC 311    SYSTEMS ANALYSIS AND  DESIGN:  (3 Units) (L 30: P 45)        Pre-requisite MAT 111
General systems concept, Information System Components; Types of Information System; Information System Department. System Development Life Cycle (SDLC): Steps; examples linear/waterfall, prototyping, spiral etc. Preliminary Investigation: Feasibility; activities, System analysis, determining requirements – Facts Finding Techniques e.g. Interview, Questionnaire, Observation etc. Analyzing requirements – Structured Analysis, DFD, Process description tools e.g. Decision Table/tree, Structured/tight English etc. Introduction to object oriented systems analysis: Overview of object modelling, UML. System Design General Guidelines; output design e.g. printed reports, screen output, tapes etc; Input design e.g. data entry screen design, help screen design. Real – life case studies to provide experience in applying the principles and techniques presented.

CSC 312    COMPUTER ARCHITECTURE:  (3 Unit) (L 45: P 0 : T 0)
Pre-requisite PHY 111
Levels of machine design, gates, register and processor levels. Number systems and computer arithmetic: CPU design; Instruction sets, Von Neumann architecture, parallelism, multiprocessors, pipelining etc. Control unit design, Hardware and Micro Programmed Control. Memory design; hierarchical memory design; Cache, Associative and interleaved memory system organization, fault tolerance. RISC Machine.

CSC 313    OBJECT-ORIENTED PROGRAMMING (C++):  (3 Unit) (L 45: P 0 : T 0) Pre-requisite CSC 212
Basic concept: Classes, object, inheritance, polymorphism, data abstraction, tools for developing, compiling, interpreting and debugging, java programs, java syntax and data objects, operators. Central flow constructs, objects and classes programming, arrays, methods. Exceptions, applets and abstract, ole, persistence, window tool kit, laboratory exercises in an OOP Language.

CSC 314    FUNDAMENTALS OF DATA STRUCTURES:  (3 Unit) (L 45: P 0 : T 0)
Pre-requisite 211
Recursion, Basic data types, linear structure, Stacks, queues, linked lists, operations and application constructs for specifying and manipulating data, heaps, trees binary, Binary Search Tree, AVL Trees, red Black Trees, B-Trees (of order m); Graph traversal algorithms; example applications of (each) data structures. Programming exercises involving the implementation and use of data structures, possibly using libraries.

CSC 315    SOFTWARE ENGINEERING (3 Units) (L 45: P 45)
Pre-requisite CSC  222
Introduction, Software process, Project Planning, Requirement Engineering, Systems Models; DFDS, States – transition, State charts UML, Data models; ER models; Object oriented modelling Using Software verification and validation, Software Testing.

Pre-requisite CSC 325
Automata theory: Roles of models in computation Finite state Automata, Push-down Automat, Formal Grammars, Parsing, Relative powers of formal models. Basic computability: Turing machines, Universal Turing Machines, Church’s thesis, solvability and Decidability.

CSC 321    DATA COMMUNICATIONS (3 Units) (L 30 P 45)
Pre-requisite CSC 122
Historical Evolution of Computer communication, Standards, reference models’, protocol architecture and implementation, Basic Communication theories and terminologies, transmission media, signal types, interface standards.  Protocol basics, error control method, flow control, link management. Data and signals; transmission media; making connections; multiplexing; error detection and error control.

CSC 322    OPERATING SYSTEMS (3 Units) (L 30 P 45)
Pre-requisite CSC 212
Introduction: definition of operating systems, history of operating systems, operating systems concepts-processes, files, system calls, shell-, operating system structure – monolithic systems, layered systems virtual machines, client-server model processes:  The process model, process states, process state transitions, process control block, operations on processes, suspend and resume, interrupt processing, nucleus, implementation of processes. Inter-Process Communication: Race conditions, critical sections, mutual exclusion with busy waiting, sleep and wakeup, semaphores, event counters, monitors, message passing, equivalence of primitives, producer-consumer relationship, readers and writers problems, dining philosopher’s problems, sleeping barber problem. Process scheduling: scheduling objectives, scheduling criteria, primitive versus non-primitive, interval timer or interrupting clock, Deadline, FIFO, Round Robin, priorities, multiple queues, shortest job first, shortest remaining time, highest response ratio next, fair share, policy versus mechanism, process management: Job scheduling versus process scheduling, process scheduling algorithms, interrupts, deadlock, starvation Real Memory Management early systems: single-user contagious scheme, fixed partition, dynamic partition, relocatable dynamic partitions Virtual Memory  management, recent systems: Paged memory allocation, demand paging, page replacement policies.

(L 30: P 45) Pre-requisite CSC 212
Constructive specification, data invariant, formal specification, logic operators, object constraint language, operations, pre- and post conditions, schemes, set operators, states, z-language.

Pre-requisite CSC 211
DBMS terminology and concepts, Transaction Management, Concurrency and recovery, Building.  On line Transaction systems using forms and triggers, Programming using SQL cursors, Physical design issues, the use of database and transaction analysis and optimizer plan information to check/improve performance, the effective use of views to achieve data independence, Design and implementation of distributed systems, Object-oriented and object-relational systems, Data Warehouse and data mining concepts.

CSC 325    STATISTICAL COMPUTING:  (3 Units) (L 45: P 0 : T 0)
Pre-requisite MAT 201
Introduction to statistics: Definition of statistics, the role of statistics, Nature of statistical data, Method of data collection, Tabular and graphical presentation of data, Numerical methods of data presentation, Measures of location, Measures of dispersion, Moments of a distribution, skewness of distribution, Kirtosis Theory of probability, Correlation and regression analysis, Test of hypothesis, basic concept, Element of statistical test, Level of significance , Testing of hypothesis about a population mean, Testing of hypothesis about two population means and proportions.

CSC 398    INDUSTRIAL TRAINING I   (CIWES I) (3 Units) (3 months)
Student’s Industrial work experience of 3 months duration. Students reports will be presented in a seminar.

CSC 411    NET-CENTRIC COMPUTING (3 Units) (45: P 0)
Distributed Computing, Mobile & Wireless computing, Network Security; Client/Server Computing (using the web), Building Web Applications.

Pre-requisite CSC 212
Asymptotic, Best-case, worse-case, average –case analysis of algorithms. Algorithm Design techniques: Divide-and-conquer, Dynamic Programming, Greedy techniques, Amortized analysis, Complexity classes P and NP, NP-completeness, Approximation Algorithms. One special topic from parallel Algorithms, Cryptographic Algorithms, Distributed Algorithms etc.

CSC 413    COMPUTER NETWORKING (3 Units) (L 30 P 45)
Pre-requisite CSC 122
LAN; MAN; WAN; The Internet; Telecommunication systems; Network security; Network design and management.

Foundations of HCI, Principles of GUI, GUI toolkits; Human-centred software evaluation and development; GUI design and programming.

CSC 415    COMPILER CONSTRUCTION:  (3 Units) (L 30: P 45)
Pre-requisite CSC 212
Introduction to compiling; Overview of the compilation process, Source code, Target code, Translators, Phases of Compilation, Pass, Compiler Construction tools, Lexical Analysis, syntax Analysis, Simple Precedence, Operator Precedence, LR (K) parsers; semantics. Run time storage Allocation, Code generation and code optimization. Compiler-compiler laboratory exercise.

Hardware aspect, plotters microfilm, plotters display, graphic tablets, light pens, other graphical input aids Facsimile and its problems Refresh display refresh huggers, changing images, light pen interaction.  Two and three dimensional transformation, perspective Clipping algorithms.  Hidden line removal bolded surface removal.  Warmock’s method, shading, data reduction for graphical input.  Introduction to had writing and character recognition.  Curve synthesis and fitting.  Contouring.  Ring structures versus doubly linked lists.  Elerarchical structures.  Data structure:  Organization for intersotive graphics.

Introduction; Birth-death queuing systems; Markovian queues, the queue M/GI bounds, inequalities and approximations.

Topics from process improvement; software re-engineering configuration management; Formal specification, software cost – estimation, Software Architecture, Software patterns, Software Reuse and Open source development.

CSC 419    SPECIAL TOPICS IN COMPUTER SCIENCE   (3 Units) (L 30:  P  45)
Special topics from any area of computer science considered relevant at given time. Topics are expected to change from year to year. Apart from seminars to be given by lecturers and guests, students are expected to do substantial readings on their own.   

CSC 421    ARTIFICIAL INTELLIGENCE (3 Units) (L 30: P45)
Pre-requisite CSC 222
Intelligent agents; Problem solving as Search strategies: Breadth first, Dept-first, uniform cost, depth constraint Satisfaction Problems, Backtracking Search for CSP, Constraint Propagation, Local Search for CSPs.  Logic-based knowledge representation.

Pre-requisite CSC 122
Overview of programming languages: History of programming Languages, Brief Survey of Programming Paradigms (Procedural Languages, Object-oriented, Functional Language, declarative-non-algorithmic language; Scripting languages), the effects of scale on programming methodology, Languages Description: Syntactic Structure (Expression notations, abstract Syntax Tree, Lexical Syntax, Grammars for Expressions, Variants of Grammars)., Language Semantics (Informal Semantics): Overview of Formal Semantics, Denotation semantics, Axiomatic semantics, Operational semantics): Declarations and types: The Concepts of types, Declaration models (binding, visibility, scope, and lifetime). Overview of type-checking, Garbage collection; Abstraction mechanisms, Parameterization mechanisms (reference vs – parameterized types. Modules in programming languages. Object-oriented language paradigm; Functional and logic languages paradigms.

Operations research, Numerical Computation, Graphical computation, Modelling and simulation, High performance computation.

45) Pre-requisite BIO 122
Basic definitions and uses.  Simulation process, some basic statistical distribution theory, model and simulation.  Queues; basic components.  Kendall notaion, Queuing rules.  Little’s law, Queuing networks, special/types of queues.  Stochastic processes; discrete state and continuous state process.  Markov processes, birth-death processes, poisson processes.  Random numbers, types of random number exercises.

CSC 425    DISTRIBUTED SYSTEMS     (3 Units)   (L 30:  P 45)
Introduction: Definitions, Motivation; Communication Mechanisms: Communication Protocols, RPC, RMI, Stream Oriented Communication; Synchronization: Global State, Election, Distributed Mutual Exclusion, Distributed Transactions; Naming: Generic Schemes, DNS, Naming and Localization; Replication and Coherence: Consistency Models And Protocols; Fault Tolerance: Group Communication, Two-And Three-Phase Commit, Check pointing; Security: Access Control, Key Management, Cryptography; Distributed File Systems: NFS, Coda etc.
CSC 426    PROJECT MANAGEMENT (3 Units) (L 30: P 45)
Pre-requisite CSC 323
Team management, project scheduling, software measurement and estimation techniques, risk analysis, software quality assurance, software configuration management, and project management tools.

Introduction to Modelling and Optimization. Types of problems and methods, examples. Extremum of a function of one variable Fibbonacci and Golden Mean method, Secant method, Newton method. Unconstrained optimization. Gradient search, Newton method and its modifications, Conjugate Gradient method, flip-flop type methods. Example: Mean Square approximation and its modifications. Constrained optimization. Lagrangians and Augmented Lagrangian Methods. Linear Programming. Quadratic programming. Nonlinear programming. Duality. Review of various methods. Stochastic search. Genetic algorithms. Discrete methods. Game approach.

Measurement techniques, simulation techniques; techniques, workload characterization, performance evaluation in selection problems, performance evaluation in design problems, evaluation of programme performance.

CSC 429    FORMAL MOTHODS OF COMPUTATION (3 Units) (L 30:  P 45)  
Automata theory: Roles of models in computation Finite state Automata, Push-down Automata, Formal Grammars, Parsing, Relative powers of formal models. Basic computability: Turing machines, Universal Turing Machines, Church’s thesis, solvability and Decidability.
Software Licensing Issues Data Privacy and Security Electronic Signature Laws Computer Professionals for Social Responsibility
CSC 498    INDUSTRIAL TRAINING II   (CIWES II) (3 Units) (3 months)
Student’s Industrial work experience of 3 months duration.  Students reports will be presented in a seminar.


© Copyright NDA 2017 | All rights reserved | Powered by NDA