Computer Science (CSCI)
Credit: 1 (0-1-0)
This is the accompanying laboratory for CSCI 1336: Programming Fundamentals I. Students will work hands-on in a computer laboratory to write programs on topics in software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging. Meets College of Business Experiential Learning Requirements. TSI Restriction(s): Reading, Math, and Writing.
Restrictions: Enrollment is limited to Undergraduate level students.
Credit: 1 (0-1-0)
This is the accompanying laboratory for CSCI 1337: Programming Fundamentals II. Students will work hands-on in a computer laboratory to write programs on topics in the object-oriented programming paradigm, focusing on the definition and use of classes along with the fundamentals of object-oriented design as well as abstract data types. It provides additional experience with advanced programming concepts and applies the basic concepts of efficiency in algorithm development and implementation. Meets College of Business Experiential Learning Requirements. TSI Restriction(s): Reading, Math, and Writing.
Restrictions: Enrollment is limited to Undergraduate level students.
Credits: 3 (3-0-0)
This course introduces the fundamental concepts of structured programming. Topics include software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging.
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course introduces and applies the object-oriented programming paradigm, focusing on the definition and use of classes along with the fundamentals of object-oriented design as well as abstract data types. It provides additional experience with advanced programming concepts and applies the basic concepts of efficiency in algorithm development and implementation.
Restrictions: Graduate level students may not enroll.
Credits: 4 (0-0-0)
This course introduces the fundamental concepts of structured programming. Topics include software development methodology, data types, control structures, functions, arrays, and the mechanics of running, testing, and debugging. Students are also briefly introduced to the fundamentals of object-oriented programming. This course has its laboratory component: Students will work hands-on in a computer laboratory to write programs related to course topics. Prerequiste(s): Grade of C or better in each: Math 1314 or equivalent. TSI restriction(s): Reading, Math, and Writing.
Restrictions: Graduate level students may not enroll.
Credits: 4 (0-0-0)
This course introduces and applies the object-oriented programming paradigm, focusing on the definition and use of classes along with the fundamentals of object-oriented design as well as abstract data types. It provides additional experience with advanced programming concepts, such as exceptions, GUI programming, and recursion. This course has its laboratory component. Students will work hands-on in a computer laboratory to write programs related to course topics. Prerequiste(s): Grade of C or better in each of: MATH 1314, CSCI 1436 (or CSCI 1136 and 1336). TSI restriction(s): Reading, Math, and Writing.
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course provides the mathematical foundations from discrete mathematics for solving computational problems. Students will learn the basic discrete mathematical structures such as propositional logic, proof techniques, predicate calculus, sets, relations, counting techniques, functions, and graphs. Prerequiste(s): Grade of C or better in each of: MATH 1314, CSCI 1436 (or CSCI 1136 and 1336), CSCI 1437 (or CSCI 1137 and 1337). TSI restriction(s): Reading, Math, and Writing.
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course introduces basic computer organization; digital representation of data and instructions; computer arithmetic, logic and shift units, data formats, address models, instruction sets and microcode (general Assembly language), systems including caches, and design of simple computer. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course covers the fundamental concepts of designing and developing web applications. The content is focused on strategies and techniques for designing and structuring web applications. Topics include designing interfaces in HTML, CSS, and JavaScript, writing basic scripts in PHP, and working with databases on a client-server architecture.
Restrictions: Graduate level students may not enroll.
Credits: 4 (0-0-0)
This course introduces the fundamental concepts of data structures and expands on the concepts control structure, data types and algorithms. Topics include recursion, fundamental data structures (including tacks, queues, linked lists, hash tables, trees, and graphs), and algorithmic analysis. Includes basic analysis of algorithms, searching and sorting techniques, and an introduction to software engineering. Course includes lab component for lab based exercises. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course examines file and database organization techniques including network, hierarchical, relational, object and SQL data models, commercially available and open source database systems, database design and implementation, query language, transaction processing, database administration and database security. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course introduces penetration testing, web application security and cyber security ethics through hands-on experience that develops foundational offensive and defensive security skills. Students will learn the basics of cyber security and common vulnerabilities and attacks, receiving hands-on practice in both exploitation techniques and strategies for protecting and hardening applications. Prerequiste(s): Grade of C or better in each of: MATH 1314, CSCI 1436 (or CSCI 1136 and 1336), CSCI 1437 (or CSCI 1137 and 1337), and CSCI 2436 or (CSCI 2336 and 2136). TSI restriction(s): Reading, Math, and Writing.
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course provides the basic tools to give students the ability to select algorithms appropriate to particular purposes and to apply them, recognizing the possibility that no suitable algorithm may exist. It examines the range of algorithms that address important sets of well-defined problems, recognizing their strengths and weaknesses, and their suitability in particular contexts. Time and space efficiency is a pervasive theme throughout this course. . TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course introduces Basic Processor Design; Performance Evaluation; Pipelining; Memory Hierarchies: Caches, virtual memory; input/output and storage; Introduction to Instruction Level Parallelism. TSI Restriction(s): Reading, Math, and Writing
Restrictions:
Credits: 3 (3-0-0)
A programming intensive course that investigates program implementation theory, methods, and tools, as well as system utility programming using operating system programming interfaces and system calls to provide computer and process management capabilities. TSI Restriction(s): Reading, Math
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
A programming intensive course that introduces key topic areas in Computer Science, such as graphics, intelligent systems, simulation and modeling, and parallel and distributed processing. Formerly CSCI 3351. TSI Restriction(s): Reading, Math
Restrictions:
Credits: 3 (3-0-0)
This course covers the fundamental concepts of designing and developing web application. The content is focused on strategies and techniques for designing and structuring web applications. Topics include designing interfaces in HTML, CSS, and JavaScript, writing basic scripts in PHP, and working with databases on a client-server architecture. TSI Restriction(s): Reading, Math
Restrictions:
Credits: 3 (3-0-0)
This course provides a comprehensive study of key concepts in modern operating systems. Topics include operating system structures, process and threads, process synchronization, CPU scheduling, deadlock, main memory and virtual memory management, and file systems. MATH 1314, CSCI 1436 (or CSCI 1136 and 1336), CSCI 1437 (or CSCI 1137 and 1337), CSCI 2325 and (CSCI 2436 or (CSCI 2336 and CSCI 2136)). TSI Restriction(s): Reading, Math.
Restrictions:
Credits: 3 (3-0-0)
This course covers the syntax and semantics of programming languages and differentprogramming language paradigms such as functional programming, logic programming, and object-oriented programming. Formerly CSCI 4366. TSI Restriction(s): Reading, Math.
Restrictions:
Credit: 1 (1-0-0)
In this course students will identify the various ethical issues and values as it relates to future careers within their discipline. Students will study various cases and identify the ethical issues, and seek mechanisms for addressing and resolving the issues. Through mock debates, studying, writing and presenting professional ethical analysis studies, students will be prepared to understand and address the ethical issues within their discipline.
Restrictions: Enrollment limited to students with a semester level of Senior.Graduate level students may not enroll.
Credits: 3 (3-0-0)
The course gives a comprehensive and up-to-date introduction to artificial intelligence (AI) theory and practice. Covered topics include machine learning, deep learning, transfer learning, multiagent systems, robotics, natural language processing, causality, probabilistic programming, privacy, fairness, and safe AI.
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
Man-machine communication in graphical form. Graphics hardware and software. Use of a commercial graphics package. Representation and manipulation of two- and three-dimensional data. Use of color. TSI Restriction(s): Reading, Math
Restrictions:
Credits: 3 (3-0-0)
This course introduces an engineering approach to software development with software process models, software design principles, software requirements analysis, specification, design, and development. TSI Restriction(s): Reading, Math
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course covers engineering principles applied in the software process improvement, software quality assurance, software testing, software project management, and software maintenance. Course materials also address current topics in software engineering. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course covers the topics of computer security and information security in greater detail. Topics will include cryptography, security protocols, web security, network security, software-security, mobile security, intrusion detection and prevention systems, vulnerability assessment, and other security technologies. Special emphasis is on application and software security issues. Hands-on exercises are included to reinforce the material. TSI Restriction(s): Reading, Math, and Writing
Restrictions:
Credits: 3 (3-0-0)
This course will integrate knowledge from introductory security courses with knowledge from data science and analytics. Major subjects include cyber operation and management, cyber defense and offense, malware analysis, and revere engineering. The course will be built based on NIST NICE Cyber framework. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course covers the fundamental concepts of designing and developing software applications targeted for mobile devices such as those running the Android operating system. The content is focused on strategies and techniques for designing and structuring mobile applications, including user interface screen layouts, the definition of program logic, and the connection between them. The application life cycle in the mobile environment and its important implications on application design is also examined. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.
Credits: 3 (3-0-0)
The course provides students the opportunity to gain an off campus learning experience allowing the acquisition and application of computer science skills in a professional work environment.
Restrictions: Enrollment limited to students with a semester level of Junior.Graduate level students may not enroll.
Credits: 3 (3-0-0)
This course covers an introduction to various topics in cryptography including conventional and public-key cryptography, authentication and digital signatures, pseudo-random sequences, hash functions, key management. Software applications using these techniques will be studied in addition to an introduction to current cryptographic techniques and applications. TSI Restriction(s): Reading, Math, and Writing
Restrictions:
Credits: 3 (3-0-0)
This course covers the technologies, tools, and techniques used to develop software applications targeted for mobile devices running software such as the iOS operating system. The content is focused on strategies and techniques for designing and structuring mobile applications, including user interface layouts, gesture-based interfaces, integrated location services, multi-touch event handling, Apple iOS platform, Xcode IDE, and Swift programming language. The application life cycle in the mobile environment and its important implications on the application design is also examined. TSI Restriction(s): Reading, Math, and Writing
Restrictions:
Credits: 3 (3-0-0)
Research in selected fields of computer science. May be repeated once for additional credit. TSI Restriction(s): Reading, Math, and Writing
Restrictions:
Repeat Status: Course may be repeated 1 time(s).
Credits: 3 (3-0-0)
Students will work individually or as teams on topics/projects related to the industry or research. Faculty will help students in the selection process and students will produce several deliverables within the course toward the goal of their project completion. Meets College of Business Experiential Learning Requirements. TSI Restriction(s): Reading, Math, and Writing
Restrictions: Enrollment limited to students with a semester level of Senior.Enrollment is limited to students with a major in Computer Science.Enrollment limited to students in the BS_CSCI program.Graduate level students may not enroll.
Credits: 4 (3-3-0)
This course covers subjects related to computer networks including TCP/IP and OSI models, network applications, distributed systems and an introduction to network security. The course focuses on concepts, principles and technologies that enable the use of current computer networks and protocols. Course includes a lab component for lab-based exercises. . TSI Restriction(s): Reading, Math, and Writing
Restrictions: Graduate level students may not enroll.