Course Catalogue

Course Code: CSE 411
Course Name:
Compiler Design
Credit Hours:
3.00
Detailed Syllabus:

Compilers, Lexical Analysis: Lexical Analysis, regular expressions, regular languages, syntax Analysis: syntax analysis, context free grammars, bottom-up parsing, LR (0) parsing SLR parsing, (LR (I) parsing, LALR (I) parsing, classification of context-free grammars and languages, syntactic error recovery, syntax direct definitions attributes evaluation, Abstract syntax trees, symbol Tables, type checking semantic cheek for Inheritance: Sub-typing, and for Overloading. Generation of intermediate code: Generation of intermediate code- translation of Boolean expressions, switch/case statements, run-time structures, Back patching Generation of unoptimized target code.

Introduction to code. optimization: control flow graphs, live-variable analysis, allocation optimized register allocation by graph coloring Available expression analysis, Global common sub-expression elimination, nominators, Loops in control flow graphs, Def-use & use-def chains, Loop-invariant, code motion, partial redundancy elimination, constant propagation, optimizing Object-oriented programs, copy propagation, phase ordering of optimizations, Instruction scheduling, optimizations for memory hierarchies.

Course Code: CSE 412
Course Name:
Programming with Java
Credit Hours:
3.00
Detailed Syllabus:

Basics of Java, Threads and Sockets, JDBC, Serialization and reflection, Client Server programming, RMI and distributed computing, CORBA, Beans, Enterprise Java beans, XML Programming with Java, Java Servlets. The course includes lab works based on theory taught.

Course Code: CSE 413
Course Name:
Routers and Routing Basics
Prerequisite:
Credit Hours:
3.00
Detailed Syllabus:

WANs and Router; Introduction to Routers; Configuring a Routers; Learning about other Devices; Managing Cisco IOS software; Routing and Routing Protocols; Distance Vector Routing Protocols; TCP/IP Suite Error and control messages; Basic Router Troubleshooting; Intermediate TCP/IP; Access control lists (ACLs) ; Case Study: Routing Case Study

Course Code: CSE 414
Course Name:
Software Quality Assurance and Testing
Prerequisite:
Credit Hours:
3.00
Detailed Syllabus:

This course will study some of the major areas related to software quality, including: Defining quality, Software quality assurance processes, Software quality standards, Software testing standards, SCRUM and Testing Frameworks, Unit Testing, Integration Testing, System Testing, CMMI, PSP, Extreme Programming.

Course Code: CSE 415
Course Name:
Visual Programming
Credit Hours:
3.00
Detailed Syllabus:

There has been growing research interest in visual languages and visual programming. Its applications are diverse: visual user interface, visual specifications, visual reasoning, visual database systems and multimedia computing, to name but a few. This course will prepare the student to pursue research in these new and exciting fields of theory and application of visual languages.

The aim of the course is to give students basic information about the object-oriented programming concepts using C++ and MFC library, and to enable them to design and code visual programs using Visual Studio 2008.

Course Code: CSE 416
Course Name:
NET Programming using C#
Credit Hours:
3.00
Detailed Syllabus:

This course provides the student with the essentials necessary to design and develop robust and secure applications using C#, Windows forms, and the .NET framework. In addition to the essentials, the course also provides coverage of advanced topics, such as LINQ, ADO.NET, writing secure .NET applications, designing and developing multithreaded applications, and web services.

Course Code: CSE 417
Course Name:
Automata and Theory of Computation
Prerequisite:
Credit Hours:
3.00
Detailed Syllabus:

Alphabet, string (finite and infinite) and languages. Finite representation of languages. Finite automation (deterministic, non-deterministic and Internating), regular expressions, left and right linear grammars and their equivalence’s- Minimal machine, simplification of regular expression. Finite state transducer. Properties of regular languages: closure properties, pumping theorem, ultimately periodic set. Algorithmic problems. Chomsky hierarchy of languages. Pushdown automaton (non-deterministic, deterministic and their non equivalence), context free grammars and their equivalence. Reduce grammars normal forms. CKY and Barley’s parsing algorithms. Ambiguity: deterministic CFL and LR grammars. Properties of CFL: closure properties, pumping theorem Parikh’s theorem Formal power series and degree of ambiguity. Fixed point theory. Algorithmic properties. Turing machine type-O grammar and their equivalence. TM as a transducer, recognizer, acceptor. Variants of TM. Turing acceptable and recognizable languages (recursive and recursively innumerable sets). Universal TM. Halting problem of TM and undecidability results (related to language theory e.g. equivalence of CFGs, ambiguity of CFG etc) Non-deterministic linear space bounded TM (liner bounded automata) and context-sensitive language (CSL ). Properties of CSL. Finite automation on infinite strings. Buchi and Mcnaughton finite state machines, their languages and properties, Relation of these machines and languages with logic and concurrency. Fractal images and automation on infinite strings.

Course Code: CSE 419
Course Name:
Management Information System
Credit Hours:
3.00
Detailed Syllabus:

Introduction to MIS, Components on IS, Structures of IS, Implementation of different IS, DSS, AIS, Project Planning, Production cycle, Data processing, Processing cycle, etc

Course Code: CSE 420
Course Name:
Compiler Design
Credit Hours:
3.00
Detailed Syllabus:

Introduction to Compilers. Lexical analyzer, Regular expression, Non-deterministic finite automata and deterministic finite automata, Context free grammar, Ambiguous grammar, Parsing techniques, Syntax directed translation, type checking. Intermediate code, Symbol table, Data structure for symbol table, Run time storage administration, Error detection and recovery, code optimization, code generation. Use of tools – LEX and YACC. Design of a compiler for a subset of a programming language.

Course Code: CSE 421
Course Name:
WAN Technology
Prerequisite:
Credit Hours:
3.00
Detailed Syllabus:

Public data networks, Routing strategies and flow control in packet switch networks, and X.25 standard. Circuit switched data networks and X.21 interface.

Pages