Computer/Information Science (COMS)
COMS 1003 Introduction to Computer Based Systems
ACTS Common Course - CPSI 1003.
Provides students with both computer concepts and hands-on applications. Although little or no prior computer experience is required for this course, keyboarding proficiency is assumed. Topics include PC basics, file maintenance, and hardware and software components. Students will gain experience in the use of Windows, e-mail, the Internet, word processing, spreadsheets, databases, and presentation packages. The integration of software packages will also be covered.
COMS 1011 Programming Foundations I Lab
Offered: Fall, Spring, Summer.
Laboratory for COMS 1013 Programming I course. This course is graded pass/fail.
Note: Previously offered as lab portion of COMS 2104.
COMS 1013 Programming Foundations I
Offered: Fall, Spring, Summer.
Co-requisite: COMS 1011.
Prerequisite: MATH 1113 or higher.
An introduction to the foundational concepts of programming using structured programming concepts of C++ as an implementation tool. Topics include sequential, selection, and iterative control structures, functions, strings, and arrays.
Note: Previously offered as COMS 2104.
COMS 1333 Web and Mobile Technologies
Offered: Fall, Spring, Summer.
An introduction to planning, designing, and maintaining effective web sites on desktop and mobile devices. Topics include how to implement web pages by writing HTML and CSS code; format web pages using text, images, multimedia, and page layout techniques; design responsive sites for mobile technologies; and publish the sites to a web server.
COMS 1403 Orientation to Computing, Information, and Technology
An overview of hardware, software, technology, and information systems concepts and terms as well as ethics and opportunities within the three fields.
Note: Required of all students who have declared a major in Computer Science, Information Systems, or Information Technology.
COMS 1411 Computer and Information Science Lab
An introduction to the computing resources of the department and the university.
COMS 1921 Microsoft Excel
Preparation to pass the Microsoft Office Specialist: Excel Associate Certification exam. Topics covered include creating and managing worksheets and workbooks, creating cells and ranges, creating tables, applying formulas and functions and creating charts and objects.
Credit for this course may be awarded to any student who has already obtained the MOS: Excel Associate certification.
COMS 2003 Microcomputer Applications
Offered: Fall.
This course provides hands-on experience with several software applications. Topics include intermediate and advanced word processing; spreadsheet design, formulas, and charts; database design principles and implementation; presentation design and techniques; and integration among these applications. Students will be required to apply each package on a semester project related to their major.
COMS 2163 Scripting Languages
Offered: Fall, Spring.
An introduction to web program development using modern scripting languages.
COMS 2203 Programming Foundations II
Offered: Fall, Spring.
Prerequisite: COMS 1013 with a grade of "C" or better.
A continuation of Programming I which introduces object-oriented programming as well as other topics, including multi-dimensional arrays, functions, string processing, pointers, structs, and records.
COMS 2213 Data Structures
Offered: Fall, Spring.
A study of abstract data structures and the implementation of these abstract concepts as computer algorithms. Topics include recursion, linked lists, stacks, queues, searching and sorting algorithms, binary trees, and graphs.
COMS 2223 Computer Organization and Programming
Offered: Fall, Spring.
Introduction to organizing and structuring hardware components of computers. Topics include internal data representation, data transfer and control, I/O, memory hierarchy, and programming in assembly.
COMS 2233 Introduction to Databases
This course develops a detailed understanding of a database software package developed for microcomputer applications. Topics include how to design, implement, and access a personal database. Entity relationship diagrams are emphasized in design. The use of macros, data conversion operations, linking, and complex selection operations are used in implementation. Advanced report generation mechanisms are covered along with custom-designed menus and user interfaces.
COMS 2323 Programming in Python
Prerequisite: COMS 2203.
Introduction to the Python programming language where students will learn the basics through advanced concepts including basic data types, control structures, regular expressions, input/output, and textual analysis.
COMS 2333 Web Publishing II
Prerequisite: COMS 1333 or consent of instructor.
This course is a continuation of COMS 1333. Students are introduced to multimedia design concepts and software. Multimedia applications and design tools are used to create and maintain multimedia products such as dynamic graphics, animation, interactive websites, and video.
COMS 2701 Computer Architecture and Networks Laboratory
Laboratory exercises repairing and networking computers.
COMS 2703 Computer Hardware and Architecture
Offered: Fall, Spring.
An introduction to modern computer hardware and architecture. Students receive hands-on experience in building a PC, as well as computer maintenance and troubleshooting skills.
COMS 2713 Survey of Operating Systems
Offered: Spring.
Definition and brief history of computer operating systems, processes and their structure, CPU scheduling, process synchronization, deadlocks, swapping, memory management, paging and virtual memory, storage, secondary storage structure, and basic utility programs.
COMS 2733 Introduction to Computer Forensics and Security
An introduction to the fundamentals of computer forensic technology. The course emphasizes techniques for identifying and minimizing the threats to, and vulnerabilities of computer systems. These techniques include methods and tools for tracking suspicious activity, for recovering and preserving digital media, and for doing post-mortem analysis.
COMS 2803 Programming in C
Prerequisite: MATH 1113 or higher.
For non-computing majors. This course involves the design, coding, debugging, and implementation of programs using the C language. The UNIX operating system is introduced.
Note: May not be taken for credit after the successful completion of COMS 1013.
COMS 2903 Discrete Structures for Technical Majors
Prerequisite: MATH 1113 and a C or better In COMS 2104 or equivalent.
Fundamental mathematical concepts related to computing, including logic and proof techniques; sets, sequences, relations, and functions; combinatorics; algebraic structures and Boolean algebra ; trees and graphs.
COMS 2981 Special Topics
Prerequisite: Permission of the department.
This course will be offered on an "as-needed" basis to cover those topics and subject areas in computing that are emerging in a technological sense, but that do not yet warrant the addition of a new course to the curriculum.
Note: This course may be repeated for credit if course content differs.
COMS 2982 Special Topics
Prerequisite: Permission of the department.
This course will be offered on an "as-needed" basis to cover those topics and subject areas in computing that are emerging in a technological sense, but that do not yet warrant the addition of a new course to the curriculum.
Note: This course may be repeated for credit if course content differs.
COMS 2983 Special Topics
Prerequisite: Permission of the department.
This course will be offered on an "as-needed" basis to cover those topics and subject areas in computing that are emerging in a technological sense, but that do not yet warrant the addition of a new course to the curriculum.
Note: This course may be repeated for credit if course content differs.
COMS 2984 Special Topics
Prerequisite: Permission of the department.
This course will be offered on an "as-needed" basis to cover those topics and subject areas in computing that are emerging in a technological sense, but that do not yet warrant the addition of a new course to the curriculum.
Note: This course may be repeated for credit if course content differs.
COMS 3053 Ethical Issues in Technology
Prerequisite: Junior standing in a computing or related degree.
Ethical issues faced by members of a complex technological society and by professionals in a technology-related field. Topics covered include professional ethics and ethical decision making, as well as issues related to privacy, intellectual property, software development, productivity, and computer crime.
COMS 3163 Web Programming
Offered: Spring.
How to create a dynamic user experience based on the data available on the web application. Topics include database interactions with web-based scripting languages, logic-driven content, data manipulation, form validation, session and cookie management, security, and other concepts.
COMS 3213 Algorithm Design and Analysis
Offered: Fall.
Prerequisite: COMS 2213.
Concepts, implementation, and application of trees, hashing, graphs, and other advanced data structures will be studied.
COMS 3233 Database Design and Implementation
Prerequisite: COMS 2203.
The design and implementation of relational database systems, including conceptual design and normalization. Students will also gain experience in database and query implementation using a DBMS and SQL.
COMS 3243 Data Mining
Offered: Spring.
Prerequisite: COMS 3233 and 3 hours statistics.
Introduction to knowledge discovery from large databases: terminology, algorithms, methodologies, software, limitations, implications, and current trends. Students will implement and evaluate data mining techniques.
COMS 3313 Software Engineering
Offered: Spring.
Prerequisite: COMS 3213.
Software engineering fundamentals. Topics include analyzing system requirements, applicable methods of design, verification and validation, team software development, software project management, and building large, and reliable software systems.
Note: Course previously offered as COMS 4163.
COMS 3363 Server Administration
Offered: Fall.
The tools and techniques needed to administer a server, including installation, configuration, and administration of a variety of servers on different platforms.
Note: Course previously offered as COMS 4313.
COMS 3373 Data Center Operations
Offered: Spring.
An overview of the construction, design, and utilization of a data center, for IT professionals. The course will start with physical realities of data center design and construction, and proceed to discussion on data center level networking, storage requirements, server utilization, and common administrative tasks in a data center environment.
COMS 3413 App Development
Offered: Fall.
Development of native and web applications for mobile devices with an emphasis on security.
COMS 3503 Visual Programming
Offered: Spring of even years.
Prerequisite: COMS 2213.
The design and development of event-driven programs using an object-oriented visual programming language.
COMS 3513 Administering and Using the IBM Platform
Prerequisite: COMS 1013.
This course is an introduction to the operations of the IBM midrange computer system. Topics include architecture, system security, user interface, and work management. Coverage will also extend to applications and programming using an introduction to DB2 and RPG.
COMS 3523 Human Factors in Information Technology
Prerequisite: Junior standing in a computing or related degree.
A study of the major factors involved in Human-Computer Interaction. A system- oriented, multi-disciplinary approach to understanding the human considerations in the design, testing, implementation, and administration of computer-based systems and information technology.
COMS 3703 Advanced Operating Systems
Basic operating system concepts and structures, CPU management, sharing resources (disks, networks, and processors), process management, threads, CPU scheduling, synchronization, deadlocks, memory management, segmentation, paging, swapping, file/device management, protection mechanisms, distributed systems, Unix/Linux environments and kernel internals, shell script programming, Unix/Linux file system, and case studies.
COMS 3903 Systems Software and Architecture
Prerequisite: COMS 1013.
This course covers the implementation of production operating systems, the fundamentals of digital logic, and machine architecture.
Note: This course does not count as credit toward a degree in Computer Science.
COMS 3913 Advanced Discrete Structures
Advanced topics in discrete mathematics applicable to modeling, analysis, and computer theory. Topics include relations, graphs, analysis of algorithms, and computability.
COMS 4033 Information Systems Analysis and Design
Offered: Fall.
Prerequisite: COMS 3233.
The application of concepts, tools, procedures, and techniques involved in the development of information systems. Emphasis is placed on the systems approach to problem solving, user involvement, the management of quality, project control, and teamwork.
COMS 4043 Systems Analysis and Design II
Prerequisite: COMS 4033.
A continuation of COMS 4033, with emphasis on the application of the theory and techniques covered in the previous course. Students will research, analyze, design, implement, test and document a complete system. Students, working as a team, will analyze, plan, implement, document, and present a complete system in a real world environment.
COMS 4053 Information Systems Resource Management
Offered: Spring.
Prerequisite: Junior standing in a computing or related degree.
A study of the principles and concepts involved in the management of organizational maintenance of all information resources, including hardware, software, and personnel. Includes coverage of departmental functions within computer/information services, as well as legal, ethical, and professional issues, quality management, and the strategic impact of information systems.
COMS 4063 IT Project Administration
Offered: Fall.
Prerequisite: Junior standing in a computing or related degree.
A thorough introduction to the art and science of Project Management, as applied in the domain of information technology. Theories, best practices, and tools of project management are studied in relation to the completion of a successful project life cycle.
COMS 4103 Organization of Programming Languages
Offered: Fall.
This course emphasizes the comparative structures and capabilities of several programming languages. Major emphasis will be placed on language constructs and the run-time behavior of programs.
COMS 4133 Application Program Development
Offered: Fall of odd years.
Prerequisite: COMS 2213.
Object-oriented application development, including 00 Programming, three-tier design, and model-driven development. Students will develop and present their own large-scale application program.
COMS 4213 Database Administration
Offered: Spring.
Prerequisite: COMS 3233.
A comprehensive foundation in the planning, implementation and execution of database management policies and procedures. Topics include installation, storage and replication implementation, security management, indexing and performance tuning, and backup and recovery.
COMS 4353 Artificial Intelligence
Offered: Fall of even years.
Prerequisite: COMS 2213.
A comprehensive overview of general concepts and AI history; development and exposure to different artificial intelligence systems; planning, learning, and reasoning techniques; pattern recognition and natural language processing.
COMS 4403 Compiler Design
This course covers syntax translation, grammars and parsing, symbol tables, data representation, translating control structures, translating procedures and functions, processing expressions and data structures, and multipass translation. Students will design a computer language and implement the compiler.
COMS 4413 Parallel and Distributed Computing
Offered: Spring.
An introduction to the concepts and design of parallel and distributed computing systems. Topics include data versus control parallelism, shared versus distributed memory, message passing Interface (MPI) and topoligies, parallel and distributed algorithms.
COMS 4701 Data Communications and Networking Lab
Students will complete network lab exercises in support of COMS 4703.
COMS 4703 Data Communications and Networks
Prerequisite: COMS 2703.
Basic elements and functional aspects of the hardware and software required to establish and control data communications in a stand-alone or network environment. Topics include communication protocols, media, network topologies, and system support software. Participation in a designated lab outside of the regularly scheduled meeting time is required.
COMS 4710 Heterogeneous Networks Lab
Students will complete network lab exercises in support of COMS 4713.
COMS 4713 Networking Practicum
Offered: Spring.
Prerequisite: COMS 3373.
This course provides practical hands-on skills in a networked environment. Topics covered include group policy, user management, licensing, and emerging trends in the field.
COMS 4801 Special Methods in Computer Science Education
Offered: as needed.
Prerequisite: Admission to student teaching phase of the teacher education program.
Exploration of the principles of curriculum construction, teaching methods, use of resources, and evaluation as related to teaching computing.
COMS 4813 Teaching Methods in Computer Science Education
Offered: as needed.
Prerequisite: Admission into Stage II of teacher education program and minimum 75% of required COMS courses completed.
A methods course designed to prepare beginning educators for effective teaching in a computer science (or related) program.
COMS 4913 Capstone I
Offered: Fall, Spring.
Prerequisite: Senior standing.
The first course in a two-course sequence where students will formulate teams, choose a real-world project, create a proposal, and plan the project to be developed in the second course.
COMS 4923 Capstone II
Prerequisite: COMS 4913.
A continuation of Capstone I with an emphasis on the development, testing, and deployment phase of the project based on the proposal presented in the previous course. Students will work in teams to develop and present their project in a real-world environment.
COMS 4931 Internship
Prerequisite: Junior standing in a computing or related degree.
A supervised, practical experience providing computing majors with hands-on professional experience in a position relating to an area of career interests. The student should secure an approved internship prior to course enrollment. During the internship, the student will submit regular reports regarding their internship experience.
COMS 4932 Internship
Prerequisite: Junior standing in a computing or related degree.
A supervised, practical experience providing computing majors with hands-on professional experience in a position relating to an area of career interests. The student should secure an approved internship prior to course enrollment. During the internship, the student will submit regular reports regarding their internship experience.
COMS 4933 Internship
Prerequisite: Junior standing in a computing or related degree.
A supervised, practical experience providing computing majors with hands-on professional experience in a position relating to an area of career interests. The student should secure an approved internship prior to course enrollment. During the internship, the student will submit regular reports regarding their internship experience.
COMS 4951 Undergraduate Research in Computer and Information Science
Offered: On demand.
Prerequisite: Departmental approval.
Advanced students carry out independent research activity relating to a significant problem in a major field of study. Supervised by faculty member. Formal report and presentation required. One to four credits depending on problem selected and effort made.
COMS 4952 Undergraduate Research in Computer and Information Science
Offered: On demand.
Prerequisite: Departmental approval.
Advanced students carry out independent research activity relating to a significant problem in a major field of study. Supervised by faculty member. Formal report and presentation required. One to four credits depending on problem selected and effort made.
COMS 4953 Undergraduate Research in Computer and Information Science
Offered: On demand.
Prerequisite: Departmental approval.
Advanced students carry out independent research activity relating to a significant problem in a major field of study. Supervised by faculty member. Formal report and presentation required. One to four credits depending on problem selected and effort made.
COMS 4954 Undergraduate Research in Computer and Information Science
Offered: On demand.
Prerequisite: Departmental approval.
Advanced students carry out independent research activity relating to a significant problem in a major field of study. Supervised by faculty member. Formal report and presentation required. One to four credits depending on problem selected and effort made.
COMS 4981 Seminar in Computer and Information Science
Prerequisite: Permission of department.
A directed seminar in an area of computer and information science. Seminars will focus on topics relating to emerging technologies which are beyond the scope of other computer and information science courses.
Note: This course may be repeated for credit if course content differs.
COMS 4982 Seminar in Computer and Information Science
Prerequisite: Permission of department.
A directed seminar in an area of computer and information science. Seminars will focus on topics relating to emerging technologies which are beyond the scope of other computer and information science courses.
Note: This course may be repeated for credit if course content differs.
COMS 4983 Seminar in Computer and Information Science
Prerequisite: Permission of department.
A directed seminar in an area of computer and information science. Seminars will focus on topics relating to emerging technologies which are beyond the scope of other computer and information science courses.
Note: This course may be repeated for credit if course content differs.
COMS 4991 Special Problems in Computer and Information Science
Prerequisite: Permission of department.
This course will allow the student to work individually or as part of a small team to study and design practical computerized systems in order to solve problems of particular interest. This course may be used to offer a variety of subjects that strengthen the student's knowledge in areas not covered by other course offerings.
COMS 4992 Special Problems in Computer and Information Science
Prerequisite: Permission of department.
This course will allow the student to work individually or as part of a small team to study and design practical computerized systems in order to solve problems of particular interest. This course may be used to offer a variety of subjects that strengthen the student's knowledge in areas not covered by other course offerings.
COMS 4993 Special Problems in Computer and Information Science
Prerequisite: Permission of department.
This course will allow the student to work individually or as part of a small team to study and design practical computerized systems in order to solve problems of particular interest. This course may be used to offer a variety of subjects that strengthen the student's knowledge in areas not covered by other course offerings.
COMS 4994 Special Problems in Computer and Information Science
Prerequisite: Permission of department.
This course will allow the student to work individually or as part of a small team to study and design practical computerized systems in order to solve problems of particular interest. This course may be used to offer a variety of subjects that strengthen the student's knowledge in areas not covered by other course offerings.