Department of Computer Science and Information Technology
Dr. Shuju Bai, Interim Department Chair
Mission and Goals
The Department of Computer Science & Information Technology offers the following degree and minor programs:
- Bachelor of Science in Computer Science (BSCS)
- Minor Program in Computer Science
- Associate of Applied Science in Information Technology (AASIT)
- Bachelor of Information Technology (BIT)
- Minor Program in Information Technology
- Master of Science in Cyber Technology
The Computer Science program prepares students for careers that require computational thinking and problem-solving skills, becoming ethical and contributing members of their communities.
Upon completion of the BSCS program, graduates will be able to:
- Solve complex and significant problems with professional skill by formulating efficient and effective algorithmic solutions to a wide variety of sophisticated problems normally encountered in computing and in academe
- Express algorithms clearly and correctly in a variety of programming languages
- Apply core concepts in computer science
- Apply professional and ethical standards to computing related disciplines
- Collaborate in teams to accomplish common goals
- Demonstrate an ability to acquire, interpret, and communicate results orally or in writing.
The Information Technology program prepares students to compete in the rapidly expanding job market, to contribute to the intellectual body of knowledge, and to engage with their communities.
Upon completion of the BIT program, graduates will be able to:
- Use and apply current IT discipline-related concepts and practices
- Identify and analyze problems or opportunities in the IT realm and define requirements for addressing them when an IT solution is appropriate
- Design and develop effective IT-based solutions and integrate them into user environment
- Create and implement effective project plans
- Identify and investigate current and emerging technologies and assess their applicability to address individual and organizational needs
- Analyze the impact of technology on individuals, organizations, and society
- Collaborate in teams to accomplish common goals
- Communicate effectively and efficiently
- Recognize the qualities necessary to succeed in a professional environment
Student Organizations
Student organizations supporting the educational and professional development of students are the Student Chapter of the Association for Computing Machinery (ACM), Robotics Club, and the Organization for Women Interested in Science, Technology, Engineering, and Mathematics (Wi2STEM).
For more information on these student organizations, contact the College of Information and Mathematical Sciences at 678-466-4400.
The Department of Computer Science and Information Technology offers the following undergraduate options. Graduate degree programs can be found under the School of Graduate Studies.
Associate Programs
Baccalaureate Programs
Combined Degree Programs
- Bachelor of Information Technology (BIT) and Master of Science in Cyber Technology (MSCT)
- Bachelor of Information Technology (BIT) and Master of Science in Data Science (MSDS)
- Bachelor of Science (BS) in Computer Science and Master of Science in Cyber Technology (MSCT)
- Bachelor of Science in Computer Science (BSCS) and Master of Science in Data Science (MSDS)
Minor Programs
Computer Engineering (CPEG)
This course introduces the principles, algorithms, and applications of machine learning. Students are exposed to machine learning through a blend of mathematical and statistical descriptions, hands-on programming exercises, and real-world engineering problems. Topics include, but are not limited to optimization, linear statistical models, kernel regression, neural networks, support vector machines, computer vision, and NLP.
Prerequisites: CSCI 3305
This course is an introduction to the theory and methodology of natural language understanding and generation. Topics covered are large language models, tokenization, stop word removal, stemming, lemmatization, parts of speech tagging, syntax, semantics, discourse, and their applications in various natural language processing (NLP) tasks. Students utilize specialized libraries to develop applications for these NLP tasks.
Prerequisites: CSCI 3305 (may be taken concurrently)
Computer Science (CSCI)
This course covers computer science topics including computer operating systems and architecture, algorithms, networks, ethics, cyber security, and databases. The course will be taught by applying a variety of tools and standards to illustrate these concepts.
The course introduces students to the concepts and practices of computational thinking, coding, and software development process using contemporary computer programming language. Credit hours from this course cannot be applied toward a degree in computer science or information technology.
The course includes an overview of computers and programming: problem-solving and algorithm development; simple data types; arithmetic and logical operators; selection structures; repetition structures; text files; arrays (one-and two-dimensional); procedural abstraction and software design; modular programming (including subprograms or the equivalent). A high level programming language will be used.
The course includes an overview of abstract data types (ADTs); arrays (multi-dimensional) and records; sets and strings; binary files; searching and sorting; introductory algorithm analysis (including Big-O); recursion; pointers and linked lists; software engineering concepts; dynamic data structures (stacks, queues, trees). A high level programming language will be used.
This course is designed to expose students to computer science concepts within the context of engineering disciplines, and includes the general principles of programmatic and data abstraction testing, debugging and problem solving. The course addresses variables and data types, logical expressions, arrays, strings, file I/O, conditional statements, repetition and recursion, functions and procedures, scoping issues plotting in two and three dimensions, manipulating media, data structures and sorting searching algorithms. A high-level language will be used.
This course offers exploration of digital security, aiming to teach students with the essential knowledge and skills to navigate the intricate digital world. It examines cybersecurity's basic principles, theories, threats and protective measures with practical real-world applications. Students will apply cybersecurity knowledge and critical thinking in safeguarding personal data, financial assets, and vital infrastructure.
This course covers basic terminology, genre, playability, and social issues related to computer games.
Prerequisites: CSCI 1302
This course covers terminology, genre, playability, and social issues related to computer games; compiling and executing sample programs written utilizing graphics Application Programming Interface (API) such as OpenGL and DirectX.
Prerequisites: CSCI 2101
This course is a systematic study of the main data structures of computer science: arrays, stacks, queues, linked lists, trees, graphs, hash tables. Implementation and analysis of the algorithms and programming techniques for searching, sorting, inserting into, and deleting from these structures; efficiency considerations.
This course is a study of the organization and architecture of computer systems, beginning with the standard von Neumann model to more recent architectural concepts. Topics include digital logic, data representation, assembly language, multiprocessor systems, and contemporary architectures.
This course focuses on the knowledge and skills students need to succeed in their careers and function competently in the workplace. Students will study theories and practices related to the social, ethical, and professional issues facing computing and computing professionals. Students will apply professional codes of ethics to case studies by investigating current issues. Students will also begin construction of a digital portfolio representing skills acquired and projects completed.
Prerequisites: CSCI 2302
This course covers modern computer game design and programming techniques including real-time event- driven and multimedia programming techniques.
This course introduces students to the organization and architecture of computer systems, beginning with the standard von Neumann model and then moving forward to more recent architectural concepts. Topics include digital logic, data representation, assembly language, multi- processor systems, and contemporary architectures.
Prerequisites: CSCI 1302
This course is a conceptual and hands-on study of operating systems; operating system design and theory including process/processor, memory, file, I/O and networking management; evaluation of system requirements.
This course covers Network systems including transmission media, packet transmission, circuit / packet switching technology, LAN technology and network topology, TCP/IP, internetworking; Network applications and security issues are investigated. An overview of LANs, WANs, data communication, and routing methods will be provided using software simulation tools.
This course covers database modeling drawing distinctions between data modeling, process modeling, and implementation. Topics include Entity- Relationship Modeling, Relational Database Modeling to include Relational Algebra and Normalization and Object Modeling and Object Databases. Implementation topics include SQL, PL/SQL, and database access using Web interfaces.
Prerequisites: CSCI 2302
This course covers analysis of system requirements, software systems design techniques, software processes, software life-cycle models, software economics, configuration management, user interfaces, software testing, and software maintenance. Students gain experience in the team approach to medium-scale system development. Ethical issues related to software design are discussed.
This course covers the concepts of syntax and semantics of grammars and languages. It includes the study and comparison of the organization and major constructs of various programming language paradigms, with in-depth study of several specific languages. Language Implementation and compiler/interpreter-related issues are addressed.
Prerequisites: CSCI 2302
This course is a conceptual and hands-on study of operating systems. Major areas discussed include: operating system design and theory, applications and management issues, microcomputer and multi-user systems, including networks and min/mainframe systems. Also covered: files, I/O, memory and process/processor management, networking, evaluation, tuning and application execution.
Prerequisites: CSCI 3303 and MATH 3420 (may be taken concurrently)
This course covers software security analysis and quality assurance, emphasizing testing methodologies. Topics include: code analysis, static and dynamic analysis techniques, sandboxing, test strategies, test planning, functionality testing, stability testing, and debugging techniques.
The course covers advanced topics in databases such as data mining, data warehousing, parallel and distributed databases, Web and Cloud databases, NoSQL databases, and graph databases.
Prerequisites: CSCI 3310
The course introduces students to a broad range of concepts, techniques, and tools for analyzing and visualizing data at scale, emphasizing on combining computation and visualization to perform effective analysis. Both theory and applications will be covered including several practical case studies.
Prerequisites: CSCI 3310
This course covers advanced techniques in game programming, including graphics game engines, motion generation, and issues in multi-user interaction.
This course is an introduction to computer graphics and graphics systems, including: graphics hardware, 2D rendering, 2D and 3D transformations, animation, illumination, and modeling. Additional topics include user interface and interactive inputs.
This course covers UNIX (Linux) and C/C++ standards, file I/O, file access and attributes, directories, the standard I/O library, systems administration files, the process environment, process control, process relationships, signals, terminal I/O, daemon processes, interprocess communication, and pseudo terminals. Also included are relevant topics in Unix (Linux) system administration
Prerequisites: CSCI 3305
This course covers the design and implementation of protocols and the vulnerabilities and risk associated with these implementations. Other topics include Cryptographic techniques and algorithms. Design and implementation of network routing protocols and security architecture will be done using software simulation tools.
Prerequisites: CSCI 3306
This course is an introduction to artificial intelligence and machine learning. Topics include intelligent system design methodologies, search and problem solving, supervised and reinforced learning.
The course introduces students to contemporary parallel and distributed computing platforms, such as the Cloud, Automata Processors, and GPGPU. The topics include both concepts on computational models and programming skills required for harvesting computational powers.
This course is an advanced in-depth study of indexing, security, query processing, transactions; introduction to data warehousing; parallel and distributed databases.
Prerequisites: CSCI 3310
This course covers the acquisition, development and production of media elements such as graphics, animation, audio, video, virtual space and simulations. Students will integrate content with functional design criteria and organize the major and minor components of a multimedia production project. Cross-listed with ITMM 4404.
Prerequisites: (CSCI 3303 )) )
This course covers design and interfacing of computer input and output systems. Standard (mouse, keyboard, joystick, etc.) and new (head trackers, music controllers, gloves, etc.) input devices. Output mediums will include graphics, music, and 3-D sound. Hands-on laboratories and independent projects will be required.
Prerequisites: CSCI 3320
This course covers the concepts of cluster and grid computing. Topics include communication, application, and management of technologies that make cluster and Grid computing possible.
Prerequisites: CSCI 3305
This course covers computer operating systems, such as UNIX and Linux, systems programming, systems administration, and operating systems hardening.
This course covers software development methods for large-scale software systems, management of software development projects, and software engineering standards. Students are expected to complete a large-scale software project. This course is considered the capstone course. Ethical issues related to software development are discussed.
This course is a study of the main areas of theoretical computer science and their hierarchical interconnections. Basic results relating to formal models of computation are studied, with emphasis on grammars and languages, finite automata, Turning machines, and computational complexity.
Prerequisites: CSCI 3333
This course covers analysis of the complexity of algorithms, including sorting, searching, and graph algorithms; use and implementation of graphs.
Prerequisites: CSCI 3333
This course is designed for students who want to carry out special research and investigations in CS at the senior level. Topic and method of procedure must have approval of the supervising faculty member.
Prerequisites: CSCI 3320
Students will work under supervision with industry to apply knowledge aligned to program outcomes in computer science. A minimum of 200 work hours is required and course deliverables will be aligned with the student experience. The internship project must be approved prior to beginning the internship.
Prerequisites: CSCI 3300
This is an advanced course in database modeling drawing distinctions between data modeling, process modeling and implementation. Topics include Entity-Relationship Modeling, Semantic-Object Modeling, Relational Algebra, Normalization and Relational Database Modeling, Object Databases and Object Modeling. Additional topics include SQL, PL/SQL, procedures functions, packages and triggers.
Prerequisites: CSCI 3503
This is an advanced course in the specification and development of complex data structures. Programming projects address the cross-platform nature required of today's business solutions, with emphasis on the graphical user interface and development of custom controls. Object oriented design and programming will be stressed. Project teams will manage a software development project using a variety of tools and techniques.
Prerequisites: CSCI 3503
This course introduces students to mobile computing and mobile application development. The course presents an overview of various mobile computing applications, technologies, and wireless communication. Additional topics include mobile application frameworks and development environments; mobile security; and mobile user interface, user experience and application development guidelines. Students will be expected to learn at least one mobile application development framework and use it to implement course assignments.
Prerequisites: CSCI 3306
This course is designed to cover current topics of interest in Computer Science. Prerequisite: permission of instructor and department.
This course provides students with an understanding of database technology and its application in managing data resources and business intelligence. Database design and data retrieval will be introduced. Fundamental concepts of business intelligence, such as classification, clustering, association analysis, and anomaly/novelty detection.Database management tools will be used to illustrate these concepts and their applications.
Prerequisites: MATH 1401 and BUSA 3101
The course covers data analytics to ensure that visualizations add to effective interpretation and explanation of underlying linked business data. By using a variety of tools, the course will demonstrate how effective visualization and design can detect trends and patterns connected to events leading to the discovery of otherwise abstruse relationships and interrelationships.
Prerequisites: MATH 1401 and BUSA 3101
Topics of interest in Computer Science not covered in currently listed courses.
Cybersecurity (CYBR)
The course covers a foundation in database management systems (DBMS) and the essential principles of securing and protecting sensitive data. Topics include data modeling, databases design and implementation, SQL (Structured Query Language), data security, security models, and basic database security mechanisms. Students will be equipped with the knowledge and skills to design, implement, and secure database systems.
This course will focus on the hands-on business of writing HTML code, knowledge of basic control structures, language syntax, and file structures. Students will learn to plan and design web sites for target audiences. Students will learn techniques for client interfacing, project development, and web page mock-up. A best practice didactic will focus on hypertext design and navigation, application interface, copyright and ownership issues, ethics, and privacy, licensing, and trademark issues.
This course is an overview of the Linux operating system reinforced with examples and exercises performed on a Linux system. Introductory elements of shell programming and system administration will be covered.
This course introduces general concepts and techniques in computer and cyber forensics, including understanding of computer structures, operating systems, file systems, computer network communication, and user access control. General concepts incident-handling process and methods for extraction and preservation of legal evidence, uncovering illicit activities, and recovering are also introduced.
Prerequisites: CSCI 1701
This course exposes students to techniques used in database design and web application development for interactive content. Interactive web-based database application design and development are covered including control mechanisms, models, and views design and development. Server-side scripting and advanced web languages are introduced to facilitate students building dynamic web pages with graphics, sound, video, and animation while accessing customized databases via the Internet. Student teams build an integrated database application using high-level tools.
Introduction to terminology and applications of communications and networking as essential elements of information technology and information systems that includes OSI and TCP/IP models. Students gain familiarity with concepts of data communication infrastructure, industry trends, hardware, software, media, transmission equipment, wireless and satellite communication, and network security concepts. Includes an emphasis on LAN architecture, standards, protocols, and implementation.
This course introduces the fundamental concepts of ethical hacking and how to perform penetration tests of computer networks. Students will use tools to discover weaknesses in computer networks and how to improve the defenses of those networks against malicious attacks. Topics include network and computer attacks, footprinting and social engineering, port scanning, reconnaissance, and various types of attacks and counter measures. Students will also learn the legal considerations for working as an ethical hacker.
Prerequisites: CSCI 1701
This course will provide students with a good understanding of identifying, assessing, analyzing, measuring, and responding to information risk. Students will be able to make risk mitigation and acceptance decisions given its resource constraints. Students will be able to use risk management tools, regulations, and methodologies for metrics to monitor risk management activities.
Prerequisites: CSCI 1701
This course will provide students with software development lifecycles while applying approaches to secure software systems design and development that tightly integrates security and systems design and software development together. It addresses the software development process from the perspective of a security practitioner to minimize software vulnerabilities and counter cyber threats.
Prerequisites: CSCI 1300
The course explores securing IoT devices, cloud infrastructures, and mobile applications. The students will gain a deep understanding of the unique threats associated with these technologies and develop practical skills to design, implement, and manage robust security measures.
Prerequisites: CYBR 2502
This course delves into the critical intersections of cybersecurity, legal frameworks, ethical considerations, and policy development. In an era where technology and information are integral to every aspect of our lives, understanding the legal and ethical dimensions of cybersecurity is paramount. Students will gain insights into the dynamic landscape of cybersecurity laws and policies, examining their evolution, status, and potential future developments.
Prerequisites: CSCI 1701
This course covers security testing and quality assurance, emphasizing testing methodologies. Topics include code analysis, static and dynamic analysis techniques, sandboxing, test strategies, test planning, functionality testing, stability testing, and debugging techniques. Other topics include web application tests and identifying potential vulnerabilities, misconfigurations, and weaknesses in software, computers, or networks.
Prerequisites: CYBR 2530
This course introduces the tools and techniques used in modern cryptography. Topics include secret and public key ciphers, one-way hashing algorithms, authentication and identification, digital signatures, key establishment and management, steganography, secret sharing and data recovery, public key infrastructures, and efficient implementation. Privacy and security at the upper layers are also discussed.
Prerequisites: CYBR 2502
This course covers concepts and techniques in the field of computer and cyber forensics, which includes investigating, acquiring, preserving and analyzing digitally stored information. Students will practice performing digital forensics investigations using industry-standard forensic tools, techniques and procedures in the digital forensic process. Students will analyze various effective plans for crisis management and incident-handling process, including methods and standards for extraction and preservation of legal evidence, uncovering illicit activities, recovering information left on digital storages and extracting files from intentionally damaged media.
Prerequisites: CYBR 2010
This course introduces the principles of disaster recovery planning and examines countermeasures that may be used to prevent system failure for an organization. It explores the plans and preparations needed to recover from disasters affecting enterprise information systems and critical infrastructures with the goal of maintaining business continuity. Emphasis is given to the technological aspect of the planning for recovery and business continuity planning. Topics include disaster recovery planning, risk control policies and countermeasures, disaster recovery tools and services, and virtualization principles.
Prerequisites: CYBR 2530
An intermediate course in concepts and applications of computer networks including network topologies, network devices, standards, and protocols. The course will emphasize WAN concepts with details of IP addressing, routing, subnet/supernet concepts, TCP/IP protocol suite, data security including security models, and access control.
Prerequisites: CYBR 2502
This course will provide students with a good understanding of data security laws and standards, risk management of data security, data security models, data security and auditing, data encryption. We will also cover various artificial intelligence analysis and risk assessment techniques applied to data security. The AI-based solutions will be discussed to support data threats and risk assessments and detection.
Prerequisites: CYBR 1201
This course covers computer operating systems, such as UNIX and Linux, systems programming, systems administration, and operating systems hardening.
Prerequisites: CYBR 3630
Topics include hardware and software diagnostic tools and utilities, LANs MANs, WANs, and the Internet, OSI protocol stack, flow control, switching, data compression, application program-network interface, and security issues. Also included are recent advances in TCP/IP protocols including IPv6.
Prerequisites: CYBR 2502
The course is a culminating experience designed to integrate and apply the knowledge, skills, and methodologies acquired throughout the cybersecurity program. The students will gain practical experiences by engaging in comprehensive, real-world cybersecurity projects, tackling complex challenges and applying their proficiency in various cybersecurity domains.
Electrical Engineering (ELEG)
This is an undergraduate course that teaches methods for analyzing discrete-time signals and systems. Important topics include Nyquist sampling theory, quantization, signal classification, solving difference equations, system impulse response and frequency response, the Discrete-Time Fourier Transform, Fast Fourier Transform, and the Z-Transform.
Prerequisites: ELEG 2301
This course introduces electronic devices as components of electrical circuits that are responsible for regulating flow of current for information processing and system control. Topics include semiconductors, diodes and applications, light-emitting diodes, bipolar junction transistors, FETs, basic op-amp circuits, active filters and oscillators, voltage regulators. Students learn how to apply basic electronic theory to analytical problem solving, experimentation, and circuit design relevant to the usage of the various electronic devices.
Prerequisites: ELEG 2301
This course is an introduction to microelectronics. Topics covered are the differences between electronics and microelectronics, basic physics of semiconductors, physics of bipolar transistor and amplifiers, diode models and circuits, MOS capacitors, MOS field effect transistors, digital CMOS circuits and CMOS amplifiers, cascode stages, differential amplifiers, frequency response, feedback, oscillators, digital logic and MOS logic devices, complimentary MOS (or CMOS) logic gates, fundamental trade-offs in high speed analog and digital circuit design.
Prerequisites: ELEG 2301
This course introduces the fundamental concepts and techniques of modern digital processing as well as the algorithms and applications. Topics covered include an overview of signals, systems, and signal processing, sampling and reconstruction of signals, and convolution.
Prerequisites: ELEG 3301 and MATH 2140
This is an introductory control systems course providing an overview of feedback control systems, Laplace Transform, Root Locus Design, and Bode plotting Techniques with examples and applications. Students learn the process of analyzing and designing feedback control systems starting from a physical model of a system which will focus on everyday applications.
Prerequisites: ELEG 3010
This course introduces the basic concepts of electric power systems. Single-phase and 3-phase networks, electric power generation, transformers, transmission lines, and power flow analysis, are covered. Mathematical modeling of various power systems is covered.
Prerequisites: ELEG 3301
This course introduces students to the concepts and design of renewable and efficient electric power systems. The course presents the various sources of renewable energy including wind, solar, and biomass as potential sources of energy. Discussions of economics, environment, politics and social policy are integral components of the course.
Prerequisites: ELEG 3301
This course introduces the basic concepts of electric power systems. Single-phase and 3-phase networks, electric power generation, transformers, transmission lines, and power flow analysis, are covered. Mathematical modeling of various power systems is covered.
Prerequisites: ELEG 3301
This course is an introduction to rechargeable battery technology. Topics covered are battery terminology, thermodynamics of batteries, electrode of Lithium-ion cell and its working. Other topics include electrochemical modeling of batteries, aging mechanisms, thermal behavior and thermal management systems, battery safety, battery system design, integrated battery-based systems, supercapacitors, and electrical vehicle (EV) batteries. Advanced and future technologies for next generation batteries will be introduced. The standards and regulatory requirements are also discussed.
Prerequisites: ELEG 3301
Engineering (ENGR)
This course introduces some of the basics of electrical circuits and electronics. Topics include series circuits and parallel circuits, capacitors and inductors, RC and RL circuits, and transformers. It explores devices like diodes and different types of transistors such as MOS transistors, CMOS amplifiers. Field effect transistors such as MOSFET and FET amplifiers and switches are also studied along with the operational amplifier (op-amp).
Prerequisites: CSCI 1301
This course is a theoretical and hands-on study of the basic principles of digital logic circuit design. Topics included are data representation, Boolean algebra, simplification of Boolean functions, and logic gates. Other topics include design and analysis of combinational logic circuits such as multiplexers, decoders, shifters, adders, and programmable logic devices. Sequential components including latches and flip-flops, counters, registers, and memories are also studied. The design of data path and control unit of a small computer using VHDL will also be introduced.
Prerequisites: CSCI 1302
This course will introduce the basics of designing, interfacing, configuring, and programming embedded systems. The focus of the course is embedded system design, programming, and technologies used in embedded system design and construction. A series of labs will be designed to practice and implement the techniques learned in class.
FinTech (FTA)
The financial services industries are changing rapidly with the emergence of financial technology (FinTech). The objective of the course is to provide students with an overview of FinTech and introductions to its applications in financial services, such as commercial and investment banking, digital investing, financial advising, and insurance. Students are expected to develop a broad understanding of the recent FinTech development and its impact on different parts of the financial world. Students will also have hands-on problem-solving experiences that can be useful in FinTech applications and innovation. Topics may include but are not limited to: blockchain and cryptocurrencies, smart contracting, payments, digital banking, P2P lending, crowdfunding, robo-advising, and InsurTech.
This course examines the information and communications tools, technologies, and standards integral to consumer, merchant, and enterprise services in the payments and financial service sectors. Explores technology’s role in reshaping FinTech businesses. Technologies span messaging, communication networks and gateways, core processing, mobile and online software, and application program interfaces (APIs). Includes the challenges, standards, and techniques associated with securing systems and data.
The FinTech revolution is creating significant disruption to the traditional processes of managing and regulating financial institutions, especially banks. Understanding, assessing and forecasting FinTech’s impact on banking is particularly important because proper management and oversight of financial institutions is essential to the efficient operation of the national, as well as global, economy. In this course, students will learn about the principles and practices of commercial bank management, bank regulation, and the tradeoffs between risk and return. Challenges presented by the FinTech evolution, including traditional and emergent competitors as well as demographic, social, and technology forces driving change in the industry, will be integrated throughout the entire course.
This course provides the foundation for financial data analytics used in business and FinTech applications. The objective of this course is for students to gain experience in analyzing financial data using modern machine learning techniques, statistical methods, and prediction models. Students will develop computational skills to perform data analysis using a modern statistical programming environment and apply these skills to address a range of problems encountered by business firms, including those in the FinTech industry. The topics discussed include an introduction to R language, visualization of financial data, cluster analysis, simple and multiple linear regression, classification models, high dimension data analysis using Lasso, tree regression, and model assessment and selection using cross validation. Students will have hands-on experience in the development of data analytics applications to analyze real world financial problems.
The purpose of this course is to introduce the student to the rapidly evolving and critical international arenas of Privacy, Information Security, and Critical Infrastructure for FinTech. This course is designed to develop knowledge and skills for security of information and information systems within FinTech organizations. It focuses on concepts and methods associated with security across several systems platforms, including internal and Internet-facing systems. The course utilizes a world view to examine critical infrastructure concepts as well as techniques for assessing risk associated with accidental and intentional breaches of security in a FinTech network. It introduces the associated issues of ethical uses of information and of privacy considerations.
Information Technology Database Administration (ITDB)
An advanced course in database modeling drawing distinctions between data modeling, process modeling and implementation. Topics include Structured Query Language (SQL), Entity- Relationship modeling, rational algebra, normalization and relational database modeling, integrity constraints, and database security. Student teams design a database to integrate concepts learned.
An advanced course in update processing and database Topics include serializability, locking, levels of isolation, transaction recovery, checkpoints and media recovery, system catalogs, views, procedural constraints and security. Additional topics include object databases, SQL, procedures functions, and triggers. Student teams implement a database to integrate concepts learned.
Prerequisites: ITDB 4201
Restrictions: *Database Administration*, *General Information Tech*, *Information Design Product*, *Network Plan, Design Mgmt*, *Software Development*, Information Technology - BIT
An advanced course in database architecture and database administration with emphasis on concepts and applications of database processing, multi-tier and client-server architectures, distributed and parallel database systems, and database maintenance.
Information Technology Foundation (ITFN)
This course introduces Information Technology (IT), covering the fundamental components of IT, evolution, and societal impact. Students explore hardware, software, and essential aspects of networks, security and web design. The programming module emphasizes structured languages, and the spreadsheets and databases section impart skills in data analysis, storage, and manipulation. The principles of designing information systems is also covered.
Prerequisites: (MATH 0099 or MATH 0988 or MATH 0989 or COMM with a score of 40 or CPTE with a score of 055 or (CPTC with a score of 030 and CPTE with a score of 050) or CPTC with a score of 030 or S02 with a score of 420 or A02 with a score of 17 or MATH 1101 or MATH 1111 or MATH 1112 or MATH 1112A or MATH 1113 or MATH 1241 or MATH 1501)
This foundational course presents terminology, basic concepts, and applications of database processing including file organization and data structures. The course emphasizes database design using various modeling techniques; database implementation using the relational model, normalization, and SQL. Students will design, create and process a database to demonstrate competency in the course content.
This course will focuses on the hands-on business of writing HTML code, knowledge of basic control structures, language syntax, and file structures. Students will learn to plan and design web sites for target audiences. Students will learn techniques for client interfacing, project development, and web page mock-up. A best practices didactic will focus on hypertext design and navigation, application interface, copyright and ownership issues, ethics, and privacy, licensing and trademark issues.
Introduction to terminology and applications of communications and networking as essential elements of information technology and information systems that includes OSI and TCP/IP models. Students gain familiarity with concepts of data communication infrastructure, industry trends, hardware, software, media, transmission equipment, wireless and satellite communication, and network security concepts. Includes an emphasis on LAN architecture, standards, protocols and implementation.
Laboratory accompanying ITFN 1502.
This course exposes students to techniques used in database design and web application development for interactive content. Interactive web-based database application design and development are covered including control mechanisms, models, and views design and development. Server-side scripting and advanced web languages are introduced to facilitate students building dynamic web pages with graphics, sound, video, and animation while accessing customized databases via the Internet. Student teams build an integrated database application using high-level tools.
An intermediate course in concepts and applications of computer networks including network topologies, network devices, standards and protocols. The course will emphasize WAN concepts with details of IP addressing, routing, subnet/supernet concepts, TCP/IP protocol suite, data security including security models, and access control.
Prerequisites: ITFN 1502 or ITFN 1501
Laboratory accompanying ITFN 1512.
This course focuses on the knowledge and skills students need to succeed in their careers and function competently in the workplace. Students will study theories and practices related to the social, ethical, and professional issues facing computing and computing professionals. Students will apply professional codes of ethics to case studies by investigating current issues. Students will also begin construction of a digital portfolio representing skills acquired and projects completed.
Prerequisites: ITFN 2214
Human Computer Interaction addresses fundamentals, techniques and methodologies for development of software systems that minimize the barrier between human cognitive models and machine physical representations. Topics include interaction styles, interface devices, user documentation, and interface assessment. Technical writing techniques will be emphasized as students create and assess user manuals and systems documentation.
Prerequisites: ITFN 3112 (may be taken concurrently)
This course provides an in-depth study of established and evolving methods of information system design and implementation. As a project based class, it demonstrates by example and experience the process of building systems from needs analysis and definition through specifications and implementation. Traditional life cycle methodologies are contrasted with object oriented analysis and prototyping.
This course will introduce project management tools and techniques that can be applied to projects from various disciplines such as business intelligence, health informatics, bioinformatics, and many other science and humanities disciplines. Students will learn the importance and function of project management and apply the project process of initiating, planning, executing, controlling and closing the project. They will apply knowledge and skills to manage project scope, project time and work flow, project cost and budgets, project resources, project quality, project human resource requirements, project communications and project risk management.
Prerequisites: ITFN 2214
A high-level class in testing and quality assurance emphasizing the planned development of software and the nature of test development and implementation. Topics include: test strategies, test planning, functionally testing, stability testing and debugging techniques.
This course covers software security analysis and quality assurance, emphasizing testing methodologies. Topics include: code analysis, static and dynamic analysis techniques, sandboxing, test strategies, test planning, functionality testing, stability testing, and debugging techniques.
A conceptual and hands-on study of operating systems. Major areas discussed include operating system design and theory, applications and management issues, microcomputer and multi-user systems, including networks and mini/mainframe systems. Also covered are files, I/O, memory and process/processor management, networking, evaluation, tuning and application execution. Elements of operating system resource security including process, memory, file systems, and device peripherals, will be studied.
All students in the Bachelor of Information Technology program will complete this capstone course in cooperation with industry. Working under direction of business partners, students will develop meaningful projects, which integrate and apply skills aligned to program outcomes in a professional work environment. A minimum of 200 hours per semester is required and course deliverables will be aligned to the project.
This course integrates the study of information and information technology across a milieu of academic disciplines and professional fields. Informatics supports development of knowledge through multidisciplinary application of information systems. Topics include: Information theory; knowledge management; legal and policy issues; responsibilities of informatics professionals; cultural, social, and ethical issues; and application of informatics to a variety of disciplines. Students will implement an informatics system applying current informatics applications and trends.
This course builds upon student fundamental database and web-design and development skills to expand into the server-side technologies, frameworks, and integration with external applications. Students will be exposed to IT problems, where collected data from different disciplines and formats must be modeled, stored, aggregated, retrieved and represented. This is a project oriented-course, and students will have opportunities to work in teams.
This course covers computer operating systems, such as UNIX and Linux, systems programming, systems administration, and operating systems hardening.
A supervised research and/or instructional experience in Information Technology.
A special course designed to explore a specific area in IT. Prerequisite(s): Application to IT Department for permission and formal acceptance after application. Senior standing recommended.
This course will explore special topics in Information Technology.
This course will explore special topics in Information Technology.
This course will explore special topics in Information Technology.
This course will explore special topics in Information Technology.
Information Technology Networking (ITNW)
High level approach to network planning and design. Topics include gathering, interpreting and evaluating customer requirements; defining the scope of work and analyzing resource and technology constraints and system inter- dependencies; analyzing facilities bandwidth requirements and capacity planning; researching product and vendor architecture and equipment specifications and limitations; finally, preparing an overall integration plan for new processes, protocols and equipment.
Topics include hardware and software diagnostic tools and utilities, LAN's MAN's, WAN's and the Internet, OSI protocol stack, flow control, switching, data compression, application program-network interface, and security issues. Also included are basic electronic topics such as electrical measurements, DC and AC circuits, diodes, transistors and OP amps, digital electronics and microprocessors.