Computer Science and Information Systems Course Descriptions

Draft Version
This is a DRAFT catalog for review and advising purposes. Items in this catalog draft are subject to change until the catalog for 2024-2025 academic year will be officially published on August 19th, 2024. The statements set forth in this catalog are for informational purposes only and should not be construed as the basis of a contract between a student and this institution. Should changes in a program of study become necessary, those changes will be applied liberally by the institution while the catalog is in draft mode.

CIS 515 - Applied Cryptography (3 hours)
Various concepts, algorithms, and systems in the area of applied cryptography. Topics include but are not limited to overview of classical cryptography, various types of cryptographic algorithms and systems, block ciphers, advanced encryption standards, key management, digital certificates, design and development of cryptographic computer and software applications. Cross listed with CIS 415. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 210 or equivalent, or consent of instructor.

CIS 530 - Information Technology Infrastructure (3 hours)
Enterprise information technology infrastructure including networking and telecommunications fundamentals, concepts, models, architectures, protocols, standards, communications, configuration, implementation, management, deployment software, firmware, hardware, distributed systems, file services, and software/hardware/network security issues. Cross listed with CIS 430. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 220 or equivalent, or consent of instructor. CIS 393 is strongly recommended.

CIS 533 - Mobile and Wireless Networks (3 hours)
Fundamental concepts and technologies in mobile and wireless networks, medium access control, wireless LAN, PAN, and WAN, infrastructure-based mobile networks, ad hoc routing protocols, mobile transport layer, handoff in mobile and wireless networks, wireless application protocols, wireless sensor networks. Cross listed with CIS 433. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 330 or CIS 530 or equivalents.

CIS 535 - Computer Networks and System Security (3 hours)
Principles, concepts, and fundamentals of computer networks and systems; and information technology infrastructure security, computer network authentication, authorization, access control, confidentiality, and data integrity. Topics of computer network security policy and management, data encryptions, protection against internal and external attacks, security evaluation and management will also be covered. Cross listed with CIS 435. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 220 or equivalent, or consent of instructor.

CIS 545 - Integrative Programming and Technology (3 hours)
Data mapping and exchange: metadata, XML, encoding schemes, data stream transformations, data integration and exchange between computer systems. Integrative programming and technology: design patterns, interfaces, inheritance, reusability, and security practices. Computer information systems integration: architectures, socket programming, Web services, and message and queuing services. Cross listed with CIS 445. For cross listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 220 or equivalent, or consent of instructor. CIS 393 or equivalent is strongly recommended.

CIS 546 - Advanced Mobile Programming (3 hours)
Advanced programming concepts, languages and technology relevant to mobile software systems and mobile computing, including data structures, databases, file systems, objects, classes, I/O operations, SDKs, IDEs, services, networking and development of mobile software systems. Cross listed with CIS 446. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 321 or CIS 545 or equivalents, or consent of instructor.

CIS 550 - Game Programming Design Patterns (3 hours)
Using design patterns effectively for game programming, guided by software design principles. Software design patterns are tried-and-true solutions to common object-oriented design problems. Students will learn when and how to apply software design patterns through practice by designing and implementing game prototypes using Unified Modeling Language (UML) class diagrams and a game engine. Covered design patterns include Strategy, Observer, Decorator, Factory, Command, Template Method, State, Facade, Singleton, and Object Pooling. Cross-listed with CIS 450. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: CIS 350 and graduate standing in CS or CIS. Consent of instructor for all other students with graduate standing

CIS 551 - Computer Game Design (3 hours)
Gameplay, storytelling, challenges, interface and information design, and world interaction. Construction of experiences, including rule design, play mechanics, game balancing, social game interaction, and the integration of interactive media. Playtesting and game design documentation. Cross listed with CIS 451, IM 451. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or I M 113 and I M 115 and I M 285 and I M 260, or CS 101 and CS 102 and CS 140, or consent of instructor.

CIS 552 - Computer Game Modification (3 hours)
Software development and programming aspects of computer games, game engine modification, and virtual reality simulations, including event loops, execution threads, collision detection, multi-threading, performance analysis, multi-user games and networking. Cross listed with CIS 452, IM 452. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 101 and CS 102 and CS 140, or consent of instructor.

CIS 553 - Concepting and Storytelling (3 hours)
Process of narrative and interactive development. Students will work individually and in small groups learning how to write, pre-visualize, present, and produce their interactive experiences, narratives, and games. Cross listed with CIS 453. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or I M 113 and I M 115 and I M 160 and I M 285 and I M 260, or consent of instructor.

CIS 555 - Computer Graphics (3 hours)
Introduction to the theory and implementation of computer graphics with 2D and 3D applications in Computer Gaming, including 2D and 3D graphic primitives and objects, OpenGL, geometric transformations, image synthesis, rendering and lighting, and virtual environments. Cross listed with CIS 455, IM 455. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 101 and CS 102 and CS 140, or consent of instructor.

CIS 556 - Game Engine Programming (3 hours)
Advanced techniques and technologies for programming computer game engines, multi-user games, virtual environments, and virtual reality simulations. Cross listed with CIS 456, IM 456. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CIS 452 and CIS 455 or equivalents, or consent of instructor.

CIS 557 - Digital Animation (3 hours)
A studio course exploring computer modeling and animation. Survey of the theory, history, and practice involved with creating quality modeling for print media, and also modeling and animation for time-based audio-visual media. Cross listed with CIS 457, IM 457. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or ART 105 and ART 106 and IM 285, or consent of instructor.

CIS 558 - Sounds Design (3 hours)
Theoretical and practical sound design. Music composition, field sound recording, studio tracking, aesthetic analysis of music, electronic sound generation. Digital game technologies, 3D sound processing and generative audio structures. Mixing in non-linear environments and final mastering. Cross listed with CIS 458, I M 458. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or IM 113 and IM 285, or consent of instructor.

CIS 559 - Computer Game Capstone Project (3 hours)
Game development, including advanced game design, software development, and game production concepts. Integration of audio, visual, storytelling, programming, and design. Project builds within multi-disciplinary teams. Cross listed with CIS 459, IM 459. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or consent of instructor, or senior standing in CS or CIS and completion of all other coursework in game design minor or computer game technology minor, or senior standing in CS or CIS and completion of all other coursework in game design concentration or computer game technology concentration.

CIS 571 - Database Management Systems (3 hours)
Relational database design, including entity relationship modeling and normalization. Structured query language (SQL) for creating and querying databases. Other topics include the theory of relational databases, including relational algebra, various loading and reporting utilities, and the implementation of database management systems, e.g., how query optimization works. Prerequisite: Graduate standing in CIS; or consent from department chair.

CIS 572 - Computing Management: Systems, Technology, Services (3 hours)
Management of resources for computing; management of computer and information systems and technologies; planning for and management of computing services; operational considerations. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 310 or equivalent.

CIS 573 - Quality Management in Computing (3 hours)
Quality management topics relevant to advanced computing and software/hardware systems, including functional and structural quality, quality factors, McCall's triangle of quality, ISO standards, software quality assurance and management, COCOMO models, DFSS, CMMI, quality measurements and metrics. Cross listed with CIS 473. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CIS 430 and CS 390 or equivalents, or consent of instructor.

CIS 575 - Computer Information Systems Analysis. Design and Integration (3 hours)
Computer information systems analysis, design and integration including enterprise computer information systems types and architecture models, sourcing, development methodologies and life cycle, requirements, analysis and design models, conceptual and logic data modeling, testing and quality assurance, validation and verification. Systems implementation, integration, deployment and maintenance, metrics and economics. Cross listed with CIS 475 course. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 210 or CIS 210 or equivalent, or consent of instructor. CS 390 is recommended.

CIS 576 - Data Management (3 hours)
A study of techniques and processes to help organize, access, protect, and analyze data. Describe data collection, storage, and retrieval methods. Explain data integration and interoperability, including data transfer and exchange standards. Understand why it is important to define policies and procedures for data governance, quality, standards, security, and privacy. Describe different strategies for data analysis. Topics include data warehousing, database registries, data mining, NoSQL, and other Data Science techniques. Cross-listed with CIS 476. For cross-listed undergraduate/graduate courses, the graduate-level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, and CS 571 (recommended). Consent of instructor for all other students with graduate standing.

CIS 580 - Digital Society and Computer Law (3 hours)
Ethical considerations of computer scientists and computer-related security and privacy issues; copyright, patent, trademark, and trade secret issues, deceptive trade practices, computer crime, contract issues, venture capitalists, tax issues, computer torts, constitutional issues, and international trade considerations. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or one semester of computer programming or equivalent.

CIS 588 - Introduction to Expert Systems (3 hours)
Knowledge-based systems design and implementation; expert systems shells and programming environments; validation and implementation of expert systems; case studies/laboratories. Cross-listed as IME 568. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or two semesters of computer programming or equivalent and one semester of statistics, or consent of instructor.

CIS 591 - CIS and IT Project Management (3 hours)
Methods of PMBOK-based management of computer information systems and/or information technology design and development projects, including systems view, main project management process groups and knowledge areas, management plans, project metrics and esti Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 390 or equivalent; or consent of instructor.

CIS 595 - Software and Web Applications Security (3 hours)
Various security concepts, models, methods, technologies, and tools used to design, develop, test, implement, and maintain secure software and Web applications. Topics include but are not limited to threats posed to software and Web applications, software security concepts and protection mechanisms, trust and threat model, authentication and authorization, software risks assessment and management models, secure programming and software development styles and tools. Cross listed with CIS 495. For cross listed undergraduate/graduate courses, the graduate level course will have additional academic requirements beyond those of the undergraduate course. Prerequisite: Graduate standing in CS or CIS, or senior standing in CS or CIS, or CS 390 or equivalent, or consent of instructor.

CIS 607 - File Organization and Management (3 hours)
File organizations and access methods. Sort/merge operations; hashing schemes for storage and retrieval. Projects involve data validation; creation and updating of files; simulation and/or implementation of direct and indexed files. Prerequisite: Graduate standing in CS or CIS, or CS 102 or equivalent.

CIS 681 - Professional Practicum in Computer Information Systems (0 hours)
Special projects under Smith Career Center supervision on student's professional practicum in corporate/business environment in computer information systems and/or information technology, with near-term economic benefit. Satisfactory/Unsatisfactory. Minim Prerequisite: Graduate CIS or CS student in good standing; consent of department chair and graduate program director.

CIS 697 - Advanced Topics in Computer Information Systems (0-3 hours)
Special projects under staff supervision on advanced problems and emerging technologies in computer information systems. May be repeated under different topics for a maximum of 6 semester hours. Prerequisite: consent of instructor.

CIS 698 - Directed Individual Studies in Computer Information Systems (1-3 hours)
Individual study or research/development project in an area of computer information systems relevant to the student's professional goals and not covered in a formal course offered by the Department. May be repeated twice for a maximum of 6 credit hours. Prerequisite: Consent of instructor

CIS 699 - Thesis in Computer Information Systems (3 hours)
Computer information systems research and thesis preparation. Required of candidates choosing the thesis option. Repeatable to a maximum of 6 semester hours. Prerequisite: consent of department chair.