CSE - Undergraduate Course Descriptions
Course fee information is published in the online student Schedule of Classes at www.uta.edu/schedule. Please refer to this Web site for a detailed listing of specific course fees. Prefix and number in parentheses following the U.T. Arlington course number and title is the Common Course Number designation.
CSE 1104. INTRODUCTION TO ENGINEERING (1-0) Introduction to basic engineering concepts. Students will become familiar with engineering and its many sub-fields, ethical responsibilities, creativity and design. Corequisite: CSE 1105.
CSE 1105. INTRODUCTION TO COMPUTER SCIENCE AND ENGINEERING (1-2) Introduction to basic engineering concepts. Opportunities are provided to develop skills in oral and written communication, and department-specific material. Case studies are presented and analyzed. Corequisite: CSE 1104.
CSE 1301. COMPUTER LITERACY (2-3) For those persons having an interest in finding out what a computer is (and is not), the types of problems suited for computers, and how to utilize a computer to solve problems. The organization and characteristics of computers; application of commercial software such as word processors, spreadsheets, database packages, and communications packages.
CSE 1310. INTRODUCTION TO COMPUTERS & PROGRAMMING (2-3) An introduction to the computer, to the algorithmic process, and to programming in C using standard control structures, arrays, and files. Windows and UNIX operating systems are used. Prerequisite: MATH 1302 (or concurrently).
CSE 1311. INTRODUCTORY PROGRAMMING FOR ENGINEERS & SCIENTISTS (3-0) An introduction to the algorithmic process and to programming in C using standard control structures, arrays, files, strings, pointers, bit manipulation and structures. Prerequisite: MATH 1323 (or concurrently).
CSE 1320. INTERMEDIATE PROGRAMMING (3-0) Programming concepts beyond standard control structures, arrays and files in C; object-oriented programming concepts including class structure and behavior; objects in C++. Emphasis is given to data structures (including pointer manipulation) and modular design consistent with software engineering principles. Windows and UNIX operating systems are used. Prerequisite: CSE 1105 (or concurrently) and CSE 1310 or CSE 1311; and MATH 1323 (or concurrently).
CSE 1325. OBJECT-ORIENTED PROGRAMMING IN JAVA (3-0) Advanced program design and implementation in the Java programming language. Object-oriented and event-driven concepts including the Java API, classes and objects, applications, applets, regular expressions, strings, inheritance, polymorphism, graphics and graphical user interfaces, layout managers, exception handling, collections, generics and multithreading. Windows operating system is used. Prerequisite: CSE 1320.
CSE 1392, 2392, 3392. SPECIAL TOPICS (3-0) New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of advisor.
CSE 2140. DIGITAL LOGIC LAB (0-3) Laboratory experiences for CSE 2340. Prerequisite: CSE 2340 (or concurrently) and EE 2440.
CSE 2312. COMPUTER ORGANIZATION & ARCHITECTURE (3-0) Computer organization including memory hierarchy, instruction set architectures, addressing schemes, input-output control schemes, integer and floating-point representation and arithmetic, the relationship of programming languages and operating systems to the hardware. The relationship between higher-level languages and the instruction set architecture. Some programming using one or more current assembly languages, debuggers and simulators.. Prerequisite: CSE 1320.
CSE 2315. DISCRETE STRUCTURES (3-0) Propositional and predicate logic, mathematical proof techniques, sets, combinatorics, functions and relations, graphs, and graph algorithms. Prerequisite: CSE 1320 and MATH 1426.
CSE 2320. ALGORITHMS & DATA STRUCTURES (3-0) Design and analysis of algorithms with an emphasis on data structures. Approaches to analyzing lower bounds on problems and upper bounds on algorithms. Classical algorithm design techniques including algorithms for sorting, searching, and other operations on data structures such as hash tables, trees, graphs, strings, and advanced data structures, dynamic programming and greedy approaches. Prerequisite: CSE 1325 and CSE 2315.
CSE 2321. DATA STRUCTURES FOR NON-ENGINEERS (3-0) Design and analysis of data structures including stacks, queues, hash tables, trees, and graphs. Searching and sorting techniques. Prerequisite: CSE 1320.
CSE 2340. INTRODUCTION TO DIGITAL LOGIC (3-0) Analysis, design and testing of combinational and sequential logic circuits. Topics include Boolean algebra, logic circuit minimization techniques, synchronous sequential circuit design, algorithmic state machine design, design of arithmetic/logic and control units. Computer aided design tools are utilized throughout the course. Prerequisite: CSE 2312 (or concurrently), and CSE 2315 and EE 2440.
CSE 3302. PROGRAMMING LANGUAGES (3-0) Introduction, analysis, and evaluation of the important concepts found in a variety of programming languages. Formalisms useful in specifying language syntax and semantics; programming language paradigms such as algorithmic, functional, logic, and object-oriented. Prerequisite: CSE 2320.
CSE 3310. FUNDAMENTALS OF SOFTWARE ENGINEERING (3-0) Software engineering principles, processes, and techniques; software development approaches focusing on functional analysis and functional design methods. Configuration management, implementation strategies, and testing. Team project. Prerequisite: CSE 2320 or 2321.
CSE 3315. THEORETICAL CONCEPTS IN COMPUTER SCIENCE AND ENGINEERING (3-0) Selected theoretical concepts including regular and context free languages, finite state and pushdown automata, Turing machines, computability, and NP-completeness. Prerequisite: CSE 2315.
CSE 3316. PROFESSIONAL PRACTICES (3-0) Ethics. Contemporary social aspects and responsibilities of computing in a global, societal context. Lifelong learning goals and resources. Entrepreneurship and intellectual property. Project involving written and oral communication. Corequisite: CSE 3310. Prerequisites: COMS 3302, IE 3312.
CSE 3320. OPERATING SYSTEMS (3-0) Functions and components of an operating system, including process synchronization, job scheduling, memory management, file systems protection, and deadlocks. Related system software, such as loaders, linkers, assemblers, and windowing systems. Prerequisite: CSE 2312, CSE 2320, and IE 3301 or MATH 3313.
CSE 3322. COMPUTER ARCHITECTURE (3-0) Hardware and software structures found in modern digital computers. Instruction set architecture, hardwired design of the processor, microprogramming, I/O and memory units, analysis of instruction usage, and hardware complexity. Prerequisite: CSE 2312 and PHYS 1444
CSE 3330. DATABASE SYSTEMS AND FILE STRUCTURES (3-0) Database system architecture; file structures for databases, including indexing hashing, and B+-trees; the relational model and algebra; the SQL database language; Entity-Relationship data modeling; functional dependencies and basic normalization. Prerequisite: CSE 2320 or 2321.
CSE 3340. COMPUTATIONAL METHODS IN COMPUTER ENGINEERING (3-0) Study of the mathematical foundations for computer engineering. Selected topics from probability and queuing theory, approximation and numerical methods, and optimization. Includes discussion of applications in such areas as databases, human-machine interface, robotics, networks, security and vision. Prerequisites: IE 3301, CSE 2320, and MATH 3319.
CSE 3442. EMBEDDED COMPUTER SYSTEMS I (3-3) Design of microcomputer based systems: microcomputer programming, component and system architectures, memory interfacing, parallel and serial I/O interfacing, A/D and D/A conversion, and typical applications. Prerequisite: CSE 2140, CSE 3320 (or concurrently), and 3322 (or concurrently).
CSE 4191. INDIVIDUAL PROJECTS (1-0) Special problems in computer science and engineering on an individual basis. Topics may change from semester to semester. May be repeated for credit. Departmental approval must be obtained in advance for degree credit. Prerequisite: consent of instructor and department chairperson.
CSE 4301. CONTEMPORARY PROGRAMMING PRACTICES (3-0) Study of emerging programming languages that have a potential for widespread application. A significant design project in each language is required. Prerequisite: CSE 3302.
CSE 4303. COMPUTER GRAPHICS (3-0) Theory and practice for the visual representation of data by computers including display devices, output primitives, planes and curved surfaces, two- and three-dimensional transformations, parallel and perspective viewing, removal of hidden lines and surfaces, illumination models, ray tracing, radiosity, color models, and computer animation. Prerequisite: CSE 2320, and MATH 3319 or MATH 3330.
CSE 4305. COMPILERS FOR ALGORITHMIC LANGUAGES (3-0) Review of programming language structures, translation, and storage allocation. Theory and practice of compilers and issues in compiler construction including parsing, intermediate code generation, local optimization problems such as register allocation, data-flow analysis, and global optimization. Prerequisite: CSE 3302.
CSE 4308. ARTIFICIAL INTELLIGENCE I (3-0) An introduction to the field of artificial intelligence studying basic techniques such as heuristic search, deduction, learning, problem solving, knowledge representation, uncertainty reasoning and symbolic programming languages such as LISP. Application areas may include intelligent agents, data mining, natural language, machine vision, planning and expert systems. Prerequisite: CSE 3302 & 3315.
CSE 4309. ARTIFICIAL INTELLIGENCE II (3-0) Continuation of artificial intelligence methods and techniques, including uncertainty reasoning, machine learning, perception, and advanced topics in knowledge representation, search and planning. Emphasis on design and implementation of AI solutions. Prerequisites: CSE 4308 and IE 3301.
CSE 4311. OBJECT-ORIENTED SOFTWARE ENGINEERING (3-0) Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: CSE 3310.
CSE 4313. INTRODUCTION TO SIGNAL PROCESSING (3-0) Examines models for presentation and processing of digital signals. Sampling theorem, correlation and convolution, time and frequency analysis of linear systems, Fourier transform, Z-transform, design of digital filters structures for discrete time systems. Prerequisite: MATH 2425.
CSE 4316. COMPUTER SYSTEM DESIGN PROJECT I (2-3) Analysis and design of an industry-type project that involves hardware and software components to meet desired needs within realistic constraints and standards. The project is to be completed in CSE 4317 the following semester. Multidisciplinary teams of CSE 4316 students are required to develop, review, and present problem definition, project planning, requirements formulation, and design specification. Corequisite: CSE 3316. Prerequisite: CSE 3310, CSE 3320, CSE 3322. In addition, CSE 3442 and at least one of CSE 4340, CSE 4342, and CSE 4360 for CpE majors.
CSE 4317. COMPUTER SYSTEM DESIGN PROJECT II (2-3) Implementation, integration, quality assurance through peer review and testing, and deployment of the project designed in CSE 4316; oral presentation, documentation and project demonstration. Prerequisite: CSE 4316 and continuation with the same team.
CSE 4319. MODELING AND SIMULATION (3-0) Techniques for system modeling and simulation of stochastic and knowledge-based systems. Modeling methods, model validation and verification procedures, and steady state solution techniques. Prerequisite: CSE 3310 and IE 3301 or MATH 3313.
CSE 4321. SOFTWARE TESTING & MAINTENANCE (3-0) Study of software quality assurance, software testing, and software maintenance processes, methods and techniques including formal review techniques, software verification, validation, and testing, types of software maintenance, maintenance activities, and regression testing. Prerequisite: CSE 3310.
CSE 4322. SOFTWARE PROJECT MANAGEMENT (3-0) Introduction to software project management. Issues include effort estimation and costing, project planning and scheduling, option analysis, software quality assurance, and formal technical reviews. Prerequisite: CSE 3310.
CSE 4323. ADVANCED ARCHITECTURE (3-0) Pipelined control and ALU designs, parallel processor organizations including SIMD and shared memory MIMD, message passing MIMD, dataflow processing, cache memory design, and processor-memory interconnections. Prerequisite: CSE 3442.
CSE 4331. DATABASE IMPLEMENTATION AND THEORY (3-0) Review of the relational model and algebra; relational calculus; relational database design theory; advanced data modeling concepts; object-oriented and object-relational databases; database system implementation techniques, including concurrency control, recovery, atomic commitment, and query processing and optimization, database security; introduction to advanced concepts, such as active, deductive, spatial, temporal, multimedia and distributed databases. Prerequisite: CSE 3330.
CSE 4340. MOBILE SYSTEMS ENGINEERING (3-0) Mobile devices including handheld computers, sensor nodes and smart phones, operating systems, middleware and communication in mobile environments. Applications of mobile systems in health, entertainment, security and other areas. Prerequisites: CSE 3340 and 3442.
CSE 4342. EMBEDDED SYSTEMS II (2-3) Advanced course in design of microcomputer-based systems. Emphasis is on the application of state-of-the-art microprocessors, microcomputers, and other LSI and VLSI components to real-time, interactive, and online problems. Prerequisite: CSE 3442.
CSE 4344. COMPUTER NETWORK ORGANIZATION (3-0) Design and analysis of computer networks. Emphasis on the OSI architecture but discusses other schemes (e.g., ARP Anet). Data link control, local networks, protocols/architectures, network access protocols, transport protocols, internetworking, and ISDN. Prerequisite: CSE 3320.
CSE 4346. ADVANCED COMPUTER NETWORKS (3-0) Design and engineering issues in networking. Topics include congestion control, scheduling, multicast routing, connection-oriented switching, DNS, bind, domain name space issues, flow control, traffic management, and admission control. Prerequisite: CSE 4344.
CSE 4348. MULTIMEDIA SYSTEMS (3-0) A hands-on approach to the study of principles underlying multimedia systems. Topics include multimedia systems design, multimedia hardware and software, issues in effective representation, processing, and communication of multimedia data such as text, graphics, audio, images, and video. Prerequisite: CSE 3320.
CSE 4351. PARALLEL PROCESSING (3-0) Theory and practice of parallel processing, including characterization of parallel processors, models for memory, algorithms, and interprocess synchronization. Issues in parallelizing serial computations, efficiency and speedup analysis. Programming exercises using one or more concurrent programming languages, on one of more parallel computers. Prerequisite: CSE 3302 and CSE 3320, or consent of instructor.
CSE 4353. DISTRIBUTED COMPUTING (3-0) Theory and practice of distributed computing. Topics include parallel versus distributed processing, message passing systems, shared memory, distributed objects, processing and coordination, the World Wide Web, broadcast and mobile computing. Prerequisite: CSE 3320.
CSE 4360. AUTONOMOUS ROBOT DESIGN AND PROGRAMMING (2-3) An introduction to robotics and the design and programming of autonomous robot systems. Topics include basic kinematics, dynamics, and control, as well as sensors, knowledge representation, and programming techniques. Course work includes individual and group projects involving the building and programming of simulated and real robots. Prerequisite: CSE 3320.
CSE 4361. SOFTWARE DESIGN PATTERNS (3-0) In-depth study of software design patterns, including description of patterns, design principles and techniques used by patterns as well as application of patterns to solving practical design problems. Team project. Prerequisite: CSE 3310.
CSE 4391. INDIVIDUAL PROJECTS (3-0) Special problems in computer science and engineering on an individual basis. Topics may change from semester to semester. May be repeated for credit. Departmental approval must be obtained in advance for degree credit. Prerequisite: consent of instructor and department chairperson.
CSE 4392. SPECIAL TOPICS (3-0) New developments in the field of computer science and engineering. Topic may vary from semester to semester. May be repeated for credit when topic changes. Departmental approval required in advance to use for degree credit. Prerequisite: consent of instructor and professional program standing.
