Course Outlines / Description

 

Course

Outlines/Descriptions

Introduction to Computer Science (2-1)

Computer Science concepts and applications in our society as well as a look at the hardware that makes up a computing machine; office automation tools such as word processing, databases, spreadsheets; internet; current trends in computer science.

Programming Fundamentals (1-2)

Principles and practices of problem solving using C, C++; flow charting, development of efficient algorithmic solutions to problems. Besides, it enables students to learn the extensive subset of C++ and prepares them for higher-level courses in computer engineering.

Database Concepts
(2-1)

This course is focuses on providing an understanding of database systems, Relational model and basic SQL, ER model, ER to relational mapping. Advanced SQL, SQL Programming, Triggers, Relational algebra, Normalization, Data and Index Organization, Relational query optimization, Concurrency control, Crash recovery.

Object Oriented Programming (2-1)

 

Prerequisite: Programming Fundamentals

OOP techniques, Classes & objects, data abstractions, operator, Overloading, Inheritance, Templates, Polymorphism, Virtual function, file processing and string stream I/O; Message and event driven programming, and graphics based applications. Programming assignments & project are essential parts of this course.

Data Structures (3-0)

 

Prerequisites: Programming in C++, Fundamentals of Algorithms

This course covers basic data structures such as stacks, Queues, and Trees as well as advance data structures; internal storing, external storing and hash table methods; Searching and merging files; Implementation and evaluation of various assignments with emphasis on design.

OO Programming using Java (2-1)

 

Prerequisite: OO Programming

This course covers java virtual machine, java class libraries, Java applications, Applets, Packages, Inner class, Swing and advanced Swing, Multithreading files and streams; JDBC, RMI, Networking, Java beans, Java Servlets, JSP.

Microprocessor and Assembly Language
(3-1)

 

Prerequisite: Digital Logic Design

This course covers basic computer organization and assembly language with emphasis on the X86 assembly language; Memory hierarchy, Registers, Caches, Computer CPUs, I/O organization and services; Multi-processor programming and TSRs. The course helps in forming a bridge between hardware and operating systems.

Microprocessor and Assembly Language (3-1)

 

Prerequisites: OO Programming, Fundamentals of Algorithms

This course provides the students an in-depth knowledge of complexity analysis, storing, Graph theory and problem solving strategies; Comparison of various storing and graph algorithms, formulation and design of algorithms. Standard algorithms are presented including Hopfield nets, linear associative models, bi-directional associative memories and adaptive resonance models; use of approximation algorithms where the problem cannot be solved by exact algorithms.

Compiler Concepts
(2-1)

 

Prerequisites: Operating Systems, OO Programming

This course addresses compiler design and construction for high-level programming languages. It covers the techniques needed to translate programs in high-level languages to machine codes to be executed by the hardware of Central Processing Units (CPU) of computers. The topics addressed include: Lexical Analysis, Syntactic Analysis, Intermediate Code Generation, Compiler Optimization, and Object Code.

Operating Systems
(3-0)

 

Prerequisite: Data Structures

This course provides students an understanding of internal and external view of computer operating systems; basic concepts and terminology, processes, communication and synchronization, scheduling, shared resources, recourse allocation and de-allocation; memory and file management.

Visual Programming (VB.Net) (2-1)

 

Prerequisite: OO Programming

This course provides practical experience in using the Visual Basic/Visual C++ programming language for developing window-based application in PC environment. Topics covered are Generating Windows Applications employing MFC and the Application Framework (AFX), Leveraging existing object-oriented C++ programming skills, Building on the AFX frame window/ document/view architecture; Employing wizards to generate messages and command handling functions; Creating user interfaces rapidly using dialog boxes, graphics, form views and controls, Integrate ActiveX Controls, Working with Visual C++/ Visual Basic.NET and Visual Studio.NET.

Multimedia Design & Deployment (2-1)

 

Prerequisite: Visual Programming

Introduction to multimedia programming, scope of multimedia programming, convention and trends; media types used in current applications (including digital video, audio, and graphics); Hypertext and hypermedia, electronic publishing; Video conferencing and authoring; Compression and decompression techniques; Assignments and projects are essential part of this course.

Advanced Database Systems (2-1)

 

Prerequisite: Database Management Systems

This course provides an in-depth study of database management systems with concentration on efficient design and usage.  Topics covered include: the design of data models, the theory of relational databases, query optimization, recently developed protocols to guarantee consistency of databases, the design of physical models and performance modelling techniques; distributed databases, database machines and current query languages are also covered.

Network Programming (2-1)

 

Prerequisite: OO Programming using Java

Introduction to computer network architecture and methods of programming network services and applications (e.g. DNS, Email and MIME, http, SNMP, multimedia); Wired, Wireless and Satellite network architectures, Review of OSI protocol model, with an emphasis on upper layers; Congestion control, Routing, Internet protocol suit (e.g. IP, TCP, ARP, RARP). Server design (e.g. Connectionless, Concurrent). Network programming abstractions (e.g. XDR, remote procedure calla, Sockets, DCOM).

Computer Graphics
(2-1)

 

Prerequisites: OO Programming, Linear Algebra

This course covers topics like graphics hardware, fundamental algorithms; Applications of Graphics, Interactive graphic programming, Graph plotting, Windows and clipping, segmentation, Programming raster display systems, Panning and zooming, raster algorithms and software-scan converting lines; Characters and circles, region filling and clipping. Two and three-dimensional imaging geometry and transformations, Curve and surface design, Rendering, Shading, Colour, and animation.

Systems Programming (2-1)

 

Prerequisite: Operating Systems

Application vs System Programming, System software, Operating system, Device Drivers, OS Calls, Window System programming for Intel 386 architecture: 16 bit vs 32 bit, Programming, 32 Flat memory model, Windows architecture, Virtual machine (VM) Basics, System Virtual machine, Driver (V + D),Dynamic shared objects, Unix device architecture, Device driver Development.

Artificial Intelligence
(3-0)

 

Prerequisites: Data Structure, Discrete Mathematics

This course provides an overview of artificial intelligence including AI Techniques and concepts. The topics include: Production systems, Heuristic searching techniques, knowledge representation, predicate calculus and pattern recognition. It introduces AI application areas such as game playing, expert system, computer vision, Natural Language processing and learning.

Neural Networks (3-0)

 

Prerequisite: Artificial Intelligence

Artificial Neural Networks consists of a large number of simple processing elements connected to each other in a network. It has inherent advantages of parallelism, fault tolerance, and ability to process and analysis large account data. Self organization Schemes in VLSI design, Neural Network applications in Network Routing, Application in Data mining.

Expert Systems (3-0)

 

Prerequisite: Artificial Intelligence

This course addresses the design and implementation of Rule Based Systems, which are used to capture and utilize the knowledge of human expertise in a particular area of application. The topics include: Knowledge acquisition, Knowledge processing, Validation, Implementation, and the role of scientists in development of expert system.

Distributed Systems
(3-0)

 

Prerequisite: Advanced Database

Client/server architecture, client/server programming, TCP/IP sockets, the Internet applications and services, open systems, client/server application design, World Wide Web, network application programming interfaces, Internet programming, Web-database interfacing technology, distributed object-oriented technology.

Object Oriented Analysis & Design (3-0)

 

Prerequisite: OO Programming

The purposes of this course is to introduce students to requirement, analysis and design patterns, improving architecture, analysis models, achieving reuse, robustness and flexibility using UML. Using design patterns: Achieving user interface independence, Patterns for persistence, enabling product evolution, improving dynamic behaviour, Creational, behavioural and structural patterns, combining and varying patterns.

Data Structures & Algorithms (2-1)

 

Prerequisite: OO Programming

This course covers the following topics: Analysis of algorithms, trees, binary search trees, multi-way search trees, priority queues, heaps dictionaries, hash tables; graphs, graph traversals, graph algorithms; sorting. Searching Revisited, Dynamic Algorithms, Huffman Encoding, FET, Games.

Circuit Analysis (2-1)

 

Prerequisite: Physics

This course provides students a practical approach in the field of electrical engineering. The main topics are: series and parallel circuits, current sources, branch current method, mesh analysis, nodal analysis, Bridge Theorems, Norton's theorem, inductor and capacitors.

Electronics-I (2-1)

 

Prerequisite: Circuit Analysis

This course introduces the fundamental concepts of electronics including conventional and electron flow, Semiconductors, Diodes, Zener diodes, Transistor and its types, Power Amplifiers, field effect transistors, OP-AMP theory.

Digital Logic Design 
(2-1)

 

Prerequisite: Electronics-I

This Course covers number system, Boolean algebra, Minimization techniques, Flip Flops, Registers, Counters and analysis of combinational and sequential circuits. Memories, programmable logic devices, and construction of ALUs. The course also provides students a practical experience of design, implementing, and testing of digital logic circuits using discrete as well as integrated circuit devices.

Basic Electronics and DLD (3-1)

This course studies complex network analysis, Network theorems, Semiconductor devices and their applications, number system, Boolean algebra, Minimization techniques, Flip Flops, Registers, Counters and analysis of combinational and Sequential circuits. Memories, Construction of ALU. The course provides the students a practical experience of designing, Implementing, and testing digital logic circuits using discrete as well as integrated circuit devices.

Introduction to Information Technology (2-1)

This course covers topics like Computer Science concepts & applications, Data representations, Computing languages and Programming tools, operating systems, data processing, Computer networks, Graphic Packages, Databases and spreadsheets, current trends and future prospects.

Designing E-Commerce Web Applications (2-1)

 

Prerequisites: Introduction to IT, Visual Programming

This course provides the basic concepts of e-commerce, foundations of e-commerce; the value chain model, introduction to Cold Fusion. business models for e-commerce, three tier architecture, Cold Fusion E-commerce architectures, development and implementation strategies, creating and managing content; transaction processing, security, payment systems, E-business environment, implementation.

Management Information Systems (3-0)

 

Prerequisite: Introduction to IT

This course provides an understanding and developing the key elements and managerial aspects of information systems. Topics include the impact of information systems on businesses, Planning and organizing the information, processing function, evaluating and selecting systems and implementing the new information systems.

Web Design and Deployment (2-1)

 

Prerequisite: Programming Fundamentals

Introduction: The Internet, What is a website? HTML Tags & Attributes, Page Layout & Navigation, Implementing Tables, Image mapping. Advanced: Frames & Forms, Implementing Frames, Form Data, XML and ASP concepts, FTP: Uploading the Site, WS, FTP, Administration and Maintenance on IIS.

Cryptography and Data Security (3-0)

 

Prerequisites: Data Communication, Networking

Introduction: issues of network security, Review of networks; denial of service attacks; Review of networks: Firewalls, orange book; patent issues; introduction to cryptography, Secret key cryptography, Cryptography, Secret key cryptography; DES, Secret key, Cryptography; IDEA; CBC/OFB. Hashes and message digests; MD2/4/5 Public key algorithms (RSA, prime number generation); Number theory, Authentication systems; Intrusion detection, Authentication of People, Security handshake pitfalls, operating system vulnerabilities; IP security, Email security; PGP, Web security and SSL/TLS.

Data Communication (3-0)

Introduction to computer communications; analog & digital signals; Digital data transmission, wireless transmission, Telephone systems, satellite communications; Modems, transmission media, Simplex, half and full duplex, multiplexing, coding and error detection, Circuit and Packet switching; data link controls & protocols.

Computer Networks & Internetworking (2-1)

 

Prerequisite: Data Communication

This course discusses the OSI and TCP/IP reference models; physical layer, data link layer up to application layer. It also covers such technologies as ATM, Frame relay and mobile communication. TCP/IP protocols and speed data LANs and MANs. Ring configurations, Operation and Implementation, Networking and Internet working devices, repeaters, bridges, routers, gateways and routing algorithms; network security issues.

Data Communication & Computer Networks
(2-1)

 

Prerequisites: Introduction to CS/Introduction to IT

Introduction to Computer Networks, Computing Models and Topologies. Wireless media, Wired media. OSI reference model and a critical overview and comparison with TCP/IP OSI seven layer stack. Layer wise functions, Mapping of OSI layers to network elements. Physical Layer. Presentation and Application Layers with different protocols, Internetworking, Protocols of TCP/IP model (ARP, ICMP, IGMP and IP). Data Link Layer (review) Media Access control (MAC layer), Mac layer procedures.  Contention, OSI communication Implementation. IEEE 802 family of standards. FDDI. Frame relay. SONET and SDH. SLIP. The art of subnet masking. Connectivity Devices (Bridges, Hubs, Repeaters and switches). Establishment of a LAN and installation of different servers.

Wireless & Mobile Networking (2-1)

 

Prerequisite: Data Communications and Computer Networks/ Computer Networks & Internetworking

This course covers the following topics: Overview of Mobile and Wireless Networking, Wireless Telecommunication Channel and Propagation Models; Cellular Systems and Channel Reuse; Channel Assignment; FDMA, TDMA, CDMA. Digital Modulation for Wireless Communications, Error Control. Overview of Cellular Network, GSM. GSM Air Interface; Overview of Cellular Mobility Management. GSM Mobility Management; Mobile IP and TCP. Mobile IP, ATM. Ad Hoc Wireless Networks: Virtual Backbone, Sparse Spanner, Energy Efficient Routing, Localized Routing.

Network Administration (2-1)

 

Prerequisite: Data Communication and Computer Networks or Networking

Popular network operating systems (NT, Unix); configuring networks, including DNS, DHCP, routing; user management and access control; file systems, including striped and fault-tolerant file systems; sharing file systems via the network; disk configuration and administration, backup and restore; managing printers and printer pools; managing processes, performance optimization and capacity planning; securing systems, implementing security policies and system auditing; automating system administration tasks with scripts; secure connection technologies over regular Internet VPNs; remote network access; web server installation and configuration; system management tools, trouble-shooting and maintenance.

Software Development in Java (2-1)

 

Prerequisite: OO Programming

This course covers the techniques of object-oriented programming in Java, and the characteristics of the Java programming language. The language features such as applets, packages, exception handling and multithreading with concurrent programming are discussed. Java graphical user interface and animation tools are important parts of this course. The advanced topics - network programming and client/server and Remote Method Invocation (RMI) as well as Java Database Connection (JDBC) are introduced with an executable example.

Software Engineering and CASE tools (3-0)

 

Prerequisite: OO Programming

This course covers the introduction of different aspects of Analysis, design and development, Design Quality of OO system, managing software projects. Conventional methods for software engineering, Design for real-time systems software testing techniques, Software testing strategies, Verification and validation methods for OO-software and how it differs from functional design testing; Study of CASE tools.

Advanced Software Engineering (3-0)

 

Prerequisite: Software Engineering and CASE tools

This course includes software verification and validation: Techniques are introduced to evaluate software correctness, efficiency, performance and reliability , Integration of these techniques into verification and validation plan, Technical reviews, software testing, prototyping, and requirement tracing, Attitude of industry towards reliability and performance.

Software Quality Management (3-0)

 

Prerequisite: Software Engineering and CASE tools

This course extends software engineering concepts to focus upon quality, from the perspective of the software developer, user customer, and support staff. Topics includes: software quality practices, user friendly system design, Modularity and structure, Requirements coverage, System architecture, Designing for test, Maintainability, and an overview of languages and their fitness towards various applications.

Human-Computer Interaction (3-0)

 

Prerequisite: Visual Programming

Fundamentals of human-computer interaction, Overview of human processes, computer processes, and systems design practices that support successful human-computer interaction.

Advance Operating Systems (2-1)

 

Pre-requisite: Operating Systems

This course provides in-depth knowledge of operating systems. The topics include: Parallel and distributed operating systems. Load sharing, Scheduling, Reliability, Recovery, Memory management, Distributed file systems, distributed agreement, and object oriented operating system.

Routing and Switching (2-1)

 

Pre-requisite: Data Communications

This course Covers bridge algorithms, network layer addressing, IP datagram format, static and dynamic routing, address resolution, intra-domain and inter-domain protocols, SNMP and MIB management protocols, Netware and Appletalk protocols, and an introduction to switching. Hands-on labs give students extensive experience configuring and managing Nortel Networks Advanced Remote Node (ARN) routers using Technician Interface and Site Manager Software. Students configure an Ethernet port, set interface parameters to support IP, display a routing table, interpret an ARP cache, configure an SNMP community, demonstrate the Events and Traps Monitors configure a Nortel Networks ARN for Appletalk and IPX, and differentiate how hubs and switches handle network collisions.

Physics-I/Engineering Physics (2-1)

This course introduces fundamental concepts of motion in one Dimension, freely falling bodies, Motion in two dimensions, Projectile motion, Electromagnetism, Gauss' law and its application, Kirchoff's laws and Complex Networks Analysis.

Calculus and Analytical Geometry (3-0)

This course provides the basic concepts including introduction to co-ordinates, graph, lines, function and limits; Techniques and applications of differentiation, Integration; Logarithmic and Exponential function are also covered.

Discrete Mathematics (3-0)

 

Prerequisite: Calculus

This course covers mathematical foundation of computer science; an introduction to logic, Sets, Function and relations is made. Other topics include Graph, Tree algorithms, counting and Boolean algebra. The relationship of these concepts with computer science is emphasized.

Probability and Statistics (3-0)

 

Prerequisite: Calculus

In this subject the mathematical basis of probability is explored and contemporary applications with special relevance to engineering are sampled. The topic include: Introduction to statistics, Measures of Central Tendency, Measures of Dispersion: Importance of dispersion, Range, Mean Deviation, Standard Deviation, Hyper-geometric Distribution and its Properties, Normal Distribution: Introduction, properties of normal distribution, tabulated areas of Normal Distribution, Introduction to Regression.

Applied Linear Algebra (3-0)

 

Prerequisite: Calculus and Analytical Geometry

This course covers vectors and geometry in two and three dimensions, System of linear equations, Matrices, Algebra, Linear transformation in R2 and R3, Generalization to the vector spaces Rn, Inner product, Determinant, Inverse of matrix, Methods for the solution of system of linear equations.

Communication Skills (3-0)

This course aims at helping the students in development of a positive and practical approach to effective written and oral communication in business and professional settings. Emphasis is laid on correct grammar, punctuation and syntax. Personal appearance, style and body language are some other aspects that are discussed.

Pakistan Studies (2-0)

This course is designed to explore the history of British/Indian relation from the pre-independence struggle period to the birth of Pakistan. It also provides students with an understanding of the major political, social, cultural and economic trends in Pakistan.

Islamic Studies/Ethics (2-0)

This course introduces students to the basic teachings of Islam so that they understand the concept behind Islamic beliefs and practices. The topics covered are basic source of teaching, beliefs and their impact on human life, obligation to God, obligation to fellow beings. It also discussed a few selected portions of Qur'an and includes analysis of the style and message of the text.

Numerical Analysis (3-0)

 

Prerequisites: Advanced Calculus, Linear Algebra

This course covers direct and interactive methods for solutions of systems of linear equations, floating-point computation, Error pivoting, Scaling, Spars techniques, Over-determined systems of equations. Least squares, Jacobi, Gauss-Seidel, and SOR, Steepest descent and conjugate gradient. Students will implement numerical algorithms in symbolic and numerical processing packages like MATLAB.

Fundamentals of Accounting (3-0)

The purpose of this course is to familiarize the students with the basics of accounting terminologies, records and financial statements with focus on the accounting cycle and preparation of financial statements, introduction to special journals and subsidiary ledgers and alternative forms of business organizations.

Financial Accounting
(3-0)

 

Prerequisite: Introduction to Accounting

The course is directed towards students desiring proficiency in practice of accounting and insight into characteristics of effective organization through understanding of purposes, operations and use of accounting information for management planning and control. The mechanics will be substantiated with discussion on theoretical basis of alternative accounting practices. Interpretation of financial statements for decision making is the prime objective. Topics to be covered include accounting cycle, generally accepted accounting principles (GAAP) & international accounting standard (IAS), accounting information systems (manual & computerized), accounting for inventories and plant assets, partnerships and corporations, accounting for trading and manufacturing organizations.

Cost Accounting (3-0)

 

Prerequisite: Financial Accounting

The purpose of this course is to familiarize the students with the cost accounting systems, differential cost analysis for decision-making and developing cost data for performance evaluation. Major topics to be covered include an overview of cost accounting, direct materials, direct labour, the mechanics of cost allocation and overhead analysis, job costing, unit costing, process costing, and joint product costing, cost classification and estimations, cost-volume-profit analysis, cost with reference to shot term decision-making (differential costing), standard costing and variance analysis.

Principles of Economics (3-0)

This course provides major economic principles, problem in contemporary life, supply and demand, the price system, competitive and monopolistic markets, National income concept, Money and banking, balance of payment and business cycles, the essentials of monetary and fiscal policies and their implementation.

Microeconomics (3-0)

This course provides an introduction to the principles of microeconomics. Topics covered include price theory and resource allocation, imperfect competition, antitrust policy, and the economics of the labour market level course aims to introduce the student to economic reasoning through the study of positive and normative microeconomics: the latter studies the way in which individual agents, grouped into households and firms, take their decisions, the way in which such decisions are made mutually compatible by the market, and the regulating role of the government.

Macroeconomics (3-0)

The objective of this course is to study the working of the macro economy in order to discover the causal relationships between variables, and the effect of economic policy. The course also equips the students with an understanding of economic and financial data, and the relevance of economic commentary. The treatment is mostly non-technical and is based on the observation of institutional and market behaviour rather than concentrating on theory. It examines issues like inflation, interest rates, unemployment, economic growth, banking, and international trade that attract a great deal of public attention.

Economics of Pakistan (3-0)

 

Prerequisite: Macro Economics

This course provides an introduction to different sectors of the country's economy. It highlights different economic problems faced by different sectors of economy and various solutions to overcome these problems. The course is designed to improve the understanding of important issues faced by the country's economy.

Managerial Economics (3-0)

 

Prerequisite: Principles of Economics

Managerial economics is the core course for MBAs. It refers to the application of economic theory and the tools of analysis of decision science to examine how an organization, a firm or a non-profit organization can achieve its aims and objectives in an efficient manner.

Business Mathematics-I (3-0)

This is an elementary course in mathematics. It includes basic arithmetic, basic algebra, binary numbers, sets, solution of simple, quadratic and simultaneous equations, logarithm & its applications, progressions & its applications and finance mathematics.

Business Mathematics-II (3-0)

This course covers functions and their limits, graph of a function, differential calculus including basic techniques of differentiation and its application in business, integral calculus and its applications in  business, finance mathematics including annuities, matrix algebra, solution of system of linear equations and linear programming.

Elementary Statistics (3-0)

Statistical concepts and techniques, emphasizing problem solving and interpretation; descriptive measures, probability distributions, estimation, hypothesis testing, contingency tables.

Information Statistics (3-0)

 

Pre-requisite:  Elementary Statistics

This course builds on the knowledge gained in the elementary course on statistics.  It emphasizes the relevance of statistics in business management.  The major topics include:  statistical inference, sampling distributions, confidence intervals, hypothesis testing, and comparison of sample means, variances and proportions.

Business Forecasting (3-0)

 

Prerequisite: Business Statistics

This course builds on the tools of statistical inference developed in earlier courses to address issues of estimation and hypothesis testing encountered in regression and time series analysis. Major topics include smoothing techniques, moving averages, ARMA and ARIMA models, prediction and prediction intervals etc.

Business Mathematics and Statistics (3-0)

This course includes the fundamental theory, concepts and techniques concerning probability, sampling, index numbers, regression analysis and other statistical tools along with mathematical applications in different business situations which involve use of matrices, functions, differentiation, integration etc.

Financial Institutions
(3-0)

 

Prerequisite: Financial Accounting

Finance is the life blood for business. Just as blood is necessary for living organisms, so is finance essential for the growth, development and expansion of trade, commerce and industry. Finance is generated and provided by Financial Institutions and capital markets for investment purposes in various types of business. The objectives of this course is to provide such knowledge and skills to the MBA graduates which would enable them to understand the functions and working of the financial institutions and to understand the functions in money and capital  markets and become successful financial managers.

Money and Banking
(3-0)

 

Prerequisite:  Macro Economics

This course studies the fundamentals of money markets and banking systems, with emphasis on principles and operations rather than institutional details. It includes coverage of money markets, their organization, institutions and determination of in