Courses: 4th Year 1st Sem., B. Sc. Computer Science and Information Technology
CMP411: Organization of Programming Languages(3 credit units)
Language definition structure, Data types and structures; Review of basic data types:( Data type as set of values with set of operations, Data types, Elementary types, user-defined types, Abstract data types). Data structure models, Abstraction mechanisms (Procedures, functions), Control structure models, specifications and their implementations.Brief survey of programming paradigms (distinguishing characteristics, tradeoffs between different paradigms, safety and power of expression and particular language supporting each paradigm) Procedural languages, Object-oriented languages, Functional languages, Declarative, non-algorithmic languages, Scripting languages. The effects of scale on programming methodology. General principles of language design. Design goals. Typing regimes( Data type as set of values with set of operations , Data types , Elementary types, user-defined types, Abstract data types). Data structure models, Abstraction mechanisms (Procedures, functions), Control structure models, specifications and their implementations.
CMP421: Data Communication/Networks(3 credit units)
Introduction, waves, fourier analysis, measure of communication channel characteristics, transmission media, noise and distortion, modulation and demodulation, multiplexing TDM FDM &FCM. Parallel and serial transmission (synchronous vs. asynchronous). 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, DSC, etc.
CMP431: Artificial Intelligence and Expert System(2 credit units)
Fundamental issues in intelligent systems: history of artificial intelligence; philosophical questions; fundamental brute-force search; best-first search; two-layer games; constraint satisfaction. Knowledge representation and reasoning: review of propositional and predicate logic; resolution and theorem proving; nonmonotonic inference; probabilistic reasoning; Bayes theorem. Agents: definition of agents; successful application and state-of-the-art agent-based systems; software agents, personal assistants, and information access; multi-agent systems. Machine learning and neural networks: definition and examples of machine learning; supervised learning; unsupervised learning; reinforcement learning; What are expert systems? Basic concepts for building expert systems, Architecture of expert systems; construction of expert systems, Tools for building of expert systems reasoning about resasoning; evaluation of expert systems; language and tools, knowledge of engineering.
CMP441: Computer Architecture& Operating Systems II(2 credit units)
Memory system in 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. Concurrency states and state diagram structures. Interrupts, concurrent execution, mutual exclusion problem and some solutions.Deadlock; Models and mechanisms (Semaphones, monitors etc), Producer-consumer problems and synchronization.Multiprocessor issues. Scheduling and Dispatching. Memory Management.Overlays, swapping and partitions, paging and segmentations, Placement & replacement policies, working sets and Trashing, Catching.
CMP491: Seminar(1 credit units)
CMP451: Software Engineering and Management(2 credit units)
Software design: fundamental design concepts and principles; design patterns; software architecture; good designers; engineering trade-offs; introduction to usability testing. Software processes: software life-cycle and process models; process assessment models; software process metrics. Software requirements and specifications: requirements elicitation; requirements analysis modeling techniques; functional and nonfunctional requirements; prototyping; basic concepts of formal specification techniques. structured design; object-oriented analysis and design; component level design; design for reuse. Software 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; reengineering; legacy systems; software reuse. Software project management
CMP461: Computer Graphics and Animations(2 credit units)
Hardware aspect; plotters microfilm, plotters displays, graphic tables, light pens, other graphical input aids, Facimile and its problems. Refresh display; refresh huggers, changing images, light pen interaction. Two and three-dimensional transformations, perspective.Clipping algorithms; hidden live removal, Bolden surface removal; warlock’s method, shading, data reduction for graphical input.Introduction to hard writing and character recognition.Curive synthesis and fitting. Contouring. Ring structures versus doubly linked lists. Hierarchical structures; Data structure; organization for inter-active graphics. Graphical animations process (Camera, Set and Background ( Image Plane) Light linking. Animation Techniques. Walk cycle and Facial expression. Dynamic animation.Rigidbodies.Softbodies.Constraints.Particles. Tips and tricks on rendering. Human-Computer Interaction (HCI)-Basic concepts and characteristics of HCI.
CMP471: Cryptography, Network Control & Security(3 credit units)
Overview of Computer Security, attacks and services, control of hardware and software usage. Intruders, Viruses and worms. Intrusion techniques, nontechnical attacks, password protection and its vulnerability. Intrusion detection. Nature of viruses. Malicious programs.Types of viruses. Antivirus approaches. Worm propagation and counter measures; access control, intrusion detection and fire walls. Disaster Recovery: Recovery requirements. Policy, strategy, technical team. Execution of recovery plans. Documentation and backup system. Loss estimation. Developing Secure Computer System: External security measures, issues, security Models/specification and verification. Bell and LaPadulla Model, Clark-Wilson Model, Goguen-Messeguer.TCSEC. Network and Telecommunication Security fundamentals. Database Security and its effectiveness.
MTH461: Numerical Analysis II(3 credit units)
The basic Gaussian Elimination Methods. Gaussian Elimination methods with partial pivoting.Algorithms for both basic G.E.M. and G.E.M. with partial pivoting. Inner products and Gram- Schmidt process. Matrix and Vector Norms. Error Analysis of Linear Systems.The condition number of a matrix. Iterative Methods for Linear equations such as: Jacobi method, Gauss-Seidel Method. Convergence analysis of Iterative methods.Linear systems arising from partial differential equations.The finite difference methods.Solution of elliptic, parabolic and hyperbolic equations by finite difference methods.
Similar To this
- 1st Year 1st Sem., B. Sc. Computer Science and Information Technology
- 1st Year 2nd Sem., B. Sc. Computer Science and Information Technology
- 2nd Year 1st Sem., B. Sc. Computer Science and Information Technology
- 2nd Year 2nd Sem., B. Sc. Computer Science and Information Technology
- 3rd Year 1st Sem., B. Sc. Computer Science and Information Technology
- 3rd Year 2nd Sem., B. Sc. Computer Science and Information Technology
- 4th Year 1st Sem., B. Sc. Computer Science and Information Technology
- 4th Year 2nd Sem., B. Sc. Computer Science and Information Technology
- View All Course Outlines