|
|
Course Description of Computer S
Course Description
for
Computer Science department
|
|
No |
Name |
hr.s |
Prerequisite |
|
 |
605105 |
Logic Design |
3 |
606108 |
|
Number
systems, computer codes. Boolean algebra and logic gates.
Simplification of Boolean functions, Karnaugh map, combinational
logic implementation including PLAs, (adders, comparators,
coders, decoders, code converters, multiplexers, demultiplexers).
Sequential circuits, flip flops, counters, shift registers,
memories.
|
|
 |
605111 |
Computer
Skills (1) |
3 |
- |
|
Introduction
to computing and information technology, basic structure of
digital computer systems, microcomputer, operating systems,
applications software, data communication networks and
internet. Hands on learning using windows, internet, MS-Office,
MS-Excel, and MS-PowerPoint. Weekly practice in the lab.
|
|
|
605113 |
Computer
Skills (2) For Engineering and science |
3 |
605111 |
|
Fundamental
concepts of programming using C++ or Java: classes and objects,
modeling object (attributes and behaviors), algorithms, problem
solving flowcharts, pseudo codes. Basic blocks of programming
such as variable names, data types, control structures,
functions, arrays.
|
|
 |
605114 |
Computer
Skills (2) For Others |
3 |
605111 |
|
An introduction
to visual basic programming language, topics include visual
basic principles, visual programming, and event-driven
programming.
|
|
 |
605227 |
Data
Structures |
3 |
605113 |
|
Algorithmic
problem solving, Data Structures (static & dynamic), lists,
stacks, queues, graphs, trees, sets and
dictionaries). Recursion and iteration. Students are expected to
do lab experiments using C++ or Java
|
|
|
605242 |
Computer
Architecture |
3 |
605105 |
|
Hardware
components of a modern computer system, history and performance,
the instruction cycle, memory organization, cache memory, I/O
organization, CPU, micro-programmed control, instruction formats
and modes.
|
|
|
605301 |
Information
Technology Security |
3 |
604244 |
|
Information
security basics, classical encryption and block ciphers, modern
symmetric ciphers, confidentiality using symmetric ciphers,
public-key cryptosystems and key management, message
authentication and hash functions, digital signatures, IP and
Web security, firewalls and trusted systems, software threats
(viruses, worms) .
|
|
 |
605312 |
Assembly
Language |
3 |
605242 |
|
Machine
structure, machine language, register level computer
organization, data structure representation, assembly language
programming including arithmetic operations, I/O processing,
interrupts, subroutines, and macros. Assignments are Intel-based.
|
|
 |
605321 |
Algorithms |
3 |
605227 |
|
Introduction to the design and analysis of algorithms,
mathematical algorithms. Greedy technique, manipulating data:
sorting, searching, dynamic programming, space & time tradeoffs.
The concept of algorithm efficiency, table and information
retrieval. Combinatorial problems, advancement in Java skills
and techniques.
|
|
 |
605334 |
Networks
Computer |
3 |
605242 |
|
Concepts
and terminology of data communications and computer networks.
Logical and physical realization of computer networks,
architecture and transmission alternatives. OSI-reference model,
ALOHA protocol, CSMA protocols, LAN, IEEE standards and
protocols (token ring, token bus and Ethernet), physical layer
basics, data link layer, framing protocols, error detecting and
correcting, routing algorithms, flow control, congestion control
algorithms, personal computer networks.
|
|
|
605364 |
Operating
Systems |
3 |
605242 |
|
Definition
of operating system, review of hardware, software and firmware,
process concepts, asynchronous concurrent processes, real
storage, virtual storage, processor scheduling, distributed
computing, disk performance optimization.
|
|
 |
605401 |
Computation
Theory |
3 |
604107 |
|
Regular
languages and Regular expressions. Deterministic and
nondeterministic finite automata, converting NFA to DFA,
minimization methods of DFA. Context-free languages, pushdown
automata. Turing machine and their languages, unsolvable
problems and computable functions
|
|
 |
605438 |
Network
Programming |
3 |
605334 |
|
Introduction to
networks programming in advanced JAVA (covers I/O routines,
threading sockets, URL connections, server-side programming),
database connectivity , distributed programming, and network
security. Students are required to do lab. assignment.
|
|
|
605451 |
Artificial
Intelligence |
3 |
605227 |
|
Introduction to artificial Intelligence, symbolic reasoning and
knowledge representation techniques, control strategies,
heuristic search, and AI applications (expert systems, neural
language processing, robotics…etc.). Introduction to neural
networks, genetic algorithm and machine learning.
|
|
|
605425 |
Expert System |
3 |
605451 |
|
Introduction to expert systems, expert systems programming
languages, knowledge base, rule base, Knowledge analysis, expert
systems architecture, case studies
|
|
 |
605462 |
Compiler
Design |
3 |
605401 |
|
ntroduction to compiling, lexical analysis, symbol tables,
parsing, syntax-directed translation, type-checking, run-time
organization, intermediate code generation, code optimization.
|
|
 |
605463 |
Systems
Programming |
3 |
605312 |
|
Design
and implementation of system software, assemblers, linkers,
loaders, macro processors, debuggers, editors, introduction to
compilers and operating systems.
|
|
 |
605481 |
Computer
Graphics |
3 |
601281 |
|
Introduction
to computer graphics hardware, algorithms, and software.
Topics include line generators, affine transformation, line and
polygon clipping, splines, interactive techniques, perspective
projection, solid modeling, hidden surface algorithms, lighting
models, shading, and animation, students are required to do lab
assignments in Java.
|
|
 |
605482 |
Image
Processing |
3 |
604351 |
|
Basic
concepts of Image Processing. Create and acquire digital images
from various sources. Overview of image processing and computer
vision systems. Different types of Image Representation and
storage. Sampling and quantization. Some basic relationships
between pixel image geometry in 2D. Image enhancement in the
spatial domain (frequency methods, basic gray level
transformations histogram equalization, histogram processing,
fourier transformation, image enhancement in the spatial domain,
filtering in the frequency domain, image segmentation and image
compression. |
|
|
605491 |
CS Practical
Training |
3 |
601332 |
|
At
least 8 weeks of practical training in public or private
sectors.
|
|
|
605492 |
CS Graduation
Project |
3 |
final
semester |
|
The
student chooses a computer science related project. Focuses on
its practical side in order to prepare himself for the practical
life after graduation. Issues of the subject are worked out,
documentation is submitted and a presentation is given.
|
|
|
606108 |
Computer
Electronics |
3 |
- |
|
DC
circuits, AC circuits, diodes, semiconductor devices.
Transistors, digital electronics, logical circuits, logical
gates, lab sessions should be provided.
|
|