Computer and Information Systems (CIS)

CIS 523  |  Mobile Development in Android  |  3 cr

Examines existing tools, environments and programming languages for developing applications for mobile devices on the Android platform. Explores current research on mobile applications and future trends. Multi-career cross-listing: CSCI 323.

Prerequisites: CSCI 242 with C or better, or consent of instructor.

Offered: Fall.

CIS 524  |  Mobile Development in iOS  |  3 cr

Examines existing tools, environments and programming languages for developing applications for mobile devices on the iOS platform. Explores current research on mobile applications and future trends. Multi-career cross-listing: CSCI 324.

Prerequisites: CSCI 242 with C or better, or consent of instructor.

Offered: Spring.

CIS 540  |  Data Structures and Algorithm Design  |  3 cr

Study of the design, implementation and analysis of computer algorithms; time and space requirements for sorting, searching, graph theory, mathematics and string processing algorithms. Not open to those with credit in CSCI 340. Multi-career cross-listing: CSCI 340.

Prerequisites: CSCI 242 with B or better or consent of instructor.

Offered: Spring.

CIS 570  |  Operating Systems  |  3 cr

Operating system concepts, process definition and implementation, dead-lick, memory management and protection, distributed system architecture, and case studies. Not open to those with credit in CSCI 370. Multi-career cross-listing: CSCI 370.

Prerequisites: CSCI 242 with C or better.

Offered: Fall.

CIS 605  |  Artificial Intelligence  |  3 cr

Introduces Artificial Intelligence (AI) techniques that include search, game playing, and knowledge representation. Includes specific subdisciplines of AI including natural language processing and neural networks. Programming assignments in both Prolog and LISP. Not open to those with credit in CSCI 405. Multi-career cross-listing: CSCI 405.

Prerequisites: CSCI 333, or CIS 533 with a grade of C or better, or consent of instructor.

Offered: Occasionally.

CIS 611  |  Data Science Programming and Visualization  |  3 cr

Surveys common programming languages for data science with visualization. Explores the development of applications for data-centric software used to visualize and extract actionable knowledge and insights from a collection of heterogeneous data sources that answer specific scientific, socio-political, or business questions. Not open to those with credit in CSCI 411. Multi-career cross-listing: CSCI 411.

Prerequisites: CSCI 410 or CIS 710 or consent of instructor.

Offered: Spring.

CIS 612  |  Data Mining and Machine Learning  |  3 cr

Explores data mining methods and procedures for diagnostic and predictive analytics. Includes association rules, clustering algorithms, tools for classification, and ensemble methods. Emphasizes computer implementation and applications. Multi-career cross-listing: CSCI 412. Not available for students with credit in: CSCI 412.

Prerequisites: CSCI 410 or CIS 710 or consent of instructor.

Offered: Fall.

CIS 613  |  Big Data Analysis  |  3 cr

Introduces the efficient processing of large data sets, including non-relational databases and algorithms that allow for the distributed processing of large data sets across clusters. Not open to those with credit in CSCI 413. Multi-career cross-listing: CSCI 413.

Prerequisites: CSCI 410 or CIS 610 or consent of instructor.

Offered: Occasionally.

CIS 614  |  Deep Learning  |  3 cr

Introduces deep learning, a branch of Machine Learning inspired by the human brain network. Explores several types of neural network architectures (e. g., feedforward, convolutional (CNN), and recurrent (RNN) networks). Covers building a Natural Language Processing (NLP) based sentiment analysis system with Long short-term memory (LSTM) neural network.

Prerequisites: CSCI 309 and 411; or CIS 611 and 710; or consent of instructor.

Offered: Occasionally.

CIS 615  |  Data Science/Machine Learning Project  |  3 cr

Develops practical experience via a data science research project, including applying various machine learning models, researching concepts, and preparing research articles. Multi-career cross-listing: CSCI 415. Not available for students with credit in: CSCI 415.

Prerequisites: CSCI 410 or CSCI 405 or CIS 605 or CIS 710 or instructor consent.

Offered: Occasionally.

CIS 620  |  Computer Graphics  |  3 cr

Graphics hardware and software, techniques for representation and visualization, two- and three- dimensional transformations, concepts and techniques of visual realism. Not open to those with credit in CSCI 420. Multi-career cross-listing: CSCI 420.

Prerequisites: CSCI 340 or CIS 540 or consent of instructor.

Offered: Occasionally.

CIS 621  |  Computer Vision  |  3 cr

Reviews algebra of matrices and partial differentiation. Introduction to Machine Vision and Image Processing including image formation, thresholding, image filtering, edge detection, image segmentation, image data compression, image similarity and some dynamic vision. Multi-career cross-listing: CSCI 421.

Prerequisites: CSCI 242 with a grade of C or better.

Offered: Occasionally.

CIS 624  |  Advanced Business Data Communications  |  3 cr

Fundamentals of transmission protocols and network services. Setting up and configuring network protocols, routing, security, and networking services such as name resolution and dynamic addressing. Lab exercises and case studies. Not open to those with credit in MIS 424. Multi-career cross-listing: MIS 424.

Prerequisites: CSCI 477 or MIS 327.

Offered: Fall.

CIS 625  |  Systems Analysis and Design  |  3 cr

System development using the life cycle, rapid application development, prototyping, software acquisition, structured and object-oriented techniques and project management. Not open to those with credit in MIS 425 or CSCI 475. This course may be offered online. Distance Learning Fees apply if online. Multi-career cross-listing: MIS 425.

Prerequisites: CSCI 380 or MIS 328.

Offered: Spring.

CIS 635  |  Linux System Administration  |  3 cr

Covers Linux system administration concepts and techniques including system organization, kernel configuration, device management, system files and runtime maintenance, software configuration and installation, and network configuration; comparison of Linux with other operating systems. Two-hour lecture; two-hour lab. Enrollment in Lecture (001) and Lab (L081) required. Multi-career cross-listing: CSCI 435. Not available for students with credit in: CSCI 435.

Prerequisites: CSCI 275 with grade of C or better.

Offered: Spring.

CIS 640  |  Compiler Design and Implementation  |  3 cr

Theory, design and implementation of compilers and other syntax-directed systems. Applies techniques of finite state machines, lexical analysis, symbol tables, parsing, storage allocations and code generation to the development of a compiler. Laboratory work included. Multi-career cross-listing: CSCI 440. Not open for students with credit in CSCI 440.

Prerequisites: CSCI 333 or CIS 533.

Offered: Occasionally.

CIS 641  |  Advanced Project Management Tools and Techniques  |  3 cr

Covers advanced tools and techniques of project management, including Microsoft Project, and Microsoft Excel, Work Breakdown Structure (WBS), budgeting a project, scheduling a project using PERT/CPM, allocating scarce resources, critical chain and critical path, resource leveling, monitoring the project costs, evaluating and terminating a project. Not open to those with credit in PMGT 441. Multi-career cross-listing: PMGT 441.

Prerequisites: PMGT 341 or MBA 716 or CIS 676.

Offered: Yearly.

CIS 642  |  Project Management Simulation  |  3 cr

Students apply project management skills to a simulated or live project, develop project justification and project plan, and execute the project plan and track performance. Topics include project scheduling, risk analysis, earned value, and teamwork. Not open to those with credit in PMGT 442. Multi-career cross-listing: PMGT 442.

Prerequisites: PMGT 341 or MBA 716 or CIS 676.

Offered: Yearly.

CIS 644  |  Event-Driven Programming  |  3 cr

Origins of events; the event-driven programming model; interrupt processing as event handling; client-server architectures; windowing environments and GUI programming; development support software; and case studies. Project work included. Not open to those with credit in CSCI 444. Multi-career cross-listing: CSCI 444.

Prerequisites: CSCI 370 or CIS 570 or consent of instructor.

Offered: Occasionally.

CIS 645  |  Web Application Security  |  3 cr

Explores vulnerabilities and defenses of web-based software systems. Covers web architecture, document security, authentication and attacks and defenses of client-side controls, authentication, session management, access controls, data stores and back-end components. Multi-career cross-listing: CSCI 445. Not available for those with credit in: CSCI 445.

Prerequisites: CSCI 242 or 322 with a grade of C or better (in either).

Offered: Occasionally.

CIS 669  |  Embedded Systems Designs  |  3 cr

Covers firmware and hardware development. Includes assembly and/or C programming of micro-controllers, interrupt processing, basic hardware and logic design, programming micro-controller peripherals like Analag/Digital Converters (ADC & DAC), timers, Pulse Width Modulation (PWM), comparators, programming and using serial interfaces, basics of printed boards design. Multi-career cross-listing: CSCI 469.

Prerequisites: CSCI 245.

Offered: Fall.

CIS 674  |  Client/Server Development  |  3 cr

Explores server-side application programming concepts. Includes server architectures, communication protocols, relational databases and database connectivity, dynamic content delivery and communication security. Multi-career cross-listing: CSCI 424.

Prerequisites: CSCI 324 or CIS 524 with C or better (in either).

Offered: Fall.

CIS 675  |  Software Engineering Principles and Practice I  |  3 cr

An Introduction to UML design and teamwork in the development of a larger software system. The use of UML use case, activity, class/object, interaction, and state diagrams in the creation of efficient designs and systems. Not open to those with credit in CSCI 475. Multi-career cross-listing: CSCI 475.

Prerequisites: CSCI 242 with B or better or consent of instructor.

Offered: Fall.

CIS 676  |  Software Engineering/Project Management  |  3 cr

Software development from an engineering perspective including software development models, team organization and management, implementation strategies, software testing and verification, and project cost estimation. Students will demonstrate their mastery of software engineering design and development strategies through implementation of a significant team-based project. Not open to those with credit in CSCI 476. Multi-career cross-listing: CSCI 476.

Prerequisites: CIS 625 or 675.

Offered: Spring.

CIS 677  |  Computer Communications and Networks  |  3 cr

Examines transmission protocols, layered network protocols, network topology, message routing, performance analysis, security, and case studies. Not open to those with credit in CSCI 477. Multi-career cross-listing: CSCI 477.

Prerequisites: B or better in CSCI 242, or CIS 570 or consent of instructor.

Offered: Occasionally.

CIS 678  |  Network Security  |  3 cr

Computer and network security related to operating systems, networks and system administration issues; hacking; incident response; firewalls, VPNs; intrusion detection, and auditing. Not open to those with credit in CSCI 478. Multi-career cross-listing: CSCI 478.

Prerequisites: CSCI 370, CSCI 375 or MIS 327.

Offered: Spring.

CIS 680  |  Advanced Databases  |  3 cr

Reviews relational database languages such SQL and Relational Algebra, query optimization techniques. Non-relational database models including object-oriented databases. XML databases, deductive databases. Data mining, transaction management, concurrency control, text retrieval, and web data management. Not open to those with credit in CSCI 480. Multi-career cross-listing: CSCI 480.

Prerequisites: CSCI 380 with C or better.

Offered: Occasionally.

CIS 681  |  Security Risk  |  3 cr

Focuses on risk analysis, including qualitative, quantitative, and ethical risk. Involves investigating an industry or topic of choice, delving into sources of risk information, researching regulation and statistics, and developing a comprehensive analysis of risk related to the selected topic. Multi-career cross-listing: CSCI 481. Not available for students with credit in: CSCI 481.

Prerequisites: CIS 678 or CIS 779.

Offered: Occasionally.

CIS 690  |  Special Topics in Computer and Information Systems  |  3 cr

In-depth study of new and/or special-interest subject areas within the discipline. May repeat with different topic.

Prerequisites: Consent of instructor.

Offered: Occasionally.

CIS 710  |  Data Science for Computer Information Systems  |  3 cr

Examines key data science concepts, methods, and processes. Addresses issues for developing, managing and supporting data-driven decision-making in the organization. Provides knowledge and tools for incorporating data science into IT project workflows including data analytics, data warehousing, machine learning, and artificial intelligence.

Prerequisites: CSCI 242 or CIS 774 or concurrent enrollment in CIS 774.

Offered: Fall.

CIS 774  |  Programming Paradigms  |  3 cr

Explores a variety of computer programming paradigms such as functional, logic, declarative, procedural, concurrent, multi-paradigm and block-based coding. Requires developing computer programs in at least four paradigms.

Prerequisites: CSCI 241.

Offered: Fall.

CIS 779  |  Information System Security  |  3 cr

Introduces technical, administrative, and physical aspects of IT security. Includes fraud, risk, information protection, business continuity, network security, auditing, and security planning and governance.

Prerequisites: CSCI 380 or MIS 328 or CIS 774 or consent of instructor.

Offered: Spring.

CIS 790  |  Advanced Topics in Computer and Information Systems  |  3 cr

In-depth study of new and/or special-interest subject areas within the discipline. Subject selection will vary from offering to offering.

Prerequisites: Consent of instructor.

Offered: Spring.

CIS 793  |  Internship  |  1-2 cr

Participation in the technical activities of an ongoing organization under the joint guidance and supervision of a member of the organization and a member of the faculty. Grading will be on a credit/no credit basis. May be repeated for a maximum of 6 credits.

Prerequisites: Consent of instructor and department chair.

Offered: Fall, Spring, Summer.

CIS 795  |  Research Methods in Computer and Information Systems  |  3 cr

Explores research methods used in the computer and information systems discipline including quantitative and qualitative methods. Reviews current research in CIS.

Prerequisites: A minimum of 6 credits in CIS courses.

Offered: Yearly.

CIS 796  |  Computer and Information Systems Project  |  1 cr

Completion of a CIS project in conjunction with another 600- or 700-level CIS course; includes project documentation and oral and written reports.

Prerequisites: Consent of instructor.

Offered: Occasionally.

CIS 798  |  Computer and Information Systems Seminar  |  1 cr

Social, legal and ethical issues in computing, including: privacy, encryption, reliability and risk, free speech, computer crime, intellectual property rights. Personal and professional ethics. An emphasis will be placed on students further developing nontechnical professional skills, including writing and oral presentations.

Prerequisites: Consent of instructor.

Offered: Spring.

CIS 799  |  Independent Study  |  1-4 cr

Independent work on a specific problem in CIS under the supervision of faculty.

Prerequisites: Consent of instructor and department chair.

Offered: Fall, Spring.