Computer Science Prof Master (CSP)
This course focuses on the technologies and protocols used by Internet WAN's and LAN's. The fundamental architecture, organization, and routing principles of the Internet are described. Part of the course will focus on emerging Internet technologies.
This course provides students with the knowledge and skills needed to assess and manage risks associated with the design, development, and use of AI technologies. Students will learn to exploit the capabilities of AI while also recognizing associated threats to success with an emphasis on responsibility, trustworthiness, and explainability. This course will utilize established guidance, such as the NIST AI Risk Management Framework, in addition to real-world use cases and case studies, to ensure methods and approaches are grounded with respect to real-world constraints and opportunities.
This course will be a programming-based, learn-by-doing-oriented course focused on applying foundational principles in security to real systems and networks . You will implement several real attacks and take advantage of several recreated vulnerable systems in order to understand the modern landscape of network and systems security. We will also be looking at various case studies of attacks and defense strategies, including known exploit proofs-of-concept, published papers, and documents from security agencies and cyber-security research firms.
This course focuses on the design of effective, user-centered interfaces and visual representations for modern computing systems. The course introduces principles of user experience (UX) design, human-computer interaction, and data visualization, emphasizing practical techniques for improving usability, clarity, and decision-making. Students gain hands-on experience in user research, prototyping, and interface design, including the use of personas, storyboarding, and visual communication techniques to support ideation and development. Topics include visual encoding, dashboard design, and evaluation of user interfaces. The course also addresses accessibility, performance, and integration of visualization into real-world applications across domains such as data analytics, AI systems, and interactive platforms.
Big data is the area of informatics focusing on data sets whose size is beyond the ability of typical database and other software tools to capture, store, analyze, and manage. This course provides a rapid immersion into the area of big data and the technologies that have recently appeared to manage it. Students may not receive credit for both CS 554 and CSP 554.
This course is an introduction to hacking tools, techniques, and incident handling. It covers the evolution of hacking and penetration testing, the basics of cryptography for information security, foot-printing, vulnerability scanning and exploitation, wireless, web, and database attacks, malware and system exploitation, traffic analysis, incident response, and defensive technologies and controls. Students will learn how to identify vulnerabilities, attack and defend systems, respond to attacks, and design controls to prevent future attacks. The course also includes a comprehensive update on federal and state computer crime laws, as well as changes in penalties for illegal computer hacking.
This required seminar course surveys current applications of data science, bringing in lecturers from industry and academia to discuss real-world problems and how they are addressed within a data analytic framework. Students are required to attend all lectures and to give a short presentation or paper on one of the topics at the end of the semester. Permission is required from the instructor or department.
Surveys industrial and scientific applications of data analytics with case studies including exploration of ethical issues via case studies. Students will work with a variety of real world data sets and learn how to prepare data sets for analysis by cleaning and reformatting. We will also cover a variety of data exploration techniques including summary statistics and visualization methods.
Students will work in small groups to solve real-world data analysis problems for actual scientific or industrial clients. Innovation and clarity of presentation will be key elements of evaluation. Students will also have an option to fulfill course requirements through a data analytics internship with an industry partner.
To learn AI programming algorithms and techniques in common lisp. Time is split between common Lisp topics and discussions of implementation strategies for AI algorithms.
This course discusses the architectures, technologies and techniques used in the development of the object-oriented enterprise web applications using technologies such as AJAX, Servlets, Java Server Pages, HTTP protocol, XML/HTML, Sessions/Cookies, JDBC, and Multithreading. Multitier architectures, application servers, client-server model and MVC architecture will be discussed and analyzed. The course also discusses the application architecture and the process to store the transactional data in document-oriented or relational database engines and how to connect the application servers to social media websites to collect the data for further analysis using Python/Pandas and use the results of the analysis in effective marketing campaigns, sentiment analysis, and focused advertisement.
Students will obtain a significant exposure to the UML technology. This will include exposure to modeling, model-driven development, executable models, and round-trip engineering.
Students will learn methods of software quality management. this will include exposure to software quality assurance, quality measures, and quality control. These quality management methods will be explained at the applications level.
This course will present to students a system design methodology rooted in making the user part of the process. The course will begin by introducing the concepts of user-centered design, and will then take the students through the various aspects of systems design, including technical approaches and user-experience implications. The course will equip students with tools and methods for better understanding the needs of users and will teach them to translate these requirements into an effective design as measured by user situation awareness.
