Course Descriptions
Computer Science and Digital Arts Courses
Department Code: CPTR
CPTR110 Introduction to Computer Science with Python
Assumes basic high school mathematics and no prior programming experience. Course introduces data representation, operating systems, and programming using Python. Topics include problem-solving, flowchart design, algorithm writing, data types, decision making statements for non-sequential programming, loops for repetitive work, functions, arrays, vectors, strings, and GUIs(graphical user interfaces). Lab section would help students design flowcharts and write simple programs. Lecture and Laboratory. Credit 4 hours.
CPTR112 Programming 1
Introduces students to the use of computers as a problem-solving tool. Programming techniques and methodologies are covered. This includes the design, coding, and execution of structured and object-oriented programming. Programming will be taught in a modern programming language. The topics covered: data structures, algorithms, procedural abstraction, functions, I/O streams, objects and classes. Lecture and laboratory Prerequisite: CPTR110 or MATH 110 or higher level math course. Credit 4 hours.
CPTR200 Computer Game Concepts
A forum in which the topics are free-ranging. Periodically students will sift through the topics discussed to see if anything presents fertile ground for a game premise. Participation needs to be based upon simple opinion/observation in some cases and upon research and structured brainstorming in others. Credit 1 hour. May be repeated for credit.
CPTR205 Computer Game Planning and Production
Students in this course study games and the game development process. They also evaluate the premises presented to them by the Game Concepts class and select one or more to prototype and playtest. Credit 2 hours. May be repeated for credit.
CPTR211 Basic Information and Website Design
An introduction to Website creation. Students will learn the planning process, to include information design, and the creation of sites using WYSIWYG editors such as Dreamweaver, and HTML. Prerequisite: COMM or ART 103. Credit 3 hours.
CPTR212 Object Oriented Programming
Covers modern way of scalable software development using Object-oriented programming (OOP) paradigm. Topics covered include classes, objects, inheritance, encapsulation, polymorphism, and data abstraction. Lecture and laboratory. Prerequisites: CPTR 110 and 112. Credit 4 hours.
CPTR220 Digital Sound
This course will explore the use of computer software to create digital music and sound effects. Software such as Cakewalk Project 5 will enable students to create and use audio synthesizing workstations. Credit 3 hours.
CPTR240 3D Modeling and Animation 1
Probable topics for this course include the 3DMax interface layout, creation tools with primitives and 2D shapes, lofting, and basic modifiers along with scene set up. Simple lighting, camera and materials will enhance student renders and animations. Credit 3 hours.
CPTR250 3D Modeling and Animation 2
Probable areas of study include in-depth renders and animations using complex modifiers, lofting, space wars, and particle systems; creating low-polygon characters and objects for gaming; advanced lighting, camera and material creation methods along with detailed rendering options for enhanced realism. Prerequisite: CPTR 240. Credit 3 hours.
CPTR318 Data Structures
Covers both linear data structures: arrays, vectors, linked list, stack, and queue and non-linear data structures: trees and graphs. Introduces complexity analysis of data structures for valid selection based on problem and requirements. Implementation of the concepts and project would be using C++ or another object-oriented language. Prerequisites: CPTR 212. Credit 3 hours.
CPTR319 Cloud Computing
Course Description: Provides an overview of the field of cloud computing and the associated technologies. Students would be working on the projects hosting their product / software on the cloud infrastructures such as Amazon Web Services (AWS) and Microsoft Azure. Topics covered include cloud infrastructures, virtualization (CPU, memory, and Input / Output resources), software defined networks, cloud storage, and programming models. Prerequisites CPTR 212 or CPTR345. Credit 3 hours.
CPTR320 Database Management Systems
This will cover the concepts of successful commercial-level database design. It will include these topics: data models, three schema architecture, entity-relationship model, enhanced ER diagram, relational model concepts, relational algebra and calculus, SQL, functional dependencies, normalization, and database security. Prerequisite: CPTR 112. Credit 3 hours.
CPTR324 Computer Networks & Security
Covers computer network concepts and security using TCP/IP protocol model. Topics covered are application layer, transport layer, network layer, data link layer, and physical layer. Students would be introduced to current vulnerabilities, cryptographic algorithms to protect the data and network. Implementation of security algorithms would be in C++ and Python. Prerequisites: CPTR 212 and MATH 223. Credit 3 hours.
CPTR341 Operating Systems
This course will cover the concepts, structures, and functionalities of operating systems. It will include process management, memory management, scheduling, file management, multiprocessor scheduling, threads, deadlocks, and starvation. Prerequisites: CPTR 212 and MATH 319. Credit 3 hours.
CPTR345 Software Engineering
This course will study systems development life cycles through project implementation and evaluation, and life cycle models such as waterfall. Prerequisite: CPTR 212. Credit 3 hours.
CPTR346 Motion Graphics
A course in the creation of digital productions combining multiple elements for gaming, commercial video or web presentations. Video shooting and editing techniques taught in the course are combined with audio, sound and image manipulation, 2D and 3D graphics, interactive authoring and web creation techniques learned in prerequisite courses. Prerequisite: COMM 205, CPTR 211, COMM 216, CPTR 220, CPTR 240. Credit 3 hours.
CPTR350 3D Modeling and Animation 3
A continuation of CPTR 250. Prerequisite: CPTR 250. Credit 3 hours.
CPTR425 Machine Learning
Introduces fundamental concepts used in computational data analysis. Topics include regression, classification, clustering, and visualization. A brief overview of recent developments in deep learning and its applications would also be covered. Each student will work on their own projects based on their major area of study or interest. Students would perform data analysis using Python over Google Colab. Prerequisites: CPTR 110 or MATH110 or Instructor approval. Credit 3 hours.
CPTR430 Introduction to Artificial Intelligence
Basic concepts about Artificial Intelligence. Topics include: recursive problem solving, knowledge representation using semantic networks and frames, state space search methods, planning and problem solving, game playing and adversarial search methods, rules and production system, constraint satisfaction techniques and applications, optimization algorithms including genetic algorithms, and logic programming. Prerequisites: CPTR 212 and MATH 222. Credit 3 hours.
CPTR453 Analysis of Algorithm
This course focuses on running time of algorithms, recurrences, sorting, binary search trees, hash tables, and dynamic programming. Prerequisites: CPTR 212 and MATH 320. Credit 3 hours.
CPTR454 Senior Project and Seminar
Working with a professional mentor, the student will design, execute and manage a project involving computer technology. This project may include hardware, software and assessing the impact upon people and systems. The goal of this course is to provide students with professional experience. Three main objectives of this course are technical accomplishment, execution of a commercial-level project, and effective communication. Credit 3 hours.
CPTR459 Practicum in Computer Science
An intensive applied learning experience that involves the analyzing and solving of a significant practical problem, and providing appropriate documentation of the work done. Credit 1 to 5 hours.