Introductory topics include gaming industry history, game development processes, game genres, storyboarding, game environment, character design, interface design, game play, AI, the psychology of game design, and professionalism. Study provides overall view of the gaming and simulation components. Practical hands-on application includes using a simple game design environment to design and write simple games. 3 Credits (3 Lecture) Prerequisite(s): CSC124. (Science, Technology and Society) Spring Only.
Gaming and Simulation Design Principles I
Introduction to the fundamentals of simulation and game design. Some topics include the role of game designer, game structure, prototyping, dynamics, aesthetics and mechanics principals, and use of industry standard templates. Study includes units of probability related to game design. Course work includes guided hands-on activities that enhance the learning experience. 3 Credits (3 Lecture) Prerequisite(s): CIT112 and CIT160. Fall Only.
Introduction to Programming
Introduction to problem-solving techniques, elementary programming, and the application of these techniques in developing structured programs. A current high-level language is used to illustrate the implementation phase of program development. 3 Credits (3 Lecture) Prerequisite(s): Placement by Examination or MTH006.
Introduction to Networking
Introduction to networking structure, terminology, current and emerging technologies, and the World Wide Web as an integrating framework. Topics covered include TCP/IP, Security Concepts, Wireless Networks, and Network Virtualization. Emphasis on applications of networking to the Web and Programming. 3 Credits (3 Lecture) Prerequisite(s): Placement by Examination or MTH006.
Introduction to Database
Introduction to creating and using simple relational databases. Topics include basic terminology, database tools, data security, design concepts, query functions, and importing/exporting data. A selected database application is used to illustrate the database concepts. 3 Credits (3 Lecture) Prerequisite(s): Placement by Examination or MTH006.
Gaming and Simulation 3D Modeling
Introduction to 3D computer modeling. The existing industry standard 3D modeling software are introduced and explored, one of which is used to demonstrate the 3D modeling concepts. Topics include, but are not limited to, object geometry, polygons, mesh, rigid bodies, soft bodies, particle systems, beveling, extrusion, and color. Course work includes creating and animating 3D models using a selected 3D modeling tool. 3 Credits (3 Lecture) Prerequisite(s): CIT114. Spring Only.
Gaming and Simulation Design Principles II
Advanced topics in simulation and game design. Topics include logos, menus, interfaces, game textures, game levels, characters, 3D models, and game world geometry. A current industry and/or educational game development environment is used to design or implement design concepts. Course work includes guided hands-on activities that enhance the learning experience. 3 Credits (3 Lecture) Prerequisite(s): CIT114 and CIT260. Spring Only.
Study and application of the elements of proper design to create gaming applications using the chosen programming paradigm. Course work includes using a favored industry standard programming languages, such as C, C++ and C#, to write sample game and simulation applications. Study and analysis demonstrates the reason a specific language is more suitable for gaming application. 3 Credits (3 Lecture) Prerequisite(s): CIT112 and CIT260. Spring Only.
Fundamentals of Information Security
Introduction to the fundamental concepts of information security. Topics include establishing and implementing an organization-wide security policy designed to protect the information assets of an organization. Course work provides the skills necessary to enforce a corporate-wide security policy and lays the foundation for continued study in information security. 3 Credits (3 Lecture) Prerequisite(s): CIT160 and CIT171 or CIT160 and EET145.
Introduction to UNIX/Linux
Introduction to the UNIX/Linux operating systems, including the installation and configuration of the operating system, and applications within the operating system. 3 Credits (3 Lecture) Prerequisite(s): CIT160.
Study designed to prepare the student to integrate systems of diverse architecture so that they share information and resources efficiently. Introduction to the basic system programming concepts required to perform these tasks in multiple environments. Skills learned include computer management such as disk and memory management, file handling, system security, and customization of the user interface on various operating systems. Other skills include file formatting, transmission, translation and scripting to enable information sharing across multiple platforms. Programs are implemented in multiple operating systems' command languages. 3 Credits (3 Lecture) Prerequisite(s): CIT240. Spring Only.
Discrete Structures in Computer Applications
Introduction to discrete mathematical topics used in computer applications. Topics include, but are not limited to, discrete mathematics, predicate and propositional logic, complexity, computability, sets, graphs, recursion, and digital structures. Study demonstrates how traditional mathematical concepts are imported and used in digital computers. Course work includes application of theories through guided computer exercises and programs. 3 Credits (3 Lecture) Prerequisite(s): CIT160 and MTH182 or CIT160 and MTH190 or CIT160 and MTH240. Spring Only.
System Analysis I
Study of the systems analysis process used to design solutions to business problems. The phases of the System Development Life Cycle (SDLC), up to and including requirements analysis, are presented. Emphasis on teamwork in addressing problem identification, data gathering, and project management. Course work includes using the SDLC to solve an actual business problem; identifying requirements through interviews, questionnaires and research; and using the rapid application development process (RAD) to demonstrate human/computer interfaces. Project management techniques are used to schedule activities and evaluate progress. The final product will be a system requirements document and presentation to the appropriate stakeholders. 3 Credits (3 Lecture) Prerequisite(s): CIT160 and CIT171 and CIT180 or CIT160 and CIT180 and EET145.
Continuation of program design and development concepts. Emphasis on a structured, multi-phase program development process, involving understanding a problem, defining a formal solution, and using graphic design methodologies and/or pseudo-coding to develop a program specification. A selected high-level language with broad platform support is used to perform the implementation phase of program development using procedural and object-oriented methodologies. 3 Credits (3 Lecture) Prerequisite(s): CIT160.
Introduction to C/C++ language with an emphasis in program design and development. Emphasis on a structured, multi-phase program development process, featuring a series of steps involving the understanding of problems, formal design definitions, program specifications through graphic design methodologies and/or pseudo-coding, and implementation. 3 Credits (3 Lecture) Prerequisite(s): CIT160.
Advanced internetworking and routing protocols, focusing on the design, operation, implementation and analysis of internal and external routing protocols. Topics include TCP/IP protocol suite, networking metrics, class-full and class-less addresses, subnetting, and virtual private networks. 3 Credits (3 Lecture) Prerequisite(s): EET245 or CIT171 and EET204 and EET205 or EET220 and EET221. Fall Only.
Network Administration and Technical Support
Introduction to the administration of computer networks, including installing and configuring servers and clients; creating and maintaining secure network resources and accounts using standard naming conventions; developing documentation; and performing basic troubleshooting and performance analyses. (Formerly CIT271) 3 Credits (3 Lecture) Prerequisite(s): CIT171 and EET204 and EET205 or EET220 and EET221 or EET245. Fall Only.
Introduction to multi-user and relational database development. The entity-relationship, normalization, and relational algebra concepts are covered. Students will use appropriate tools to document the designs of multi-user and relational databases, and implement the designs within appropriate database development environments. 3 Credits (3 Lecture) Prerequisite(s): CIT180. Fall Only.
Secure Database Development
Introduction to multi-user and relational database development. The entity-relationship, normalization, and relational algebra concepts will be covered. Documentation of the designs of multi-user and relational databases, and implementation of the designs within appropriate database development environments. Discussion and practice will include industry best practices for design and implementation with emphasis on security best practices. 3 Credits (3 Lecture) Prerequisite(s): CIT180. Spring Only.
Detailed coverage of database programming using Oracle PL/SQL programming environment. Topics covered include, but are not limited to, procedures, functions, triggers, packages, code maintenance, code abstraction, program efficiency, modular programming, data retrieval, maintenance, and update. Course work includes testing and applying the concepts through a series of guided computer exercises and programs. 3 Credits (3 Lecture) Prerequisite(s): CIT260 and CIT280. Fall Only.
Information Technology Internship
Work experience intended to provide exposure to the practical and daily operations of an information technology office, support team, or equivalent. Placement within a private firm, government institution or agency, corporation, or other office is based on major and/or career interests to the extent possible. As the culmination of academic study, the internship may not take place before a student's second year, although it may take place in either semester of the second year, per agreement between the student, adviser, and supervising instructor. The student may or may not receive a salary or compensation for services (negotiable with employer/organization). The student logs the experience and submits a narrative report at the conclusion of the internship. 3 Credits (0 Lecture - 15 Internship) Prerequisite(s): BWM150 and CIT160 and CIT171 and CIT180.
Wireless and Mobile Computing
Intensive introduction to wireless and mobile computing, focusing on network administration, deployment techniques, and security. Topics include configurations and transmissions, implementation, and maintenance of wireless and mobile computing networks in organizational settings. 3 Credits (3 Lecture) Prerequisite(s): CIT271 or CIT272. Fall Only.
Mobile Game Design and Programming
Study of multiple gaming platforms and devices, including small portable devices. Discussion covers the differences between the supporting operating systems as well as the design differences between the traditional console or workstations and smaller mobile devices. Course work includes designing, developing, and programming a gaming or simulation application in either a physical device or an emulated environment. 3 Credits (3 Lecture) Prerequisite(s): CIT214. Spring Only.
Support Center Procedures and Practices
Hands-on experience in an information technology support center. Students provide support in a controlled environment and collaborate with other students to better relate theory to practice. Students spend time providing technical support to customers via a student managed and operated help desk. Students are expected to deal with their customers in a typical user environment. Faculty provide guidance to ensure that course outcomes are met through the experience. 3 Credits (3 Lecture) Prerequisite(s): CIT272. Spring Only.
Fundamentals of Cryptography
Overview of the various cryptographic techniques that have been employed to secure data over time. Investigation of various encryption algorithms, from simple ciphers to modern public key encryption systems. Discussion includes various implementations, strengths, weaknesses, and appropriate applications of different cryptosystems as well as an introduction to state-of-the-art cryptography. Students must earn a grade of C or higher in MTH240 to enroll in this course. 3 Credits (3 Lecture) Prerequisite(s): MTH240. Fall Only.
System Analysis II
Steps of systems and systems management, with a concentration on the second part of the System Development Life Cycle (SDLC), specifically logical design and decision analysis. Topics include appropriate data modeling, process modeling, risk analysis, and cost and benefits analysis, as well as object-oriented analysis and modeling using UML. Skills learned include applying the appropriate methods for converting the requirements analysis into a logical design and maintaining the integrity of a system as it evolves through the SDLC by using various systems management tools and techniques. 3 Credits (3 Lecture) Prerequisite(s): CIT246 and CIT280. Spring Only.
Operating Systems Concepts I
Introduction to the fundamental principles of operating systems providing an in-depth study of the internal operations and the technical terminology of a computer system. Topics include common features of operating systems, operating system services, process management, threads, CPU scheduling, memory management, virtual memory, process synchronization, and deadlocks. 3 Credits (3 Lecture) Prerequisite(s): CIT240 or CIT260. Fall Only.
Web Systems and Technologies
In-depth study of the complete website development process, from concept to finish, with emphasis on application, design, and development. Focus is on using the latest client-side and server-side technologies to enhance the Web presence of a business. Topics include multimedia and interactivity online commerce, Internet security, and the study of human computer interaction. 3 Credits (3 Lecture) Prerequisite(s): CIT180 and CIT260. Spring Only.
Data Structures and Algorithms
Study of data structures covers stacks, queues, trees, and graphs. Data structures are introduced as abstract concepts, and their physical implementations and operations are developed and applied. Topics include basic techniques of design and analysis of efficient algorithms for sorting, merging, and searching. 3 Credits (3 Lecture) Prerequisite(s): CIT260. Fall Only.
Introduction to the concepts that permit unrelated applications and dissimilar systems to share information using current communications technologies. Study includes the various methodologies used to integrate applications, databases, and Web services to avoid data duplication. Course work provides application of these concepts through the construction of middleware programs for a proposed scenario. 3 Credits (3 Lecture) Prerequisite(s): CIT246. Spring Only.
Introduction to the general characteristics of software design, software processes, methods, architecture and tools. Topics cover project management concepts, project metrics, software reliability, software testing, cost estimation models, project planning, risk analysis, and risk management. Concepts of total quality management and reengineering are introduced. Students are exposed to prototyping, RAD, and CASE tools in a laboratory setting. (Formerly CSC 466) 3 Credits (3 Lecture) Prerequisite(s): CIT260 and CIT280. As needed.
Secure Software Development and Testing
Emphasis on awareness of common software issues and how to appropriately develop new code without those common vulnerabilities. Topics include systematically testing software to identify security issues like disclosure, secondary indicators, validation errors, buffer overflows, etc. 3 Credits (3 Lecture) Prerequisite(s): CIT246 and CIT260. Spring Only.
Data and Telecommunications
Study providing a working knowledge of communication systems commonly used to support data and telecommunications. In-depth study includes the efficiency of synchronous and asynchronous transmission for local and wide area networks; the relationship between transmission protocol and network topologies; and error detection and correction, line control, and security analysis as they relate to information integrity in a distributed telecommunications environment. Discussion also covers the effect of government legislation and regulation on telecommunications and data communications. 3 Credits (3 Lecture) Prerequisite(s): CIT270.
Network Administration II: Real-time Services
Techniques and strategies for provisioning network infrastructure to provide low latency transport of real-time application data, such as voice, video, and financial transactions. High availability and fault tolerant network architectures are examined from a practitioner perspective with a focus on redundancy of data links, routing paths, and infrastructure services such as DNS and DHCP. Protocols that ensure optimal data prioritization and transport, such as Weighted Fair and Low Latency Queuing, and the tools used to configure and monitor traffic flows are covered. 3 Credits (3 Lecture) Prerequisite(s): CIT271 or CIT272. Fall Only.
Advanced examination of networking concepts. Focus is on network modeling and simulation applied to large networks. Topics include simulation concepts, performance modeling and analysis techniques, interpretation of simulation results, and simulation study design. Course work includes exposure to several network simulation packages. 3 Credits (3 Lecture) Prerequisite(s): CIT270 and CIT271 and MTH160 or CIT270 and CIT272 and MTH160. Spring Only.
Protocol Vulnerabilities Analysis and Network Defense
Exploration of the weakness and vulnerabilities in the TCP/IP protocol stack, common attacks used to circumvent network security, and development of solutions and countermeasures to defend and protect networks. 3 Credits (3 Lecture) Prerequisite(s): CIT270 and CIT271 or CIT270 and CIT272.
Programming for Mobile Devices
Knowledge and skills needed to develop applications for variety of personal mobile devices. Study and practice includes writing applications that access offline and online data. Course work includes developing an application for a specific domain (e.g., personal, business, or entertainment), addressing the new mobile technologies in either physical or simulated modes. 3 Credits (3 Lecture) Prerequisite(s): CIT360. Spring Only.
SQL Server and .NET Framework
Theory and hands-on learning experience using the Microsoft .NET platform to set up and study the SQL server and SharePoint. Skills learned include programming, configuring, and deploying applications; working with data and services; and working with ASP.NET, AJAX, and other client-side scripting in Web applications. Other utilities include Crystal Reports, Visual Basic, and C#. 3 Credits (3 Lecture) Prerequisite(s): CIT351. Fall Only.
Computer Simulation Applications
Study of simulation as it relates to applications that use game engines or related programming environments to simulate a concept, behavior, or interaction. Exploration includes a survey of several programming environments. Course work includes use of many well known simulation development tools, algorithms, and structures to create simulation applications. 3 Credits (3 Lecture) Prerequisite(s): CIT214 and CIT360. Fall Only.
Advanced Topics in Computer Simulation and Game
Advanced study of the emerging issues in simulation and gaming. Possible topics include, but are not limited to, optimization, human computer interface, artificial intelligence, interactive storytelling, graphics in various platforms, console technologies. The topics covered will be incorporated within a simulation or gaming application. 3 Credits (3 Lecture) Prerequisite(s): CIT214 and CIT260. Spring Only.
Gaming and Simulation Capstone
Applied learning experience in which game design and programming knowledge gained from previous courses are used to design, create, and implement a new game. Course work includes documentation of all aspects of the game creation, from its inception state to its completed and tested state. 3 Credits (3 Lecture) Prerequisite(s): CIT246 and CIT312 and CIT360. (Writing Enriched) Fall Only.
Information Security Forensics and Incident Response
Introduction to the basic investigation techniques used when a security breach has occurred or a system has been compromised. These techniques enable the IT security specialist to participate in the evidence collection phase of an investigation, which may include criminal investigation. Study includes techniques that enable restoration of a compromised system without interfering with the investigative process and evidence. Discussion includes common practices for reporting breaches and updating policies and procedures to prevent similar breaches. 3 Credits (3 Lecture) Prerequisite(s): CIT246 and CIT335 and IAS311.
Information Security Procedures, Practices and Policy
Introduction to the methodologies used to develop an organizational security plan. Course work includes developing a comprehensive security plan and establishing the procedures, practices and policies necessary to implement the plan. Designed to prepare the student to participate in the overall IT planning process by identifying the requirements of a comprehensive security policy and devising a plan for the deployment of resources in support of that policy. 3 Credits (3 Lecture) Prerequisite(s): CIT246 and CIT330 and MTH160. Fall Only.
Virtualization, Cloud Computing, and Storage
Introduction to virtualization technology, its impact on business processes, and the resulting changes required in infrastructure planning and deployment. Topics include business modeling, theoretical foundations of virtualization, and security and deployment issues in cloud computing. 3 Credits (3 Lecture) Prerequisite(s): CIT270 and CIT371. Spring Only.
Advanced Network Administration
Introduction and exploration of advanced networking operating systems, targeting the most commonly employed server OS. Course work includes skill development in client-server applications, to include administration, SMTP, and directory server support. Although not a certification prep course, the material covered in this course could be used to prepare for various advanced operating system industry certifications. 3 Credits (3 Lecture) Prerequisite(s): CIT370 or CIT371. Spring Only.
Advanced Topics in Programming
Advanced techniques in application software development using a number of contemporary languages among common computing platforms and processing environments. The SDLC (System Development Life Cycle) is followed for solving problems that involve both existing and developmental application systems. 3 Credits (3 Lecture) Prerequisite(s): CIT360. Spring Only.
Advanced Topics in Networking
Application of theory and advanced techniques required to build, maintain, deploy, and secure robust networking applications necessary to industry. Emphasis on the methods used to achieve scalability, reusability, security, and operational efficiency of computer networks. Course work includes the analysis, design, and deployment of emerging network technologies. 3 Credits (3 Lecture) Prerequisite(s): CIT370 or CIT371. As needed.
Convergent Technology and Unified Communication
Application of knowledge and skills acquired in previous courses to the design, configuration, and performance monitoring of the network technologies that form unified communication (UC) systems. Course work includes the use of enterprise class components to install, configure, and monitor the performance of a unified communication system, including, for example a voice over IP (VoIP)/email integration. Emphasis on needs analysis, design, and implementation issues prevalent in UC, including deployment and network infrastructure requirements. 3 Credits (3 Lecture) Prerequisite(s): CIT270 and CIT371. Fall Only.
Network Design and Management
Introduction to the techniques of network planning, selection and implementation. Focus on such issues as customer and system requirements; the review of current system constraints and performance; the modification and design of new networks; and the planning and implementation of system security requirements. Also covered are the various modeling techniques that can be used in the network system design process. Course work includes developing a detailed network design and preparing specific testing, security and management procedures. 3 Credits (3 Lecture) Prerequisite(s): CIT372 and MIS350. Spring Only.
Advanced Database Management
Continued exploration of the intricacies of relational database management. Theory and implementation of database system include distributed databases, parallel databases and client-server database architecture, and use of advanced query language. General database management techniques are discussed. 3 Credits (3 Lecture) Prerequisite(s): CIT240 and CIT284. Fall Only.
Capstone course designed to prepare the student for the successful management and implementation of system development/enhancement projects. Students propose, design, and implement projects that require them to analyze, integrate and synthesize all of the preceding CIT and related course work as well as perform research and include new technologies and/or topics. Student must be currently in senior standing to schedule this course. 3 Credits (3 Lecture) Prerequisite(s): CIT476 or CIT342. Fall Only.