Data Science Courses
COS102 Introduction to Computer Programming (3 credits)
This course delves into the fundamentals of computer programming, focusing on programming methodology, procedural abstraction, and an introduction to object-oriented programming using Python. Through a hands-on approach, students will engage in integrated lab sessions during lectures, ensuring practical application of concepts throughout the course. Prerequisite: None
COS105 Object-Oriented Programming (4 credits)
This course introduces students to the fundamental concepts of Object-Oriented Programming (OOP) using two widely used programming languages, C++ and Java. Students will learn the principles of OOP, including encapsulation, inheritance, and polymorphism, and gain hands-on experience in designing and implementing object-oriented solutions to real-world problems. Prerequisite: COS102
COS141 Essentials for Software Development in Data Science (1 credits)
This course is a thorough exploration into the core principles and methodologies integral to the realm of software development. Designed to cater to both beginners and those seeking to enhance their expertise, this course offers a robust framework for thriving in the ever-evolving domain of software engineering. From attaining proficiency in the Linux operating system to grasping fundamental web application principles, participants will engage with pivotal subjects essential for aspiring software developers. Each week promises a deep dive into a distinct facet of understanding, fostering the acquisition of practical proficiencies necessary for crafting, debugging, and refining software solutions. Prerequisite: None
COS151 Introduction to Information Technology (3 credits)
This course provides an overview of Information Technology (IT) and its fundamental concepts. Students will gain a foundational understanding of the key components, principles, and applications of IT in various domains. Topics include computer hardware and software, networks, data management, cybersecurity, and emerging technologies. The course also explores the impact of IT on society, ethics, and career opportunities in the field. Prerequisite: None
COS153 Networking Technologies and Telecommunications (3 credits)
This course provides a comprehensive introduction to networking technologies and telecommunications. Students will gain a deep understanding of the fundamental principles, protocols, and technologies that form the backbone of modern communication systems. The course covers topics ranging from basic networking concepts to advanced telecommunications protocols, ensuring that students develop a strong foundation in this rapidly evolving field. Prerequisite: COS151
COS161 Introduction to Cybersecurity (3 credits)
This course provides an overview of the fundamental concepts and principles of cybersecurity. Students will gain a comprehensive understanding of the threats, vulnerabilities, and countermeasures associated with information security. Topics covered include encryption, network security, risk management, ethical hacking, and security policies. Practical hands-on exercises and case studies will be used to reinforce theoretical knowledge. Prerequisite: None
COS203 Discrete Mathematics and Probability Theory (4 credits)
Discrete Mathematics and Probability provides a comprehensive introduction to the fundamental concepts of discrete mathematics and probability theory. This course covers the topics from logic, set theory, combinatorics, number theory, graph theory, and probability theory. It is designed to provide students with a solid mathematical foundation for their study of the various fields in computer science, including data structures, algorithms, cryptography, and artificial intelligence. Students will develop problem-solving skills and a strong theoretical foundation in discrete mathematics and probability theory, which are essential for a wide range of academic and professional disciplines. Prerequisite: COS102
COS205 Data Structures (4 credits)
This course offers a thorough grounding in fundamental data structures, algorithms, and their practical implementation using Python. Participants will acquire both theoretical knowledge and hands-on expertise in employing advanced data abstraction and algorithmic methodologies to construct software solutions that are efficient, maintainable, and resilient. Prerequisite: COS102
COS211 Probability for Computer Science (4 credits)
In this course, we delve into fundamental principles and techniques of probability theory essential for computer science applications. Topics include sample spaces, probability axioms, conditional probability, and independence. We explore both discrete and continuous random variables, as well as their joint distributions and characteristics. Moreover, we study key concepts like the law of large numbers, the central limit theorem, and Markov chains, which are crucial for understanding probabilistic models in computational contexts. Prerequisite: MAT105, COS102
COS213 Computer Architecture (4 credits)
This course provides an in-depth exploration of computer architecture, focusing on the fundamental principles and design concepts that govern the inner workings of modern computing systems. Students will gain a comprehensive understanding of central processing units (CPUs), memory hierarchies, input/output systems, and the interaction between software and hardware. Topics covered include instruction set architectures, pipelining, caching, memory management, and parallel processing. Prerequisite: COS205
COS224 Web Programming: Front-End (3 credits)
This course aims to furnish students with proficient Front-End programming abilities and methodologies essential for collaborative team environments. Through group-based projects utilizing ReactJS, participants will cultivate the aptitude to deliver functional features. Given the dynamic nature of software development, emphasis is placed on fostering self-learning, research, and the assessment of alternative solutions throughout the duration of the course. Prerequisite: COS102
COS225 Web Programming: Back-End (3 credits)
This course is designed to empower students with proficient Back-End programming capabilities utilizing Golang. Participants will leverage the AWS environment, employing CDK and Docker images to deliver functional features. Recognizing the dynamic nature of software development, the course underscores the importance of self-teaching, research, and the critical evaluation of alternative solutions. Prerequisite: COS102
COS243 Prompt Engineering and Application of Generative AI (3 credits)
This comprehensive course provides a deep dive into the art of prompt engineering and explores the diverse applications of generative AI models. Students will gain a thorough understanding of how to craft effective prompts, leverage advanced techniques, and harness the power of generative AI models for various real-world scenarios. The course covers a wide range of topics, from the foundations of prompt engineering to ethical considerations, tooling, and industry-specific applications. Through hands-on projects and case studies, students will develop the skills necessary to build robust applications using prompt-based AI, including a documentation-powered customer chatbot. Prerequisite: COS102
COS251 Linux Systems and Network Administration (3 credits)
This course provides a comprehensive introduction to Linux systems and network administration. Students will gain hands-on experience with various aspects of Linux operating systems, including installation, configuration, maintenance, and troubleshooting. The course will also cover essential networking concepts, protocols, and services to equip students with the skills needed to manage and maintain Linux-based networks. Prerequisite: COS153
COS253 Routing and Switching Essentials (3 credits)
This course is designed to provide students with a comprehensive understanding of routing and switching essentials in computer networking. Students will delve into the fundamental concepts, protocols, and technologies related to the design, implementation, and management of computer networks. The course emphasizes hands-on practical skills, ensuring that students gain the necessary knowledge to configure and troubleshoot routers and switches effectively. Prerequisite: COS153
COS261 Cybercrime and Governance (3 credits)
This course explores the intersection of cybercrime and governance, examining the challenges and implications for individuals, organizations, and governments. Students will gain an in-depth understanding of the evolving landscape of cyber threats, the role of governance in addressing cybercrime, and the legal, ethical, and technological dimensions of cybersecurity. Prerequisite: COS161
COS263 Network and System Security (3 credits)
This 16-week course aims to provide students with a comprehensive understanding of network and system security principles. The course will cover both theoretical concepts and practical skills necessary to secure modern computer systems and networks. Students will explore topics such as cryptography, network security protocols, intrusion detection, firewall implementation, and ethical hacking. Prerequisite: None
COS305 Algorithm Design & Analysis (4 credits)
This course introduces students to the principles and techniques of algorithm design and analysis. Students will learn to design and analyze algorithms, understand their time and space complexity, and develop problem-solving skills. The course will cover various algorithmic paradigms such as of greedy optimization, divide and conquer, dynamic programming, and linear programming, and the NP-completeness theory. Prerequisite: COS203, COS205
COS321 Database Systems (4 credits)
This course focuses on data management issues in standard relational database systems and on the web. In particular, we will focus on the design and manipulation of data in relational database systems, discussing schema design and refinements, as well as query languages. Then, we will turn towards data management issues in a web context: web-centric data models, XML, Information Retrieval and Web Search. Prerequisite: COS205
COS331 Data Mining (4 credits)
Throughout this course, students will delve into fundamental principles and algorithms essential for extracting actionable insights from raw data. Core topics encompass data preprocessing, exploratory analysis, dimensionality reduction, classification, clustering, association rule mining, and anomaly detection. Engaging with real-world datasets and case studies spanning various domains including business, science, security, and healthcare, students will gain practical experience and insights into the application of these techniques in diverse contexts. Prerequisite: MAT201, COS211, DAS241
COS346 Big Data Engineering (3 credits)
The course provides an in-depth understanding of Big Data Engineering principles, technologies, and tools. Students will learn the fundamentals of handling and processing massive datasets, including storage, retrieval, and analysis techniques. Emphasis will be placed on various frameworks, such as Hadoop, Spark, and associated technologies, to engineer scalable and efficient solutions for real-world data problems. Prerequisite: COS205, COS321
COS351 Wireless Technology (3 credits)
This course provides a comprehensive introduction to the principles, technologies, and applications of wireless communication. Students will explore the evolution of wireless technology, understand fundamental concepts, and examine various wireless communication standards. The course will cover topics such as wireless networks, mobile communication, IoT (Internet of Things), and emerging trends in wireless technology. Prerequisite: COS253
COS353 Introduction to Cloud Computing (3 credits)
This course provides an in-depth introduction to the fundamental concepts and technologies of cloud computing. Students will gain a comprehensive understanding of the cloud computing paradigm, its evolution, key components, and practical applications. The course covers a range of topics, including cloud service models, deployment models, security considerations, and emerging trends in cloud computing. Prerequisite: COS102
COS361 Wireless and Mobile Security (3 credits)
This course provides an in-depth exploration of the security challenges and solutions associated with wireless and mobile technologies. With the increasing prevalence of wireless networks and mobile devices, securing these technologies is crucial to protecting sensitive information and ensuring the privacy of users. Students will gain a comprehensive understanding of the principles, protocols, and best practices for securing wireless and mobile systems. Prerequisite: COS263
COS363 Cyber Forensics (3 credits)
This course provides an in-depth exploration of the principles and practices of Cyber Forensics, with a focus on digital forensics, investigation, and response. Students will gain a comprehensive understanding of the techniques, tools, and methodologies used in the field of cyber forensics to investigate and analyze digital evidence. The course will cover topics such as computer crime laws, forensic analysis of digital media, incident response, and legal and ethical considerations in cyber forensics. Prerequisite: COS261
COS403 Computer Operating Systems (4 credits)
This course introduces students to the fundamental concepts, principles, and components of computer operating systems. Emphasis is placed on understanding the role of operating systems in managing hardware resources and providing a user interface. Topics covered include process management, memory management, file systems, security, and system administration. Prerequisite: COS213
COS425 Software Engineering (4 credits)
This course provides a comprehensive introduction to the principles and practices of software engineering. Students will learn fundamental concepts related to the software development life cycle, including requirements analysis, design, implementation, testing, and maintenance. The course will focus on various methodologies, tools, and best practices employed in the field of software engineering. Prerequisite: COS105, COS213
COS431 Ethics in Computer and Data Science (3 credits)
This course seeks to orient the student and future technologist with the ethical issues arising from the rapidly increasing role of technology in our lives. In designing systems, developing requirements, and deploying systems technologists need to be thoroughly aware of historical precedent regarding the ethical use of information, but also aware of ethical issues arising daily around us. For example how can a user limit the amount of personal information Google or Facebook collects, shares with others, or sells for a fee? How ethical is it to collect personal information from users/customers and who actually own the rights to that personal information? How do technology companies responsibly pursue the advancement of AI technology and its incorporation into daily life? All these issues and more involve computing, ethics, and the internet. Prerequisite: None
COS435 Cryptography (3 credits)
This course is designed to introduce students to the fundamentals of cryptography, exploring various cryptographic techniques and algorithms. Students will gain a deep understanding of the principles behind secure communication, encryption, and decryption. Practical applications and hands-on exercises will be integrated to reinforce theoretical concepts. Prerequisite: COS203
COS461 Ethical Hacking (3 credits)
This course provides an in-depth exploration of ethical hacking principles, tools, and incident handling strategies. Students will develop practical skills in identifying vulnerabilities, exploiting weaknesses, and implementing security measures to protect information systems. The course will also incorporate hands-on experience, allowing students to apply theoretical knowledge in a real-world environment. Prerequisite: COS363
COS482 Independent Study in Computer Science (3 credits)
Independent Study in Computer Science offers students the opportunity to delve deeply into a computer science topic or creative project of their choice. Under this course, students are expected to submit a well- considered proposal outlining their chosen study topic or project, the objectives they aim to achieve, and the schedule to achieve the objectives. Once a proposal is approved, students will be paired with a faculty member whose expertise aligns with their topic. The faculty member will provide guidance through regular one-on-one meetings, helping students navigate through the complexities of their independent study or creative project. This course is an excellent fit for self-motivated students seeking to enhance their understanding and competency in a specific computer science topic. Prerequisite: Permission form
COS486 Independent Study in Computer Networks and Cybersecurity (3 credits)
Independent Study in Computer Networks and Cybersecurity offers students the opportunity to delve deeply into a computer networks and cybersecurity topic or creative project of their choice. Under this course, students are expected to submit a well-considered proposal outlining their chosen study topic or project, the objectives they aim to achieve, and the schedule to achieve the objectives. Once a proposal is approved, students will be paired with a faculty member whose expertise aligns with their topic. The faculty member will provide guidance through regular one-on-one meetings, helping students navigate through the complexities of their independent study or creative project. This course is an excellent fit for self-motivated students seeking to enhance their understanding and competency in a specific computer networks and cybersecurity topic. Prerequisite: Permission form
DAS101 Introduction to Data Science (3 credits)
This course introduces students to the fundamentals of data science, covering essential concepts, tools, and techniques used in analyzing and interpreting data. Through a combination of lectures, practical exercises, and projects, students will gain hands-on experience in data manipulation, visualization, and analysis. Prerequisite: COS102
DAS148 Ethical Topics in Data Science (1 credits)
This seminar-format course aims to explore and discuss critical ethical issues arising from the intersections of data science, artificial intelligence, and technology. Through in-depth discussions, documentaries, and research, students will examine the ethical implications of generative AI, excessive screen time, social media usage, AI advancements, and the potential consequences of an uncontrolled AI race. The course will foster a deeper understanding of the ethical considerations surrounding data science and its impact on society. Prerequisite: None
DAS149 Career Development in Data Science (1 credits)
This course aims to equip students with knowledge and resources for career preparation in data science, including the necessary skills, tools, and knowledge required to succeed in this domain. Over the course of 5–6 seminars, students will familiarize themselves with online platforms such as Kaggle and Coursera for skill development, gain insights into the various job roles within data science, including the relevance of statistics, database knowledge, and coding skills for each position, and learn how to build a strong portfolio for job hunting. The series culminates in a final presentation, where students will showcase their career action plans, incorporating the knowledge and strategies they have acquired during the course. Prerequisite: None
DAS241 Data Visualization (3 credits)
This course introduces students to the principles and techniques of data visualization using the R programming language. Through hands-on projects and theoretical concepts, students will explore various visualization libraries and tools available in R to effectively communicate and analyze data. Prerequisite: COS102, STA101 or COS211
DAS251 Data Inference (3 credits)
This course introduces students to the principles and techniques of data inference. The course covers various methods for drawing conclusions and making predictions from data. Topics include statistical inference, hypothesis testing, regression analysis, and Bayesian inference. Practical applications and real-world examples will be used to illustrate the concepts. Prerequisite: COS102, COS211
DAS341 Business Data Analysis (3 credits)
The objective of the course is to introduce to the students basic quantitative, mathematical and statistical methods for solving financial, marketing and business problems. Using Excel and Tableau, this course provides an introduction to data analytics for business professionals, including those with no prior analytics experience. Students will learn how data analysts describe, predict, and inform business decisions in the specific areas of marketing, human resources, finance, and operations, and develop the basic data literacy and analytics mindset needed to make appropriate business strategy recommendations based on insights from real-world data. Prerequisite: STA101 or COS211
DAS361 Data Science Internship I (3 credits)
Internships are off-campus experiential learning activities designed to provide students with opportunities to connect in-classroom study with practical application in a professional work environment. Academic internship aid students in professional preparation through “trying out” related to their major and career goals while gaining relevant experience and professional connections. While the primary emphasis of the course is on the internship work experience, course assignments are incorporated to prompt reflection on the internship. This reflection is an integral component of experiential learning and students' overall career and professional development. Internships are completed under the guidance of an on-site supervisor and the instructor of this course, who in combination with the student will create a framework for learning and reflection. Prerequisite: Permission form
DAS362 Data Science Internship II (1 credits)
Internships are off-campus experiential learning activities designed to provide students with opportunities to connect in-classroom study with practical application in a professional work environment. Academic internship aid students in professional preparation through “trying out” related to their major and career goals while gaining relevant experience and professional connections. While the primary emphasis of the course is on the internship work experience, course assignments are incorporated to prompt reflection on the internship. This reflection is an integral component of experiential learning and students' overall career and professional development. Internships are completed under the guidance of an on-site supervisor and the instructor of this course, who in combination with the student will create a framework for learning and reflection. Prerequisite: DAS361
DAS435 Machine Learning and Artificial Intelligence (4 credits)
This course provides introduction to concepts and theoretical basis of key machine learning algorithms, as well as hands-on experience on machine learning pipelines and working with real-world problems. Some of the machine learning algorithms covered in the course include k-means, support vector machines, naïve Bayes, decision trees, random forests, gradient boosting, ensemble methods, hierarchical clustering, and latent Dirichlet allocation, etc. An introduction to the deep learning algorithms with appropriate use case scenarios will also be covered in the second half of the course. In addition, the course also covers topics on practical machine learning techniques such as model validation and performance evaluation, data augmentation, hyper-parameter tuning, and feature engineering, etc. Prerequisite: COS331
DAS452 Independent Study for Data Science (2 credits)
Independent Study for Data Science offers students the opportunity to delve deeply into a data science topic or creative project of their choice. Under this course, students are expected to submit a well-considered proposal outlining their chosen study topic or project, the objectives they aim to achieve, and the schedule to achieve the objectives. Once a proposal is approved, students will be paired with a faculty member whose expertise aligns with their topic. The faculty member will provide guidance through regular one-on-one meetings, helping students navigate through the complexities of their independent study or creative project. This course is an excellent fit for self-motivated students seeking to enhance their understanding and competency in a specific data science. Prerequisite: Permission form
DAS491 Senior Project (4 credits)
The project-based course is the culminating product of the B.S. in Data Science program. Through practical experience, students will be required to integrate the knowledge and skills they have learned throughout the Data Science program to a project involving real-world data, constraints, and goals. The project is either provided by an external institution or a faculty member within Fei Tian College – Middletown and would involve the entire or nearly the entire process of a typical data science project, including but not limited to data collection, data processing, data cleaning, feature selection, explorative analysis, data modeling and model selection, data visualization and others. Besides technical work, student will also be required to finish an oral mid-term progress presentation, write a final project report and give an oral presentation of their findings. Prerequisite: Permission form
MAT105 Calculus I (4 credits)
This course covers calculus of single-variable functions. Topics include brief review of precalculus, limits, derivatives, integration, and some application of these tools to mathematical (graphing, min/max etc.) or real-world problems. This course is intended for majors in science, engineering, economics, and computer science, among other disciplines. Prerequisite: None
MAT106 Calculus II (4 credits)
This course is a follow-up course of Calculus I. It covers important concepts and techniques that are essential to understand advanced courses on probability or statistics. The topics covered include techniques of integration (Chapter 7), application of integration (Chapter 6 & 8), polar coordinates (Chapter 10), infinite sequences and series (Chapter 11), and Multiple Integrals (Chapter 15). Students are also encouraged to use Python coding to visualize some results in Calculus as bonus projects. This course is intended for majors in data science. Prerequisite: MAT105
MAT201 Linear Algebra (4 credits)
This course is an introductory one designed to equip students with the essential mathematical foundations necessary to understand and implement modern data science techniques. The course explores the core concepts of linear algebra, including vectors, matrices, and their applications in algorithms and models crucial to the big data era. By understanding the geometric and algebraic properties of vectors and matrices, students will gain insights into how linear algebra powers machine learning, image processing, neural networks, and more. Practical examples and applications will be woven throughout the course to demonstrate the real-world utility of these mathematical tools. Prerequisite: None
MAT207 Calculus III (3 credits)
This course is an advanced course in calculus. It includes vectors and vector functions, partial derivatives and differentiability of functions of several variables, multiple integrals. Prerequisite: MAT106
STA101 Introduction to Statistics (3 credits)
This course is an introductory course in statistics intended for students in a wide variety of areas of study. Topics covered include basic descriptive measures (histograms, average, and standard deviation etc.), probability theory, statistical inference, confidence intervals, hypothesis tests and regression with applications in the real world. In addition, students will learn and use statistical programming language R to help understand and perform select statistical analyses. Prerequisite: None
STA311 Applied Regression Analysis (3 credits)
This course is intended for majors in data science. It provides the methods and applications of fitting and interpreting multiple regression models, with emphasis on the analysis of data. Prerequisite: STA101 or COS211, MAT201
STA421 Design and Analysis of Experiments (3 credits)
This applied course is for students with majors in Data Sciences, Statistics, and Biomedical Sciences. It introduces basic concepts and methods for design and analysis of experiments that commonly arise in clinical trial, public health, industry quality control, agriculture, life sciences, and insurance. Prerequisite: DAS251
STA431 Multivariate Analysis (3 credits)
The course will cover important statistical methods, relevant theory and applications for analyzing continuous multivariate data. Prerequisite: DAS251
STA435 Bayesian Analysis (3 credits)
Bayesian statistical methods combine information from similar experiments, account for complex spatial, temporal, and other correlations, and also incorporate prior information or expert knowledge (when available) into a statistical analysis. Prerequisite: DAS251
STA441 Survival Analysis (3 credits)
This applied course is for students with majors in Data Sciences, Statistics, and Biomedical Sciences. It introduces basic concepts and methods for analyzing survival time data (time-to-event data) that commonly arise in clinical trial, public health, industry quality control, and insurance. Prerequisite: DAS251
STA445 Nonparametric Statistics (3 credits)
This course is an elective course for majors in mathematics/statistics. It introduces basic theory and computing tools for nonparametric statistical methods. Prerequisite: DAS251