Undergraduate Courses

  • 4510 - INTRODUCTION TO WIRELESS COMMUNICATIONS

    Fundamentals of wireless communications and networking, with emphasis on first, second, and third generation cellular systems and satellite communication. Topics include point-to-point signal transmission through a wireless channel, cellular capacity, multi-user transmissions, and mobility management.

    Credit Hours: 3
    Coordinator: Robert Akl
    Prerequisites:

    CSCE 2610, MATH 2730

    Textbook:

    Wireless Communication Networks & Systems; Beard, Pearson. ISBN 9780133594171

    Course Outcomes:
    1. Calculate path loss, bit error rate and channel capacity in various wireless channel conditions.
    2. Model various analog and digital modulation techniques mathematically as well as demonstrate their applications.
    3. Describe advanced multiplexing techniques such as spread spectrum and OFDMA including their advantages, disadvantages and applications.
    4. Design channel coding schemes for error control.
    5. Describe the architecture and physical and MAC layers of Wireless LANs, Wireless PANs and cellular networks including 4G and LTE.
  • 4520 - WIRELESS NETWORKS AND PROTOCOLS

    Architecture and elements of a wireless network. Use and process of mobility management. Signaling schemes used in wireless networks, network signaling, protocols and standards (GSM, IS-95, WAP, MobileIP, GPRS, UMTSand CDMA2000m, 4G/LTE). Analyze the operation and performance of wireless protocols. Interworking of wireless and wireline networks.

    Credit Hours: 3
    Coordinator: Ram Dantu
    Prerequisites:

    CSCE 3600

    Textbook:

    No textbook required

    Course Outcomes:
    1. Basic operation of a cellular network.
    2. Understanding basic operation of different network elements of a cellular network.
    3. Basic understanding of soft and hard handoff.
    4. Basic understanding of function of interfaces between BTS, BSC, MSC and PSTN.
    5. Understanding basic issues related to supporting QoS in voice and data services in cellular networks.
    6. Understanding the basic operation of 4G networks and interworking of wireless and wireline networks.
  • 4530 - COMPUTER NETWORK DESIGN

    Fundamental concepts, requirements and design tradeoffs, particularly as related to scheduling, congestion control, routing, and traffic management. Wireless access, mobility (including WLAN), VoIP and applications. Firewalls, NATs, VPN, high availability and optical rings.

    Credit Hours: 3
    Coordinator: Ram Dantu
    Prerequisites:

    CSCE 3530

  • 4535 - INTRODUCTION TO NETWORK ADMINISTRATION

    Students explore topics in network administration in theoretical and practical way, study different software platforms, control, shared resources, administration, security, anti-virus procedures and methodologies.

    Credit Hours: 3
    Coordinator: Pradhumna Shreatha
    Prerequisites:

    CSCE 3530

    Textbook:

    Unix + Linux System Admin Handbook 5th Edition; Nemeth, Pearson. ISBN 9780133594140

    Course Outcomes:
    1. Demonstrate understanding of IP addressing, sub-netting and networks configuration but configuring and setting up a network across a heterogeneous group of computers.
    2. Describe network planning and design of local-area-network (LAN) and wide-area-network (WAN) networks.
    3. Describe quality of service (QoS) parameters and how they relate to network availability.
    4. Configure, operate and troubleshoot routing protocols such as Open-Shortest-Path-First (OSPF) and Border-Gate-Protocol (BGP).
    5. Install and configure simple network security tools such as Intrusion-Prevention-System (IPS), Intrusion-Detection-System (IDS), firewalls and virus scanners.
    6. Evaluate network performance both by simulation and by designing, gathering, and analyzing experiments.
  • 4540 - TCP/IP PROTOCOLS

    Investigation of the TCP/IP protocol suite, components, and interaction with operating systems. Topics include special protocols, routing protocols, MobileIP, as well as some applications: FTP, TELNET, SMTP, DHCP, HTTP, DNS, etc.

    Credit Hours: 3
    Coordinator: Ram Dantu
    Prerequisites:

    CSCE 3530

  • 4555 - COMPUTER FORENSICS

    Security goals, threats and vulnerabilities, Cryptography, program security and operating system security issues. Basic network security. Planning, policies and risk analysis.

    Credit Hours: 3
    Coordinator: Mark Thompson
    Prerequisites:

    CSCE 3600

    Course Outcomes:

    1. Demonstrate general knowledge and comprehension of computer forensics and computer investigations.

    2. Describe and explain the Windows, Macintosh, and Unix/Linux operating systems data storage and methodologies.

    3. Describe and explain the methods used for digital evidence control, processing crime and incident scenes, and data acquisition for computer forensic analysis.

    4. Demonstrate knowledge and comprehension of basic tools and techniques used in the field of computer forensics sciences.

    5. Describe and explain writing investigation reports and being an expert witness.

  • 4560 - SECURE ELECTRONIC COMMERCE

    Electronic commerce technology, models and issues, with emphasis on security issues. Supporting technology such as cryptography, digital signatures, certifiticates and public key infrastructure (PKI), Security-conscious programming for web-based applications. Exposure to interaction between technical issues and business, legal and ethical issues.

    Credit Hours: 3
    Coordinator: Mark Thompson
    Prerequisites:

    CSCE 2100 and CSCE 2110

    Textbook:

    Lecture Notes, Slides and Online Resources. http://www.cse.unt.edu/~garlick/

    Course Outcomes:
    1. Knowledge of and experience with secure web development, with exposure to at least three current technologies (such as XML, Perl, PHP, ASP, JSP, JavaScript, etc.)
    2. Knowledge of how cryptography can be used to support confidentiality and integrity of electronic transmissions and transactions.
    3. Knowledge of electronic transaction and payment systems.
    4. Knowledge of Public Key Infrastructure (PKI) settings and trust models, with specific systems such as X.509 certificates and PGP\\'s decentralized web of trust.
    5. Familiarity with basic network and system security, and the ability to set up a typical electronic commerce setting of networks and hosts.
    6. Familiarity with business, legal, and ethical issues related to electronic commerce, and the interaction of these issues with technical issues.
  • 4565 - Secure Software Systems

    Software-based attacks and the security design principles which foster the design, implementation, and verification/validation of secure software systems and architectures. Studies approaches, mechanisms and tools used to make software systems more secure and cover principles and practices of a secure and high assurance software development process, including architectural approaches to building secure software, security development lifecycle models, and design/verification/validation using languages and tools such as UML. Tools and techniques for code analysis and test as well as evaluation and certification of software are emphasized.

    Credit Hours: 3
    Prerequisites:

    CSCE 3550

  • 4570 - Information Privacy

    Examines popular concepts of privacy and provides an in-depth look into privacy-related technologies, privacy laws, and self-regulatory efforts. In addition to technical aspects, covers other aspects of privacy such as philosophical, historical, cultural, economic, legal and policy perspectives.

    Credit Hours: 3
    Prerequisites:

    CSCE 3550

  • 4575 - Blockchain and Applications

    A foundation in principles, practices, and methodologies of blockchaining, including its architecture and operation. Topics include distributed ledgers; block creation and proof of work; mining and incentivizing techniques; transactions; successful private and public blockchains; and barriers to adoption. Also includes setting up and deploying applications of smart contracts in areas such as IoT, networks, healthcare, finance, supply chain and identity management.

    Credit Hours: 3
    Prerequisites:

    CSCE 3600

  • 4600 - INTRODUCTION TO OPERATING SYSTEMS

    Concepts in operating system analysis and design. General topics of process, resource and file management are presented and analyzed in the context of different system architectures and performance constraints.

    Credit Hours: 3
    Coordinator: Armin R. Mikler
    Prerequisites:

    CSCE 3600

    Textbook:

    Operating System Concepts Essentials, Abraham Silberschatz, Peter Galvin, Greg Gagne, 2010, ISBN 9780470889206

    Course Outcomes:
    1. Use the principles of processes and threads for abstraction of real-world events.
    2. Formulate solutions for mutual exclusion and process synchronization.
    3. Understand the concept of deadlock to develop deadlock free systems of processes.
    4. Understand principles of memory and resource management.
    5. Identify different process scheduling paradigms and utilize them in system development.
    6. Develop fundamental security features to protect systems and data.
  • 4610 - COMPUTER ARCHITECTURE

    Study of performance issues and power requirements related to modern computer systems, including Instruction Level Parallelism, out-of-order instruction scheduling, branch prediction, speculative execution, cache memory, and concurrency.

    Credit Hours: 3
    Coordinator: Krishna Kavi
    Prerequisites:

    CSCE 3610; CSCE 3612

    Textbook:

    Computer Architecture w/CD, 5th edition, Hennessy, Morgan Kaufmann Publishers, ISBN 9780123838728

    Course Outcomes:
    1. Apply metrics to evaluate performance and power requirements of modern computer systems. Represent performance using arithmetic, harmonic and geometric means.
    2. Understand Amdahl’s law as applied to a single core and multicore systems.
    3. Design a pipelined processor to meet design specifications.
    4. Design an out-of-order and speculative processor to improve performance.
    5. Understand cache memory performance issues.
    6. Understand cache memory issues in multicore systems include cache coherency management.
    7. Understand hardware support for concurrency including multithreading, locks and barriers.
  • 4620 - REAL-TIME OPERATING SYSTEMS

    Basic real-time operating systems concepts and services, including interrupt processing, process and thread models, real-time software architectures and development environments. Detailed study of the design and implementation of real-time applications using real-time operating systems. Focus on commercial real-time operating systems/development environments, including vxWorks, RTOS and pOSEK/pOSEKSystem.

    Credit Hours: 3
    Coordinator: Song Fu
    Prerequisites:

    CSCE 3612

    Textbook:

    Real Time Concepts for Embedded Systems, 2nd Edition, Li, Elsev, ISBN 9781578201242

    Course Outcomes:
    1. Understand the differences between general purpose and real-time operating systems.
    2. Understand multithreading in real-time environment.
    3. Understand task and thread scheduling in real-time operating systems.
    4. Understand memory management in real-time systems.
    5. Be able to program using system proved timers, signals, mutual exclusion, semaphores, message queues and exception handlers.
    6. Be able to program real-time applications to run in a realistic operating environment.
  • 4650 - INTRODUCTION TO COMPILATION TECHNIQUES

    Topics include parsing, syntax-directed translation, run-time storage management, error recovery, code generation and optimization. A significant project is required.

    Credit Hours: 3
    Coordinator: Barrett Bryant
    Prerequisites:

    CSCE 2100, CSCE 2110 and CSCE 3600

    Textbook:

    Compilers, Principles, Techniques and Tools, 2nd Edition, Aho, Addison Wesley, ISBN 9780321486813

    Course Outcomes:
    1. Given a context-free grammar, build SLR(1), LR(1) and LALR(1) parse tables for that grammar.
    2. Given a context-free grammar, an LR parse table and an input string, show the steps of the parse.
    3. Given a language specification for an imperative language, build a parser for the language using tools such as lex and yacc.
    4. Integrate semantic actions into the above parser to construct a symbol table, perform type checking, and generate intermediate code.
    5. Given a control-flow graph with intermediate 3-address code within each basic block, show the improved control-flow graph after hand-optimizing for common subexpression elimination, copy propagation, and dead code removal.
  • 4655 - PRINCIPLES OF COMPILER OPTIMIZATION

    Design and implementation of modern methods of analysis and optimization within compilers for a variety of target architectures. Topics include intermediate representations, advanced code generation, control- and data-flow analysis, advanced compiler optimization, dynamic compilation, global register allocation and instruction scheduling.

    Credit Hours: 3
    Prerequisites:

    CSCE 3600

    Course Outcomes:
    1. Students will develop a good understanding of basic compiler analysis and optimization techniques.
    2. Students will sharpen their skills in comparing and evaluating different compiler techniques with the intent of choosing among several techniques for inclusion into a production compiler.
    3. Students will develop their skill in adding to existing software.
    4. Students will be able to design, implement and write about experimental compiler research in a professional manner.
    5. Students will develop skills in professional oral presentation of their work.
  • 4730 - VLSI DESIGN

    Introduction to VLSI design using CAD tools, CMOS logic, switch level modeling, circuit characterization, logic design in CMOS, systems design methods, test subsystem design, design examples, student design project.

    Credit Hours: 3
    Coordinator: Saraju Mohanty
    Prerequisites:

    CSCE 2100, ENGR 2720 and ENGR 2730

    Textbook:

    Required: CMOS VLSI Design: A Circuits and Systems Perspective, Neil Weste, David Harris, 2010, ISBN 9780321547743, Recommended:Nanoelectronic Mixed-Signal System Design, Saraju Mohanty, 2015, ISBN 9780071825719

    Course Outcomes:
    1. Understand the concept of MOS transistor.
    2. Understand the operational characteristics of MOS transistor.
    3. Understand the Power dissipation mechanisms in MOS transistor.
    4. Understand the transistor-level realization of Boolean functions.
    5. Able to use CAD tools to design and simulate digital circuits.
  • 4750 - VLSI TESTING

    Advanced experience with CAD tools for VLSI design, IC testing. Design Project from CSCE 4730 to be fabricated and tested. Implementation and verification of test programs, IC testing and troubleshooting, legal, economic, and ethical design issues. Oral presentations and written reports are required.

    Credit Hours: 3
    Coordinator: Saraju Mohanty
    Prerequisites:

    CSCE 4730

  • 4810 - BIOCOMPUTING

    Introduction to computation problems inspired by the life sciences and overview of available tools. Methods to compute sequence alignments, regulatory motifs, phylogenetic trees and restriction maps. (Same as BIOL 4810 and MATH 4810; taught with CSCE 5810.)

    Credit Hours: 3
    Coordinator: Armin R. Mikler
    Prerequisites:

    CSCE 3850 or junior or senior standing

    Textbook:

    Required: Intro to Bioinformatics Algorithms, Jones, MIT, ISBN 9780262101066; Recommended: Beginning Perl for Bioinformatics, Tisdall, O'Reilly, ISBN 9780596000806

    Course Outcomes:
    1. Learn the principles of Molecular Biology and Genetics
    2. Understand the concepts of DNA structure and encoding
    3. Understand the Central Dogma of Biology (DNA->RNA->Protein)
    4. Understand the importance of Bioethics
    5. Learn basic Perl programming
    6. Understand computational complexity of Bioinformatics problems
    7. Learn fundamental computational tasks/algorithms of Bioinformatics
    8. Learn about NCBI and available Bioinformatics tools
  • 4820 - COMPUTATIONAL EPIDEMIOLOGY

    Application of computation methods to problems in fields of public health. Design and implementation of disease outbreak models. (Same as BIOL 4820; taught with CSCE 5820.)

    Credit Hours: 3
    Coordinator: Armin R. Mikler
    Prerequisites:

    CSCE 3850 or junior/senior standing

    Textbook:

    Required: An Introduction To Epidemiology, Ray Merrill, 2013, ISBN 9781449665487, Recommended: Infectious Diseases of Humans: Dynamics and Control, Roy Anderson, Robert May, 1992, ISBN 9780198540403

    Course Outcomes:
    1. Understand the interdisciplinary nature of Computational Epidemiology.
    2. Understand the principles of Epidemiology and its challenges to identify the cause of outbreaks.
    3. Understand the fundamentals of mathematical outbreak models and their interpretation.
    4. Understand the basics of computational modeling and simulation.
    5. Learn the fundamental study designs in epidemiology.
    6. Understand the difficulties of communicating among researchers in an interdisciplinary setting.
    7. Learn to present Public Health related information and study results.
  • 4890 - DIRECTED STUDY

    Study by individuals or small groups if faculty supervisor agrees. A plan of study approved by the faculty supervisor along with the study will be graded by the faculty supervisor must be approved by the Coordinator for Undergraduate Studies.

    Prerequisites:

    Junior or Senior level standing in Computer Science, Computer Engineering, or Information Technology, and consent of instructor

Pages