- Name of the Programme: B. Sc. Computer Science
Programme Code: 5204
2.0 Entry Requirements
To be admitted for the B. Sc Computer Science programme, a candidate is expected to:
i) Have at least five credits in SSC, GCE ‘O’ level or 6 merits in NABTEB or TC II examinations. The credit passes must include English, Mathematics and Physics with any other two credits from any of the two science subjects from Chemistry, Biology, Further Maths, Computer studies.
-
- Have the NCE level examination with merit pass in mathematics in addition to a credit pass in any other science subject preferably Physics or Chemistry for entry into 200 level of the programme
- Have GCE Advance level in mathematics and physics or OND/HND in addition to (i) above for consideration into 200 level of the programme.
3.0 Philosophy, Aims and Objectives
3.1 Philosophy
3.0 Philosophy, Aims and Objectives
The philosophy of the B.Sc. Computer Science programme in NOUN leverages on the following key concepts:
The Department of Computer science seeks to build and develop human capacity to high level through comprehensive, flexible and accessible educational programmes, research in collaboration with industry and the government. We hope to deliver an experience that prepares our students for success in their career, thus molding them into job creators rather than job seekers after graduation.
The students will be grounded in theoretical and practical aspects of Computer Science so that they are capable of finding effective solutions to real world problems using state-of-the arts skills acquired in the period of their study.
They will be prepared to face any challenges and situation in the quest to find a niche in the continuously evolving global digital economy.
Aim
The B. Sc Computer Science Programme aims at giving the undergraduate students a broad-based knowledge in areas such as information systems, data communications, computational analysis and mathematical theories and to prepare them for specialization in these areas at the postgraduate levels.
Objectives
The B. Sc Computer Science programme is designed mainly to make the students be up-to-date with emerging developments in Computer Science as well as develop sufficient skills in the theory and application of Mathematics. Thus, at the end of the programme, graduates should endowed with the following skills and abilities:
- demonstrate basic skills in various computer applications and work with common operating systems platforms;
- design and implement standard information systems;
- demonstrate competent skills in exploring various resource tools on the internet;
- To have a sound technical foundation in computer science and the ability to creatively apply computer and related technologies to practical real-world problems.
- To master communication and soft skills and thus function as an effective professional with knowledge in specialized areas and awareness of broad multidisciplinary issues.
- Ability to embark on independent development work so as to keep pace with advances in computer technology.
- Programme Structure and Degree Rules
4.1 Outline of Course Structure.
The B. Sc., Honours, Computer Science programme is structured in 8 semesters as shown below. However a 6 semester structure can be attempted if the entry
level is at the 200 Level.
- Outlined Programme Proposal
100 Level
Course |
|
Course Titles |
Unit(s) |
Status |
|
|||
Code |
|
|
|
|
|
|||
GST 101 |
|
Use of English and Communication Skills I |
2 |
C |
|
|||
GST103 |
|
Computer Fundamentals |
2 |
C |
|
|||
GST 107 |
|
The Study Guide for the Distance Learner |
2 |
C |
|
|||
BIO101 |
|
General Biology I |
2 |
C |
|
|||
MTH 101 |
|
Elementary Mathematics I |
3 |
C |
|
|||
MTH 103 |
|
Elementary Mathematics III |
3 |
C |
|
|||
CHM101 |
|
Introductory Inorganic Chemistry |
2 |
C |
|
|||
CHM191 |
|
Introductory Practical Chemistry I |
1 |
C |
|
|||
PHY 101 |
|
Elementary Mechanics, Heat and Properties of |
2 |
C |
|
|||
|
|
Matter |
|
|
|
|||
|
|
|
|
|
|
|||
PHY 191 |
|
Introductory Practical Physics I |
1 |
C |
|
|||
BIO191 |
|
General Practical Biology I |
1 |
C |
|
|||
Phy105 |
|
General Physics III |
1 |
C |
|
|||
MTH131 |
|
Elementary Set Theory |
2 |
E |
|
|||
|
|
|
|
|
|
|||
|
|
Total Credit Units – Compulsory |
22 |
|
|
|||
|
|
Total Credit Units – Elective |
2 |
|
|
|||
|
|
Total Credit Units |
24 |
|
|
|||
2nd Semester |
|
|
|
|
|
|||
GST 102 |
|
Use of English and Communication Skills I |
2 |
C |
|
|||
GST104 |
|
Use of Library |
2 |
|
C |
|
||
CIT104 |
|
Introduction to Computer Science |
3 |
C |
|
|||
MTH102 |
|
Elementary Mathematics II |
2 |
C |
|
|||
CIT108 |
|
Problem Solving Algorithm |
3 |
C |
|
|||
PHY102 |
|
Electricity, Magnetism and Modern Physics |
3 |
C |
|
|||
CIT106 |
|
Computer Lab I (Hardware/Network) |
2 |
C |
|
|||
CIT110 |
|
Cyber-Security I |
2 |
C |
|
|||
PHY124 |
|
Geometric and Wave Optics |
3 |
E |
|
|||
|
|
Total Credit Units – Compulsory |
19 |
|
|
|||
|
|
Total Credit Units – Elective |
3 |
|
|
|||
|
|
Total Credit Units |
22 |
|
|
|||
|
|
|
|
|
|
|||
200 Level
Course |
|
Course Titles |
Unit(s) |
Status |
Code |
|
|
|
|
1st Semester |
|
|
|
|
GST201 |
|
Nigerian Peoples and Cultures |
3 |
C |
GST203 |
|
Introduction to Philosophy and Logic |
3 |
C |
CIT211 |
|
Introduction to Operating Systems |
3 |
C |
CIT215 |
|
Introduction to Programming Languages |
3 |
C |
CIT217 |
|
Foundations of Sequential Program |
3 |
C |
MTH 281 |
|
Mathematical Methods I |
3 |
C |
MTH205 |
|
Linear Algebra I |
3 |
E |
CIT213 |
|
Elementary Data Processing |
3 |
E |
|
|
|
|
|
|
|
Total Compulsory Units |
18 |
|
|
|
Total Elective Units |
3 |
|
|
|
Total Credit Units |
21 |
|
|
|
* Students are expected to offer at least one |
|
|
|
|
elective course per semester. Also they can only |
|
|
|
|
register a maximum of 25 units per semester |
|
|
|
|
|
|
|
2nd Semester |
|
|
|
|
GST 202 |
|
Fundamentals of Peace Studies and Conflict |
2 |
C |
|
|
Resolution |
|
|
GST204 |
|
Entrepreneurship and Innovation |
2 |
C |
CIT206 |
|
Discrete Structure |
3 |
C |
CIT210 |
|
Computer Hardware |
3 |
C |
CIT204 |
|
Fundamentals of Data Structure |
3 |
C |
CIT202 |
|
Computer Programming II |
3 |
C |
CIT212 |
|
Systems Analysis and Design |
3 |
C |
CIT292 |
|
Computer Laboratory II |
2 |
C |
MTH212 |
|
Linear Algebra II |
3 |
E |
STT211 |
|
Probability Distribution I |
3 |
E |
PHY202 |
|
Modern Physics I |
3 |
E |
|
|
Total Compulsory Units |
21 |
|
|
|
Total Elective Units |
3 |
|
|
|
Total Credit Units |
24 |
|
|
|
* Students are expected to take two |
|
|
|
|
elective courses totaling 5 units . Also they can only |
|
|
|
|
register a maximum of 25 units per semester |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
300 Level
Course |
Course Titles |
Unit(s) |
Status |
Code |
|
|
|
|
1st Semester |
|
|
CIT309 |
Computer Architecture and Organization I |
3 |
C |
CIT301 |
Structured Programming |
3 |
C |
PHY308 |
Electronics I |
3 |
C |
CIT335 |
Computational Science &Numerical Methods |
3 |
C |
CIT315 |
Operating Systems II |
3 |
C |
CIT383 |
Introduction to Object-Oriented Programming |
3 |
C |
CIT389 |
Industrial Training /SIWES |
3 |
C |
CIT353 |
Introduction to Human-Computer Interaction |
2 |
C |
CIT333 |
Software Engineering I |
2 |
E |
|
|
|
|
|
Total Compulsory Units |
23 |
|
|
Total Elective Units |
2 |
|
|
Total Credit Units |
25 |
|
|
* Students are expected to offer at least one elective |
|
|
|
course per semester. Also they can only register a |
|
|
|
maximum of 25 units per semester |
|
|
|
|
|
|
|
2nd Semester |
|
|
CIT310 |
Algorithms and Complex Analysis |
3 |
C |
CIT314 |
Architecture and Organization II |
3 |
C |
CIT304 |
Data Management |
3 |
C |
CIT316 |
Principles and Techniques of Compilers (Compiler Construction I) |
3 |
C |
GST302 |
Business Creation and Growth |
2 |
C |
CIT332 |
Survey of Programming Languages |
4 |
C |
CIT308 |
Formal Methods, Automata and Software Development |
3 |
C |
CIT392 |
Computer Laboratory II |
2 |
C |
CIT381 |
File Processing and Management |
2 |
E |
|
Total Compulsory Units |
23 |
|
|
Total Elective Units |
2 |
|
|
Total Credit Units |
25 |
|
|
* Students are expected to offer at least one elective |
|
|
|
course per semester. Also they can only register a |
|
|
|
maximum of 25 units per semester |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Course Code |
Course Title |
Units |
Status |
CIT401 |
Organization of Programming Languages |
3 |
C |
CIT403 |
Seminar on Emerging Technologies |
3 |
C |
CIT421 |
Net-Centric Computing |
3 |
C |
CIT423 |
Computer Networks and Communication |
3 |
C |
CIT427 |
Database Systems and Management |
3 |
C |
|
Electives: Any two of the following |
|
|
CIT411 |
Microcomputers and Microprocessor |
2 |
E |
CIT425 |
Operations Research |
2 |
E |
|
Total Compulsory |
15 |
|
|
Total Elective |
4 |
|
|
Total |
19 |
|
|
* Students are expected to offer at least two elective courses per semester. Also they can only register a maximum of 25 units per semester |
|
|
Course Code |
Course Title |
Units |
Status |
CIT432 |
Software Engineering II |
2 |
C |
CIT478 |
Artificial Intelligence |
3 |
C |
CIT474 |
Introduction to Expert Systems |
2 |
C |
CIT499 |
Project |
6 |
C |
|
Electives: Any two of the following |
|
|
CIT412 |
Modeling and Simulation |
3 |
E |
CIT484 |
Website Design and Programming |
2 |
E |
CIT414 |
Computer System Performance and Evaluation |
2 |
E |
|
Total Compulsory |
14 |
|
|
Total Elective |
5 |
|
|
Total |
18 |
|
|
* Students are expected to offer at least two elective courses per semester. Also they can only register a maximum of 25 units per semester |
|
|
-
- Course Content Specification: For graduation with a B.Sc.(Hons.) in Computer Science, the students must have a minimum of 147 credit units of core courses and 16 units of elective courses for an 8 semester structure and 111 credit units of core courses and 16 units of elective courses for a 6 semester structure.
Find below the course descriptions:
- Synopses of Courses and Detailed Programme Proposal (DPP)
GST 101 Use of English and Communication Skills I
Listening- enabling skills, listening and comprehending, note taking and information retrieval. Including data, figures, diagrams and charts, Listening for main idea, interpretation and critical evaluation. Effective reading, skimming and scanning. Reading and comprehension at various speed levels. Vocabulary development in various academic context. Reading diverse texts in narratives and expository. Reading and comprehension passages with tables, scientific texts. Reading for interpretation and critical evaluation.
GST 102 Use of English and Communication Skills II
Writing paragraphs: Topic sentence and coherence. Development of paragraphs: illustration, description, cause and effect including definitions. Formal letters: essential parts and stylistic forms; complains and requests; jobs, ordering goods, letters to government and other organisations. Writing reports; reporting event, experiments. Writing summaries; techniques of summarising letters and sounds in English, vowels and consonants. Interviews, seminar presentation, public speech making, articles, concord and sentences including tenses. Gerund, participles, active, passive and the infinitive. Modal auxiliaries.
GST103: COMPUTER FUNDAMENTALS
Introduction to Computer, basic concepts, classifications of computers, historical views of computer. Threats to computer system, Computer Hardware and Software. Overview of computer programming languages. Detailed discussion of Computer Applications in various field.
GST104: USE OF LIBRARY
Identifying sources of Information, concept of library and library services, history of libraries. ICT use in the library, Copyright, Plagiarism and bibliographic Citation & referencing, functions and services of research libraries.
GST 107 The Study Guide for the Distance Learner
Getting started: How to use the book, why read about skills, getting yourself organised ; what is studying all about, reading and note taking; Introduction, reactions to reading, your reading strategy, memory, taking notes, conclusion. Other ways of studying: Introduction, learning in groups, talks and lectures, learning from TV and radio broadcasts, other study media. Working with numbers; Getting to know numbers, describing the world, describing with the tables, describing with diagrams and graphs; What is good writing? The Importance of writing, what does an essay look like, what is a good essay? Conclusion. How to write essays: Introduction, the craft of writing, the advantages of treating essay writing as a craft, making your essay flow, making a convincing case, the experience of writing. Preparing for examination.
BIO101: GENERAL BIOLOGY I (2 UNITS)
Characteristics of living things; cell as the basic unit of living things, cell structure, organization, cellular organelles, tissues, organs and systems.
Classification of living things, general reproduction and concept of inter-relationships of organism. Heredity and evolution. Elements of ecology (introduction) and habitats.
BIO191 GENERAL BIOLOGY PRACTICAL I (1 UNIT) What practical work in biology involves. Laboratory organization. Handling common laboratory equipment. Microscopic handling and maintenance. Making microscopic measurements. Procuring animal materials for practicals. Killing, preserving and maintaining animal materials. Procuring plant materials. External features of plants (differences and similarities). Preparation of temporary slides. Preparation of stains and reagents. Techniques for microbial culture and grain staining. Setting up demonstration for physiological processes in plants. Setting up apparatus for demonstrating physiological processes in animals. Preparation required for dissection.
CHM101: Introductory Inorganic Chemistry (2 units)
Hypothesis, theory and law with appropriate illustrations, Nature of matter – 3 states of matter, Atomic structure, electronic energy levels and orbital. Periodic classification of elements and its relationship to their electronic configurations, Chemical bonding, Survey of properties and trends in groups I, II, IV, VI and transition metal,
CHM191: Introductory practical chemistry I (1 unit)
Practical based of CHM 101 and CHM 103: Cations and anions – identification, Acid- base titrations, Redox reactions and determinations
MTH101 ELEMENTARY MATHEMATIC I: (3 Units)
(ALGEBRA AND TRIGONOMETRY)
Elementary set theory, subsets, union, intersection, complements, venn diagrams. Real numbers; integers, rational and irrational numbers, mathematical induction, real sequences and series, theory of quadratic equations, binomial theorem. Complex numbers; algebra of complex numbers; the Argand Diagram. Re Moivre’s theorem, nth roots of unity. Circular measure, trigonometric functions of angles of any magnitude, addition and factor formalae.
MTH102 ELEMENTARY MATHEMATICS III: (3 UNITS) CALCULUS:
Function of a real variable, graphs, limits and idea of continuity. The derivative as limit of rate of change, Techniques of differentiation, Extreme curve sketching. Integration as an inverse of differentiation, Methods of integration, Definite integrals; Application to areas and volumes
MTH103 ELEMENTARY MATHEMATICS III: (3 Units) PRE-REQUISITE – MTH 101
(VECTORS, GEOMETRY AND DYNAMICS)
Geometric representation of vectors in 1-3 dimensions, components, direction cosines. Addition and Scalar multiplication of vectors and linear independence. The Scalar and vector products of two vectors. Differentiation and integration of vectors with respect to a scalar variable. Two-dimensional co-ordinate geometry. Straight lines, circles, parabola, ellipse, hyperbola. Tangents, normals.
PHY101: Elementary Mechanics, Heat and Properties of Matter (2 UNITS)
Space and Time: Physical quantities: Units and dimensions of physical quantities; Kinematics: Uniform velocity motion, uniformly accelerated motion; Dynamics: Newton’s laws of motion; Impulse and Linear Momentum, Linear Collision, Newton’s universal law of gravitation; Work, energy and power; Conservation laws; Concept of mechanical equilibrium; Centre of mass and centre of gravity; Moment of a force; Rotational kinematics and dynamics: Torque; Moment of Inertia; angular momentum; Total mechanical energy. Simple harmonic motion
Heat and temperature, work and heat, Quantity of heat: heat capacities, latent heat; Thermal expansion of solids, liquids and gases; Gas laws, heat transfer; Laws of thermodynamics: Isothermal and Adiabatic changes, Carnot cycle; Application kinetic theory of gases; van der Waals gas.
Classification of matter into (solids, liquids and gases, forces between atoms and molecules, molecular theory of matter, Elasticity, plasticity, Hook’s Law, Young’s Shear and bulk Moduli) Crystalline and non-crystalline materials, Hydrostatics: pressure, buoyancy, Archimedes’ principle; Hydro-dynamics-streamlines, Bernouli and Continuity equations, turbulence, Reynold’s number, Viscosity, laminar flow, Poiseuille’s equation; Surface tension, adhesion, cohesion, capillary, drops and bubbles.
PHY102: ELECTRICITY, MAGNETISM AND MODERN PHYSICS (3 UNITS)
Electrostatics: Coulomb’s law, Gauss’s law, potential and capacitance, dielectrics, production and measurement of static electricity. Current: Ohm’s law, resistance and resistivity, heating. Galvanometers, Voltmeters and Ammeters; D.C. circuits: sources of emf and currents, Kirchhoff’s laws; Electrochemistry; The Earth’s magnetic field; Magnetic fields and induction, Faraday’s and Lenz’s laws; Force on a current-carrying conductor. Biot-Savart law. Flemming’s right and left-hand rules, motors and generators. A.C. Theory. Atomic structure; Production and properties of X-rays; Radioactivity; Photoelectric emission.
PHY 103: GEOMETRIC AND WAVE OPTICS (2 UNITS)
Geometrical Optics: law of reflection and refraction; Location of images: Plane and curved mirrors; Converging and diverging thin lenses; Thick lenses; Lens defects; Aberrations; The eye; Optical instruments. Simple Harmonic motion; Wave motion and wave types; Dispersion; Production of sound in strings and pipes resonance, applications; Simple description of diffraction and interference, applications to both light and sound waves; Polarization of transverse waves.
PHY191: Introductory Practical Physics I (1 unit)
Graphs, Measurement, Error Analysis, Determination of Acceleration due to Gravity by Means of Simple Pendulum, Determination of force constant of a spiral spring, Determination of effective mass of a spiral spring and the constant, Determination of surface tension of water, Determination of specific latent heat of fusion of ice, Determination of the co-efficient of limiting static friction between two surfaces, Determination of the co-efficient of static friction on two surfaces using an inclined plane, Determination of Relative Density of kerosene using the specific Gravity Bottle, Determination of the Relative Density of a Granular substance not soluble in water using the specific gravity bottle.
CIT 104: Introduction to Computer Science (3 Units)
What is Computer, Types of Computer, History of Digital Computer, Element of a Computer : Hardware and Software. How to work with a computer. Operating System Windows Files word processing, copying a text, saving, Changes to a document and Formatting, spelling checker and introduction to Printing a document. Spread sheet, Entering and correcting data. Using Formula, Numeric Formats Creating Charts. Types of Charts Power Points and presentation. Networking, Internet and E-mail. Reading and responding to an E-mail message.
CIT108: Introduction To Problem Solving: (3 Units)
Problem solving strategies, Role of algorithm in problem solving process, implementations strategies, concepts and properties of algorithm.
GST201 NIGERIAN PEOPLES AND CULTURE (2 UNITS )
Nigerian history, culture and arts in pre-colonial times; Nigerians’ perception of their world; culture areas of Nigeria and their characteristics; evolution of Nigeria as a political unit; indigene/settler phenomenon; concepts of trade; economic self- reliance; social justice; individual and national development; norms and values; negative attitudes and conducts (cultism and related vices); re-orientation of moral and national values; moral obligations of citizens; environmental problems.
PHY202: MODERN PHYSICS I (2 UNITS)
Atomic structure: Experimental basis of quantum theory: Black body radiation; electrons and quanta; Charge quantization, Mass spectra, the plum pudding model, Rutherford model and Bohr models of the atom, Hydrogen spectra, Magnetic moment and Angular momentum of an atom, Electron spin, Pauli Exclusion Principle and electronic configuration, X-ray spectra, De Broglie hypothesis, the uncertainty principle; Wave-particle duality, Schrodinger’s equation and simple applications; Nuclear Structure: nomenclature, binding energy and stability, Radioactivity, The radioactive series, Accelerators, Detectors. Bohr’s theory of atomic structure;
CIT204: FUNDAMENTALS OF DATA STRUCTURES: (3 Units)
Primitive types, Arrays, Records Strings and String processing, Data representation in memory, Stack and Heap allocation, Queues, TREES. Implementation Strategies for stack, queues, trees. Run time Storage management; Pointers and References, linked structures.
CIT202: COMPUTER PROGRAMMING II (3 Units)
Principles of good programming, structured programming concepts, Debugging and testing, string processing, internal searching and sorting, recursion. Use a programming language different from that in CSC 201. e.g. C-Language
CIT206 Discrete Structure 3 Credits
Basic Set Theory: Basic definitions, Relations, Equivalence Relations Partition, Ordered Sets. Boolean Algebra & Lattices, Logic, Graph theory: Directed and Undirected graphs, Graph Isomorphism, Basic Graph Theorems, Matrices; Integer and Real matrices, Boolean Matrices, Matrices med m, Path matrices. Adjacency Vectors/Matrices: Path adjacency matrix, Numerical & Boolean Adjacency matrices. Applications to counting, Discrete Probability Generating Functions
CIT211: Introduction to Operating System
Definition of an operating system; Types of operating systems; and real time (single-user/multi-user), timesharing; Examples of operating systems; DOS, CP/M, UNIX/ZENIX,/LINUX, MS Windows 95/98/2000, etc. Components of an operating system; Process Management; Supervisor, memory manager, I/O handlers, file system, etc. Operating system interface with the hardware; interrupts, deadlocks, I/O channel, multiplexer, registers, status words; Memory Management; Virtual Memory. Operating system interface with other systems software; linkers, translators, libraries, etc. storage organization and protection.
CIT210: COMPUTER HARDWARE: (3 Units) (L 45: P 0)
Computer circuits; diode arrays, PIAs etc, Integrated circuits fabrication process.Use of MSI, LSI and VLSI IC’ hardware Design. Primary and Secondary memories; core memory, etc. Magnetic devices; disks, tapes, video disks etc. Peripheral devices; printers, CRT’s, keyboards, character recognition. Operational amplifiers; Analog-to- digital and Digital-to-analog converter. Analog computers.
CIT212: Systems Analysis & Design
General systems concepts: Systems project team organisation; Overview of systems development process; Project identification and selection; system requirements analysis and feasibility study; fact finding techniques; Systems design; Analysis techniques and tools e.g. Jackson System Development (JSD) techniques etc. Data flow diagrams (DFD), HIPO charts. Business system design; procurement, site preparation, system installation, system testing, system conversions; system project, report writing, and presentation; system documentation; post installation evaluation; compilation of a real-life system analysis team project to provide experience in applying the principles and techniques presented above.
CIT 213: Elementary Data Processing
Basic EDP concepts: Files, Records, Blocks, Basic File Organization, Devices and concepts: Magnetic Tapes and Storage density. Magnetic Disks: Seek Time and Rotational Latency, Sequential and Random File Processing. Business Programming in COBOL, ADA, SQL
CIT 215: Introduction to Programming Languages
FORTRAN programming language; Comparison of various versions of the language. Programming exercises using FORTRAN with emphasis on scientific application problems. Elements of Pascal language. Exercises in Pascal Program structures and programming concepts; Structured design principles; abstraction, modularity, stepwise refinement, structured design techniques teaching of a structured programming language, e.g. PASCA/JAVA, C++.
CIT217: FOUNDATIONS OF SEQUENTIAL PROGRAM: (3units) (L45: P0)
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.
CIT 292: Computer Laboratory II
Basic logic Operations. Combinational logic, Karnaugh maps, Simple latch and clocked flip flop, J-k flip-flops, Binary addition, Synchronous counters, up and down counters.
MTH 212: Linear Algebra II
Vector spaces. Linear independence. Basis, change of basis and dimension. Linear equations and matrices. Linear maps. The diagonal, permutation, triangular matrices. Elementary matrix. The inverse of a matrix. Rank and nullity. Determinants. Adjoint, cofactors, inverse matric. Determinantial rank. Crammer’s rule. Canonical forms, similar matrics, Eigen values and vectors, quadratic forms.
MTH 281: Mathematical Methods I
Sequences and Series: Limits, continuity, Differentiability, implicit functions, sequences. Series, test for convergence sequences and series of functions. Calculus: partial differentiation, Total Credit Units derivatives, implicitly functions, change of variables. Taylor’s theorem and maxima and minima functions, of two variables. Langrangian multiplier. Numerical Methods: Introduction to iterative methods, Newton’s method applied to finding roots. Trapezium and Simpsons rules of integration.
STT211: PROBABILITY DISTRIBUTION I (3UNITS) PRE-REQUISITE – STT 102
Discrete sample spaces: Algebra and probability of events, combinatorial analysis. Sampling with and without replacement. Conditional probability, Bayes theorem and stochastic independence. Discrete distributions: Binomial, Poisson, negative binomial-hyper geometric and multinomial. Normal approximation to binomial and Poisson, Poisson approximation to binomial. Random variables and expectations: mean, variance, covariance. Probability generating function and moment generating function. Cheycher’s inequality. Continuous joint distributions: marjind as conditional density. Expectations: movement, movement generating functions. Uniform normal, beta Cauchy and hop-normal distributions.
CIT 309: Computer Architecture and Organization 3 Units
Introduction, basic computer organization; Instruction formats, instruction sets and their design; ALU design: Adders, subtracters, logic operations; Boolean Algebra; Karnaugh Maps; Datapath design; Control design: Hardwired control, microprogrammed control; More on arithmetic: Multiplication, division, floating point arithmetic; RISC machines; Pipelining; Memory systems and error detection and error correction coding; Caches; Memory; I/O and Storage; Multiple Issue; Dynamic Scheduling; Data-Level Parallelism and Vectors; Shared-Memory; Multiprocessors; Multithreading
CIT301: Structured Programming: (3 Units)
Structured Programming elements, structured design principles, abstraction modularity, stepwise refinement, structured design techniques. Teaching of a structured programming language etc.
CIT304: DATA MANAGEMENT I: (3 Units)
Information storage & retrieval, Information management applications, Information capture and representation, analysis & indexing, search, retrieval, information privacy; integrity, security; scalability, efficiency and effectiveness. Introduction to database systems: Components of database systems DBMS functions, Database architecture and data independence use of database query language.
CIT308: Formal Methods, Automata Theory and Software Development (3 Units)
Introduction to language structures; languages and their representations; Grammars; formal notations, types, Chomsky’s language hierarchy; sentence generation and recognition; derivations; Ambiguity and syntax and finite state automata; context-free grammars; simplification of context-free grammars; Chomsky, Greibach Normal Forms Push-Down automata, LR(K) grammars, Recursive languages; semantics. Lab. exercises.
CIT317: COMPUTER ARCHITECTURE I AND ORGANIZATION I (3 Units)
Fundamental building blocks, logic expressive immunization, sum of product forms. Register transfer notation, Physical considerations. Data representation, and number bases, Fixed and Floating point systems, representation memory systems organization and architecture. Text:
CIT310: ALGORITHMS AND COMPLEXITY ANALYSIS: (3 Units)
Basic algorithmic analysis: Asymptotic analysis of Upper and average complexity bounds; standard Complexity Classes Time and space tradeoffs in algorithms analysis recursive algorithms. Algorithmic Strategies: Fundamental computing algorithms: Numerical algorithms, sequential and binary search algorithms; sorting algorithms, Binary Search tress, Hash tables, graphs & its representation.
CIT333: Software Engineering I
Top-DOWN design, modularity, technical and managerial problem of software development design representations; e.g. pseudo code HIPO diagrams CASE tools and Programming Environments.
CIT314: COMPUTER ARCHITECTURE AND ORGANIZATION II 3 UNITS
Memory system, general; characteristics of memory operation. (Technology-magnetic recording semi-conductor memory, coupled devices, magnetic bubble). Memory addressing, memory hierarchy, virtual memory control systems. Hardware control, micro programmed control, Asynchronous control, i/c control. Introduction to the methodology of faulty tolerant computing.
CIT315 Operating Systems II 3 Units
Concurrency: States & State diagrams Structures, Dispatching and Context Switching; interrupts; Concurrent execution; Mutual exclusion problem and some solutions Deadlock; Models and mechanisms (Semaphones, monitors etc.) Producer – Consumer Problems & Synchronization. Multiprocessor issues. Scheduling & Despatching Memory Management: Overlays, Swapping and Partitions, Paging & Segmentations Placement & replacement policies, working sets and Trashing, Caching
CIT316: Principles and Techniques of Compilers (Compiler Construction I): (3 Units)
Review of compilers assemblers and interpreters, structure and functional aspects of a typical compiler, syntax semantics and pragatics, functional relationship between lexical analysis, expression analysis and code generation. Internal form of course programme. Use of a standard compiler (FORTRAN<COBOL/PL) as a working vehicles. Error detection and recovery. Grammars and Languages: the parsing problem. The scanner.
Recapitulation of formal grammars; source code and target code structure of typical compiler, comparative compiling techniques. Lexical analysis syntax analysis; simple precedence, operator precedence, LR(K) parsers; semantics, Runt time storage allocation code generation and code optimization. Compiler-compilers. Pragmatics of Compiler writing: Translator writing Error recovery and Optimization problems; Laboratory exercises leading to the productions of major parts of a compiler for an actual programming language.
CIT332: SURVEY OF PROGRAMMING LANGUAGES (4 Units)
Overview of programming languages: History of programming languages, Brief survey of programming paradigms (Procedural languages, Object-oriented languages, Functional languages, Declarative – non-algorithmic languages, Scripting languages), the effects of scale on programming methodology; Language 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 concept of types, Declaration models (binding, visibility, scope, and lifetime), Overview of type-checking, Garbage collection; Abstraction mechanisms: Procedures, function, and iterations as abstraction mechanisms, Parameterization mechanisms (reference vs. value), Activation records and storage management, Type parameters and parameterized types, Modules in programming languages; Object oriented language paradigm; Functional and logic language paradigms.
CIT 353: Introduction to Human Computer Interaction 2 Units
Survey of human-computer interaction concepts, theories and practice. Basic components of human-computer interaction. Interdisciplinary underpinnings. Informed and critical evaluation of computer-based technology. User-oriented perspective rather than system-oriented, with two thrusts: human (cognitive, social) and technological (input/output, interaction styles devices). Design guidelines, evaluation methods participatory design, communication between users and system developers. Topics include: System interaction design patterns, User Interface Design Criteria and User Interface Design and Programming tools, Multimedia and HCI
CIT 381: File Processing and Management 2 Units
Review of basic, file processing concepts; the file management concepts; basic terminology and concepts; structure of file management systems; Data flow between systems; Data flow between systems; Data flow between internal memory and external storage; blocking and de-blocking; files; searching and sorting techniques, merging; relevant i/o facilities for files processing of some high level programming languages such as FORTRAN, COBOL, PASCAL, etc; file organization methods; sequential indexed, direct/random, etc; Data validation; report generation, file management packages; file management security and integrity; assignment and completion of a data processing project Structures.
CIT 383: Introduction to Object-Oriented Programming (2 units)
Object-Oriented Programming Concepts: Classes and objects, encapsulation, passing messages, abstraction, composition, inheritance, polymorphism, modularity. Using any object-oriented language discuss the following: Creating a Simple Class, Class Properties, Constructors and Destructors, Static Behaviour, Method Overloading, Constructor Overloading, Basic Operator Overloading, Overloading True and False using any object-oriented language, Logical Operator Overloading, Conversion Operator Overloading, Indexers, Inheritance.
CIT 389: Industrial Training 3 Units
Required 3 months of Industrial Training Students experiences will be documented and presented in a Seminar and submitted as a Tutor Marked Assignment. An example of a report is a report of a case study of a Cyber Cafe.
CIT 392: Computer Laboratory II 2 Units
Laboratory exercises using the programming language
Laboratory exercises using a microcomputer operating system, e.g. MS-97/98/2000
Laboratory exercises using relevant programming languages such as C and C++. Submission of a group project report of case study of a computer centre. Laboratory Exercises in COBOL, ADA, and SQL.
PHY 308: ELECTRONICS I (3 UNITS)
Amplifiers: Classification of amplifiers, equivalent circuit of transistor, operating point and bias stability, operating point and bias stability, small signal amplifier, r-f amplifiers; Oscillators: negative feedback, positive feedback, LC oscillators, RC oscillators; Power supply: power source, dc power unit, performance of rectifier, filter circuits, regulation of output voltage; Linear integrated circuits: the Op Amp and its applications, amplifiers and voltage regulators.
CIT401 Organization of Programming Language 3 Credits
Language definition structure. Data types and structures, Review of basic data types, including lists and tress, control structure and data flow, Run-time consideration, interpretative languages, lexical analysis and parsing.
CIT 403: Seminar on Emerging Technologies (3 Units)
Students are expected to write a seminar paper on any new and recent technologies/topics in the market such as: Artificial Intelligence, ASPs (Application Service Providers), Distributed Java Database and Computing Issues, E-Commerce Internet Broadcasting, Internet Collaboration Internet Multimedia, Linux Platforms, Software Object-Oriented Databases and Software Development , Voice I/O (Computer Input/Output), Voice over IP (IP Telephony) XML
NET-CENTRIC COMPUTING (3 Units)
Distributed Computing, Mobile & Wireless computing, Network Security; Client/Server Computing (using the web), Building Web Applications.
Introduction to Parallel Systems. Parallel Programming Models. Message Passing Programming. Dependence Analysis, Open MP Programming, Evaluation of Programs, Optimizations for Scalar Architectures and Models for Parallel Computing. Distributed systems: Characterization of Distributed systems, system models, distributed objects and remote method invocation. Component-based development: using UML for component-based design. Distributed transactions: introduction, flat & nested distributed transactions, concurrency. Service-oriented architectures: characteristics of SOAs, Hadoop and Spark. Mobile and cloud computing: Technologies for Wireless Communication. Wireless Cellular Systems. Overview of Wireless LANs, IEEE 802.11, Personal Area Network, Bluetooth. High-Speed Wireless Networks; HiperLan. Wireless Application Protocols: Mobile IP, WAP, SMS, Bluetooth. Frameworks for mobile application development (e.g Ionic, React Native, Xamarin, Adobe PhoneGap, J2ME). Cloud computing: introduction to cloud computing, technologies, infrastructure, and architecture. Cloud computing development models (public, private, community and hybrid cloud), service models (SaaS, PaaS, IaaS).
CIT423: COMPUTER NETWORKS/COMMUNICATION (Units) (L 30: P 45)
Introduction, wares, Fourier analysis, measure of communication, channel characteristics, transmission media, noise and distortion, modulation and demodulation, multiplexing, TDM FDM and FCM Parallel and serial transmission (synchronous Vs analynchronous). Bus structures and loop systems, computer network Examples and design consideration, data switching principles broadcast techniques, network structure for packet switching, protocols, description of network e.g. ARPANET, etc.
CIT305 Networking and Communication Technology (3 units)
Introduction; Constructing data links, Deploying physical media; Practical network protocols; Capitalizing on Ethernet; Harnessing Wi-Fi for user mobility; Building internetworks using TCP/IP and routers; Utilizing telecommunication circuits; Implementing security best practices; Creating enterprise networks; Planning and selection. Protocols, technologies, standards, and applications of data communications and computer networks for both LANs and WANs. Foundation and background of Advanced WAN and LAN classes. Signal transmission analysis, modulation concepts, modems, multiplexers, digital technologies, transmission impairments, and various transmission media will be extensively discussed. Network protocols based on the OSI Reference Model, TCP/IP protocol suite, and IEEE 802 standards. Network technologies: ISDN, DSL, SONET, packet switching networks, LAN technologies, Internet and TCP/IP, and ATM
CIT 427: Database Systems & Management 3 Units
Basic concept of data bases, history of DBMS types of database, specific problems of data independence, data reliability, integrity, etc, data, data management, database generation, raw data, data definitions, data structure, storage structure database logical and physical organization, interrogation, data model, network, hierarchical, relational, security, policies, privacy quality and integrity protection mechanism. Introduction & Basic SQL Project Introduction. Advanced SQL. Conceptual Modelling and Schema Design. Database Programming, JDBC, Regular Expressions. Functional Dependencies E2: Functional Dependency & Relational Algebra. Introduction to XML. XML and X-Query. Web Services. Transactions. Recovery. Database Heterogeneity.
CIT 411: Microcomputers and Microprocessors 2 Units
Review of basic concepts in digital electronic; Microprocessors; functions, operations and architecture; comparison of current microprocessors; multi-chip and single chip; i/o organization; assembler language; comparison of instruction sets; address modes, stack operation; subroutines. i/o data transfer; bus control; daisy chaining, handshaking etc; Interrupt structures; programmed transfer, DMA microcomputer systems; types of microprocessors; uses of microprocessors, microcomputer design for specific applications; microcomputer networking; interfacing microcomputer real-time control; laboratory exercises using an assembly language
CIT 412: Modelling and Simulation 2 Units
Basic modelling and simulation concepts and definitions; Random numbers – pseudorandom number generation and testing; Monte Carlo methods;. Introduction to distribution functions; Simulation and modelling – discrete-event simulation, continuous simulation. Modelling methods; Visual models and Conceptual models, Physics-based models and finite element model, Data-based models; Statistics for Modelling and Simulation; Simple theories of Queues, stochastic processes Design of simulation experiments; simulation languages, detailed study of a chosen simulation language; applications; System Dynamics. Lab. exercises. Data collection and coding. Data cleaning-completeness, range, consistency. Case studies and examples using SPSS or PSAT packages. Interpretation of results.
CIT 421: Information Theory and Computer Communication Systems 3 Units
Historical background of information theory models or computation systems, coding theory. Information and encoding, basic concepts of interactive computing, interactive terminals devices protocols, direct links, communication channels, telecommunications links, simplex, half duplex, duplex, multiplex, concentrators, computer networks operating system for online processing routing algorithms, response, time reliability and security.
CIT425: Operations Research 2 Units
The nature of operation research; Linear programming, simplex method, Transportation problem, allocation problems; Quadratic and Goal programming; Queue theory, Game theory; Search Analysis; Inventory control; Network Analysis; Replacement Analysis and Simulation; maintenance and reliability problems. Dynamic programming; sequencing and co-ordination.
CIT432: Software Engineering II 2 Units
Programme Testing; software Reliability models Availability models. Management Techniques. Formal Methods, e.g. VDM, OBJ
CIT478: Artificial Intelligence 2 Units
Basic AI issues attention, Search, Control, Game trees, knowledge representation, Application of AI techniques in natural language, scene analysis, expert systems, KBCS robot planning. Lab. exercises in AI lang. e.g., LISP/Prolog.
CIT474: Introduction to Expert Systems 2 Units
Study of different classes of expert systems, e.g. Rule Based: MYCIN or PROSPECTOR, Blackboard; HEARSAY or CRYSLIS, Expert System shells e.g. Rule-Based: e.g. P-MYCIN, EXPERT. S.I. Frame Based e.g. KEE, KL-ONE Merit and Demerits of natural language interface for expert systems. Extensive independent study of recent development in the field and the submission of a group proposal for the application of Expert System in different areas.
CIT 484: Website Design & Programming 2 UNITS
What is HTML; Basic Tags of HTML; HTML Tag TITLE Tag Body Tag Formatting of Text, Headers, Formatting Tags, Pre-Tag FONT TAG Special Characters Working with Images META Tag; Links: Anchor Tag, Lists; unordered lists ordered lists, definition lists, tables : TABLE, TR and TD Tags Cell spacing and cell padding colspan and Rowspan Frames: Frameset frame Tag, NOFRAMES Tag Forms: FORM and INPUT Tag,; Text Box Radio Button, checkbox. Select tag and pull down. Lists hidden submit and Reset. Some special Tags: COLGROUP, THREAD, TBODY, TFOOT, blank self, parent top, IFRAME LABEL TEXTAREA. INTRODUCTION TO Java Script: Java script variables and data types. Statement and operators, control structures object based programming message box in JavaScript, Javascript with HTML forms
CIT414 Computer System Performance Evaluation 2 Credits
Measurement techniques, Simulation techniques and Analytical techniques. Work-load characterization. Performance evaluation in selection problems. Performance evaluation in design problem. Evaluation of program performance.
CIT499: Project 6 units
Individual or Group projects of approved topics related to the current research interests in the department.