This post is about Computer Science Courses. So I would be giving you the curriculum for B.Sc. Degree in Computer Science. Students who are just entering school would find this very useful because I’m going to list the 100 level computer science courses; 200 level computer science courses and so on.
Table of Contents
Computer Science Courses for B.Sc Programme
Note: Depending on the lecturer teaching the course and nature of the text used for a particular course, there may be completely, little or no change to the following course outline:
100 Level Computer Science Courses [First Year]
1. COS 101: Introduction to Computer Science |2 units
The history of computers. Functional components and characteristics of a computer, Problem solving: Flowcharts, algorithms, computer programming statements, symbolic names, arrays subscripts, Expressions. Introduction to BASIC or FORTRAN programming Language (QBasic will be used).
2. COS 102: Introduction to Computer Systems | 2 units
Computer structures: Organization and function of the control unit, Arithmetic-logic unit, Memory unit of the CPU as well as the registers used by the CPU; the relationships amongst the CPU, memory and peripheral devices. Number System: conversion of bases (binary, octal, decimal, and hexadecimal): binary arithmetic; Weighted and non-weighted binary codes. Introduction to machine language: Data and instruction formats.
3. COS 104: Computing Practice | 2 units
Interactions of the user with the operating system through command language or job control language. Functions and types of interpretative routines, translators, linkage editors, and loaders. A lot of simple programming problems should be given to allow students have good practices with the language introduced in COS 101 (QBasic Programming Language will be Used).
Note: Students in Computer science department offer General Studies courses and other courses from other departments in their 100 and 200 levels.
200 Level Computer Science Courses [Second Year]
1. COS 201: Computer Programming I | 2 units
Introduction to problem solving methods and algorithm development: designing, coding, debugging and documenting programmes using techniques of good programming style. A widely used programming language should be used in teaching the above, e.g. structured form of FORTRAN OR PASCAL. (Java will be used).
2. COS 202: Computer Programming II | 2 units
Principles of good programming: structured programming concept; debugging and testing; string processing. Internal searching and sorting; data structures, recursion. A programming language different from that in COS 201 should be here. Pascal, PL/1 or COBOL is recommended. (C++ will be used).
3. COS 222: Introduction to File Processing | 2 units
Introduction to data management files, job control language application. An overview of I/O (Input/output) architecture; logical file organization; mapping logical organization into physical storage; back-up procedure, file recovery; higher level language data management facilities. (QBasic or Visual Basic programming Language may be used).
4. COS 251: Assembly Language Programming | 2 units
Basic concepts and general formats of assembly language instructions, micro/macro instruction formats: segmentation and linkage; transfer of control. The assembly language of an available machine should be taught so that students can run their assembly language programmes. (Masm assembler will be used).
300 Level Computer Science Courses [Third Year]
1. COS 301: Introduction to Digital Design | 2 units
Boolean algebra, gates and gating devices, combinatorial logic, sequential logic, microprocessor.
2. COS 303: Introduction to Microcomputer systems | 2units
Functional description; microprocessor architecture; systems operation and interfacing; types of instructions and instruction formats. (A specific microcomputer-based design may be used to teach this course.).
3. COS 304: Computer Applications | 2 units
Prerequisite: COS 101 and/or COS 201
Use of computers in various sectorial applications in a modern economy: Basic computer Operation. Microsoft windows. File Management. Basic of Text editing, Word processing and graphics. Microsoft Office may be use. The internet. Computer virus.
4. COS 311: Numerical Methods I | 2 units
Interpolation; approximation: numerical integration and differentiation; solution of non-linear equations; solution of ordinary differential equations; Introduction to partial differential equations.
5. COS 313: Switching Algebra & Discrete Structures I | 2units
Boolean algebra. Combinational and sequential networks. Directed graphs; circles, connectivity. State transition graphs.
6. COS 314: Switching Algebra & Discrete Structures II | 2units
Finite state machines. Algebraic system; groups, polymorphisms, congruences. Applications to machines structures. Correctness proof for a simple computer.
7. COS 314: Operations Research I | 2 units
The nature of Operations Research. Linear programming problems: formulation; simplex method; transportation problems; simplex method for transportation problems.
8. COS 316: Automata Theory and Formal Languages | 2uints
Formal grammars and automata, Regular languages; context-free languages; deterministic parsing of context-free languages; recursive languages.
9. COS 321: Data Base Design and Management I | 2 units
Data base management systems; review of basic concepts; functions and components of DBMS. Files design and access path future directions in DBMS; programming and applications in D-base environment.
COS 322: Data Base Design and Management II | 2 units
In this second part, a specific Data Base should be used; e.g. Dbase V or higher, Oracle, etc.
COS 331: Compiler Construction I | 2 units
Review of compilers, assemblers and interpreters: structure and functional aspect of a compiler; syntax, semantics and pragmatics; functional relationships amongst lexical analysis, syntax analysis, expression analysis and codes generation. Internal representation of a programme. Use of a standard compiler as a working vehicle (FORTRAN, COBOL, or PL/1) Error detection and recovery. Grammar and Languages. The parsing problems. The scanner.
COS 333: Operating System I | 2 units
Introduction to processes; processor management; memory management, multi-programming concepts and requirements, multi-processing system; other related issues based on semaphore and monitor concepts.
COS 334: Operating System II | 2 units
Issues in analysis and designing operating systems; memory management; protection; resource allocation.
COS 335: Systems Analysis and Design | 2units
Investigations of the working of existing systems; analysis of results; design of new system to improve the existing ones; communication of the new system to all others; maintenance.
COS 341: Computer Architecture I | 2units
Basic logic design; data representation; instruction formats; basic computer organization and design; study of the architecture of an actual simple minicomputer.
COS 342: Computer Architecture II | 2 units
Memory system; general characteristics of memory operation: (Technology-magnetic recording, semi-conductor memory, charged coupled devices, magnetic bubble); memory addressing, memory hierarchy, virtual memory control systems, hardware control, micro programmed control, asynchronous control, I/O control, introduction to the methodology of fault-tolerance computing.
COS 352: Data Structures | 2 units
- Bits, bytes, words;
- Linear structures and list structures, arrays, tree structures, sets and relations;
- Higher-level language data types and data-handling facilities.
COS 372: Laboratory for Digital Design | 3 units
- Practical designs and operations of the laboratory equipment.
COS 374: Industrial Working Experience | 4 units
Three months industrial attachment during the long vacation between the end of the third year and the beginning of the fourth year: A comprehensive report by the student must be submitted to his/her supervisor as soon as the fourth year begins.
400 Level Computer Science Courses [Fourth Year]
1. COS 411: Numerical Methods II | 2 units
- Floating-point arithmetic;
- Use of mathematical subroutine packages;
- Error analysis and norms;
- Computation of eigenvalues and eigenvectors, related topics;
- Numerical solution of boundary value problems for ordinary differential equations, solution of non-linear systems of algebraic equations;
- Least-squares solution of over-determined systems.
2. COS 415: System Modelling and Simulation | 2 units
- The concepts and techniques used in modelling;
- Simulation methods and a suitable language;
- Generation and transformation of random numbers;
- Parameter estimate design experiment; factorial design optimization.
3. COS 413: Queuing Theory | 2 units
- Introduction to birth-death queuing systems;
- Monrovian queues, the queues M/G/I, bounds, inequalities and approximations.
4. COS 414: Operations Research II | 2 units
- Network analysis; Games theory;
- Inventory problems; Reliability problems;
- Dynamics programming.
5. COS 412: Computer Performance Evaluation | 2 units
- Measurement techniques;
- Simulation techniques;
- analytic techniques;
- work-load characteristation;
- performance evaluation in design problems;
- evaluation of programme performance.
6. COS 432: Compiler Construction II | 2 units
- Grammars and languages;
- Recognizer, top-down and bottom-up;
- Production language;
- Run-time storage organization.
- The use of display in run-time storage allocation.
- LR grammar and analyzers: construction of LR grammar and analyzers;
- Construction of LR table.
- Organization of symbol tables.
- Allocation of storage to run-time variables.
- Code generation Optimization.
- Translator writing systems.
7. COS 431: Software Design and Management | 2 units
- Standards; structure; organization;
- Project control standards; Projects team standards;
- Documentation implementation;
- Project technical standards; Projects system manual.
8. COS 451: Algorithms | 2 units
- Principles of good programming style, expressions, and documentation;
- Structured programming concepts;
- Debugging, testing, verifying, code inspection;
- semantics analysis; string processing; data structures;
- recursion; efficiency of algorithms.
9. COS 453: Computer Process Control | 2units
- General overview of process control.
- Process control techniques/specific examples of process controller.
- Process control computer; operation modes and software. Case studies.
10. COS 452: Computer Center Management | 2units
- The role of the computer center;
- General operating procedures;
- Data preparation;
- The magnetic tape library;
- Operations procedure, security procedures, performance statistics.
11. COS 454: Artificial Intelligence | 2 unit
- Introduction to artificial intelligence;
- Understanding natural languages, knowledge representation;
- Expert system; pattern recognition; the LISP language.
12. COS 455: Data Communication & Networks I | 2 units
- Introduction, waves, Fourier analysis, measure of communication, channel characteristics, transmission media, noise and distortions, modulation and demodulation multiplexing TDM, PDM, and FCM.
13. COS 456: Data Communication & Networks II | 2 units
- Parallel and serial transmission (synchronous versus asynchronous).
- Bus structures and loop systems; computer network.
- Examples and design consideration; data switching principles; broadcast techniques;
- Network structure for packets switching protocols; description of network, examples ARPANET, DSC etc.
14. COS 458: Expert Systems | 2 units
- What expert systems are.
- Basic concepts for building expert systems.
- Architecture of experts systems; construction of expert systems; tools for building expert system; reasoning about reasoning, evaluation of experts systems; languages and tools of knowledge engineering.
15. COS 457: Computer Graphics | 2 units
- Hardware aspect; plotters microfilm, plotter displays, graphic tablets, light pens.
- Two and Three dimensional transformation, perspectives.
- Clipping algorithms, hidden line removal, Bolden surface removal.
- Warnock’s method, shading, data reduction for graphical input.
- Curve synthesis and fitting. Contouring.
- Ring structures versus doubly linked lists. Hierarchical structures; data structures; organization for interactive graphics.
16. COS 461: Organization of Programming Languages | 2units
- Language definition structure; data types and structures including lists and trees; control structure and data flow: run-time considerations; interpretation language; lexical analysis and parsing.
17. COS 462: Structured Programming | 2 units
- Principles of good programming style; expressing; structured programming concepts; control flow, invariant relation of a loop; stepwise refinement of both statement and data;
- Programme modularization (bottom-up approach, top-down approach, nested virtual machine appraoch); language for structured programming, debugging, testing, verifying, codes inspection, semantics analysis.
- Test construction; programme verification; test generation and running.
18. COS 464: Concurrent Programming | 2 units
- Rationale for concurrent programming; system components; hardware feature basic software; operating system nuleus; user interface; command and control languages, job control; elements of a design methodology.
19. COS 472: Advanced Digital Laboratory | 3 units
Prerequisite: COS 371
Implementation of some specific projects in the digital and microprocessor laboratory.
20. COS 471: Project | 6 units
Each student is expected to work on topic approved by his/her supervisor. The project report must show the students understanding of the area covered by the topics, and must include appropriate programme(s) with results.
Read Also: A to Z of Important Microsoft Keyboard Shortcut Keys for Computers
Still Got a Question? Drop Your Question Right HERE 👇👇 and click on Search. Get an Immediate Response...
Get in touch with us
Follow us on WhatsApp via WhatsApp or Telegram or Facebook
Like and Follow us on Facebook @SURE SUCCESS NG
Join our 2024 JAMB Tutorial Classes on WhatsApp or Telegram or Facebook
Join our Aspirants Facebook Group @JAMB Tutorials & Updates
UNN Aspirants and Students, Join MY UNN DREAMS (MUD)
If this post was helpful to you, please help us to reach others by sharing with the buttons below!