Introduction to Computers
History of computers and their applications. Components. Computers in society, offices, industry and education. Office automation, word processing, graphics, databases and spreadsheets. Use of Internet. Legal and moral aspects.
Fundamentals of Algorithms
Introduction to algorithms, matrices, searing and sorting, graphs, trees. Concepts of iteration and recursions, tracing, timing. Order of magnitude and algorithm complexity.
Discrete Structures
Sets, sequences, functions, elementary logic. Propositional calculus. Methods of Proof, induction,. Relations and partitions. Partially ordered sets. Combinatorics, counting techniques, probability, inclusion-exclusion principle, binomial methods. Counting and partitions. Pigeon hole. Algebraic structures.
Introduction to Computer Programming
Programming and problem analysis. Basic algorithms, translation into programs. Standard data types, basic control structures, functions, structured data types, arrays, structures pointers and files. Debugging and testing programs.
Data Structures: Basic, static and dynamic data structures. Abstraction. Time and space requirements. Queues, stacks, trees and graphs. Heaps. Storage management. Hashing techniques.
Automata Theory
Regular languages, grammars, finite state automate, transducers and relations. Context-tree language and grammar. Language recognition, parsers. Formal languages. Computability and undecidability.
Compiler Construction
Compiler techniques, methodology and organization. Lexical and syntax analysis, parsing techniques. Object code generation, optimization, detection and recovery from error. Compiler and interpreter contrast.
Digital logic design
Boolean algebra, minimization, algebraic K-maps, QM methods. Logic circuits with MSI and LSI. Adders, comparators, encoders, multiplexers, ROM, PLA, PAL. Sequential logic circuits. Moore and Mealy machine concepts.
Computer Organization and Assembly Language Programming
Computer organization, data and instruction representation, ASCII code assembler directives. Keyboard input/screen output. Instruction formats, types. Conversion ASCII strings and binary numbers. Stack operation, debugging, interrupts, macros. Video output, Disk I/O.
Software Engineering I
Development life cycles and models. System specification, project control, team structures. Software analysis and design. Programming, testing, debugging, validation, maintenance and modification. Software development tools, quality, process models. Report writing. Case Tools.
Software Engineering II
Software verification and validation. Evaluate correctness, efficiency, reliability. Integration of techniques. Technical reviews, testing, prototyping and requirement tracing. Industry attitude toward reliability and performance.
Operating System Concepts
History and evolution of operating systems. Types, case histories,. Processes, inter-process and process coordination. Process scheduling. Memory management. File systems. Security and protection. Case operating systems.
Software Project Management
Managing development of software products, software estimation, planning, and controlling. Metrics and measurement, process maturity, quality assurance and standards. Human factors, leadership and team building.
Introduction to Computer Architecture
Boolean algebra. Minimization. Algebraic K maps, QM methods. Logic circuits with MSI and LSI. Adders, comparators, encoders, multiplexers, ROM, PLA and PAL . Computer organization. Control unit, instruction and sequencing. Arithmetic logic unit. Microwave links, satellites, infrared links. Frequency Division FDM, TDM, FDMA, TDMA and CDMA. Switching. Block diagram and current trends.
Computer Architecture
Computer organization. Control unit design. Control signals. Input-output. Programmed, interrupt driven, DMA I/O and interface design. Arithmetic logic unit, implementation, for integer and floating point numbers. Memory, mapping, page replacement, memory management, virtual memory hardware support. Computer communications and error control.
Object Oriented Programming
Objects, classes, inheritance. Encapsulation, polymorphism, early and late binding. Operator and function overload. constructors, destructors. Friend, In-line and Virtual functions. Class libraries. Object oriented software development.
Data Communication
Time and frequency domain. Fourier transform. Analog and digital signals. A/D conversion, Nyquist sampling,quantization. Modulation: amplitude, frequency and phase. ON-OFF keying, FSK, PSK. Binary codes, NRZ, RZ, HDB3, Manchester. Delta modulation. Serial and parallel communication, RS 232 Modems.
Telecommunication Systems
Media, bandwidth, noise, twisted pair, coaxial cables, optical fibers, optical sources and detectors. Microwave links, satellite communication, infrared links. FDM, TDM, FDMA, TDMA, CDMA. Switching. Mobile and cellular communications. Block diagram and current trends.
Numerical Analysis
Mathematical preliminaries. Equation solutions. Interpolation, polynomial approximation, differentiation and integration. Direct methods for solving linear systems, iterative techniques in matrix algebra. Nonlinear equations. Eigen values, Eigen vector computation. |
Distributed Database Systems
Advanced data models. Conceptual design. Concurrency control and recovery techniques. Query processing, optimization. Integrity, security. Client-Server architecture. Distributed database system. Current trends in systems and machines. Analysis of Algorithms
Advanced algorithm analysis and design. Graph algorithm analysis, algebraic, NP-completeness, probabilistic and parallel algorithms. Intractable problems.
Visual Programming
Introduction to Windows programming. Windows API, MFC class hierarchy. Class Wizard, Application Wizard, Application Studio, Graphics Device Interface, Menus, document view architecture. Converting Windows programs to MFC, subclassing controls.
Systems Programming
Overview. Application vs. System programming. System software, operating system, device drivers, OS calls. Windows System for Intel386 Architecture. Windows Architecture. Virtual Machine Basics. Formats. Module management. UNIX, other 32 bit O.S. Programming for I386; UNIX Binary format (ELF). Dynamic shared objects. UNIS kernel programming, device architecture, device driver development. Enhancing UNIX Kernel.
Multimedia Technologies
Scope, convention and trends. Media types in current applications: digital video, audio, graphics. System level, performance synchronization, storage and server, interactivity, hyperlinking, device control, distributed media development and delivery, non-standard media and programming frameworks. Multimedia Networks.
Web Programming
Protocols: TCP/IP, HTTP, 3 tier architecture, web based applications architecture, front end applications and development tools, HTML, DHTML, Scripting Java, Jscript, Vbscript, Java Applets, Active X.
Modern Programming Languages
Developing back end applications: Java servelets, CGI/Perl Programming, cold fusion, gateway interface. Database connectivity: DBC, ODBC. Performance and security. E-Commerce application, security, presentations and projects.
Theory of Computation
Computations, partial recursive functions, Turing machines, alternative models of computing. Theory and limitations of computability. Undecidability. Resource bounded complexity, non-determinism, NP-completeness.
Theory of Programming Languages
Programming language translation. Languages, grammars, parsing. Lexical, syntactic and semantic analysis. Compile time error. Code optimization and generation. Organization of languages, processors, syntax data, sequence control, storage management. Comparison of language features from functional , imperative, logical and object-oriented paradigms.
Advanced Computer Architecture
Complex instruction set architectures. CISC and RISC processor, memory hierarchy, pipe-lining. High performance supercomputers. Hardware, algorithms, numerical accuracy, compilers. Vector, multiple instruction/multiple data stream, single-instruction single-data stream machines. Benchmark techniques. New developments in single CPU systems.
Advanced Operating Systems
Parallel and distributed operating systems. Load sharing, scheduling, reliability, recovery, memory management. Distributed file, agreement and object-oriented operating systems.
Advance Computer Networks
Multi-access communication. Layered network architecture, inter-networking. Advanced topics in flow control, congestion control and rooting. Protocol performances in LAN and WAN environments, network privacy and security.
Advanced Software Engineering
System development, formal techniques, algebraic specification, abstract model. Verification ad Proof. Data refinement, operation refinement. Design decomposition. Software reliability and metrics. Macro models. Defect models on reliability. Failures and fault. Software reliability modeling. Simple model, Markove modeling, parameter estimation, comparison of models.
Calculus and Analytic Geometry
Complex numbers. DeMoivre's theorem. Cartesian curves, functions, graphs. Symmetrical properties. Differentiation of functions. Derivative, rate of change. tangent and normal. Linearization. Maxima/minima and inflexion point. Taylor and Maclaurin expansions. Integrals and methods of Integration.
Differential Equations
Ordinary differential equations. Integrating Factors. Variation of Parameters. Ordinary Linear differential equations. Second Order equations. roots, differential operators, Cauchy equation. Homogeneous and non-homogeneous linear equations. Modeling electrical circuits. Systems of differential equations. Series solutions. Partial differential equations, separation of variables, wave, heat and Laplace equations, Fourier series method.
Multivariable Calculus
Functions of several variables and partial differentiation. Multiple integrals, line and surface. Greens and Stoke's theorem. Fourier series, periodic functions. Even/odd functions. Half range expansions. Fourier and Laplace transform, Z-transform.
Linear Algebra
Vectors, spaces, matrices and determinants. Linear transformations. Operations on matrices, inner products, Eigen values and vectors. application to systems of equations and geometry.
Statistics and Probability
Introduction to statistics, graphical representation, measures of central tendencies, dispersion, frequency distribution. Elementary statistical packages for data analysis. |
Artificial Intelligence
Common Lisp. AI classical systems. General problem solver, means-ends analysis. ELIZA, pattern matching, rule based translators. OPS 5. Knowledge representation: language, rules, semantic networks, frames, objects, scripts. Search: depth, breadth and best first search, hill climbing, min-max search. Symbolic mathematics. solving algebra problems, translating equations, re-write rules, Macsyma, Press, Atlas. Logic programming, resolution, unification, horn-clause logic. Prolog programming. Case studies.
Computer Graphics
Graphics hardware. Algorithms. Graphic applications. Interactive programming plotting, windows, clipping, segmentation. Display systems, panning, zooming. Raster algorithms and software. Lines, characters and circles.
Two and three dimensional imaging geometry and transformation. Curve, surface, rendering, shading, color and animation.
Database Systems
Basic concepts and conceptual modeling. Hierarchical, network and relational data models. Relational theory. Database design. Database security, integrity. Query languages. Relational calculus and algebra, SQL. Query processing and optimization. Concurrency and recovery. Front-end, back-end databases.
Computer Networks
Networks, requirements, and layered architectures. ISO reference model. Encoding/framing, error detection, correction, DLL protocols, Ethernet and FDDI. Network layer and WANs, IP, routing, cell switching, ATM, bridges, internet working. Global internet. Protocols, UDP, TCP, RPC. Application layer, security, domain name systems, and www protocols.
Network Management
Network operating system, setting up server and clients. Network design, client administration, workgroup and domain concepts. System Administration. Monitoring, logging, security, system events. Diagnosing, Troubleshooting hardware, networking and operating system. System configuration. User and group management, user access, remote administration, key processes. Network services administration: email, internet, web and ftp. Heterogeneous network environment. Firewall. Controlling access to machines. |
Counting techniques, probability, classical and relative frequency, subject approaches, laws of probability. Conditional probability and Baye's theorem on random variables. Binomial, Poisson, geometric, negative binomial distributions. Exponential gamma and normal distributions.
Circuit Theory
Ohm's law, Kirchoff's laws. Loop and node equations. Cramer's rule. Network theorems. Conductor, semiconductor, insulator. Band theory of solids. Diodes, rectifiers, clippers, clampers. Transistors, different configurations, common emitter, common collector, common base.
Electronics
Amplifiers, low frequency using BJT and FET, single and multistage circuits. Linear analysis and frequency response of amplifier circuits. Feedback amplifiers. Class A, B, AB large signal amplifiers. Thermal considerations. Small signal, low voltage amplifiers. Low and high frequency oscillators. 555 timer. Op-amplifier and its application.
Financial Accounting
(See Business Administration)
Financial Management
(See Business)
Human Resource Management
(See Business)
Organizational Behavior
(See Business)
Technical and Business Writing
Writing technical reports, research papers and memos. Drafting, revising, editing compositions derived from science and technology. Develop skills in narration, persuasion, analysis and documentations.
(May be substituted by Written Communications offered in Business Administration. Students would direct their efforts towards technical writing.) |