Academic Catalog

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.

Note: This course may not be taken for credit after completion of COMS 2003 or BUAD 2003.
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.
Prerequisite: COMS 1003 or BUAD 2003.

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.
Prerequisite: COMS 1333 and COMS 2203.

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.
Prerequisite: COMS 2203 with a grade of "C" or better, and MATH 2703.

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.
Prerequisite: COMS 2203 and MATH 2703.

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.
Prerequisite: COMS 1333, COMS 2213 and COMS 3233.

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.
Prerequisite: COMS 2703 and 2713.

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.
Prerequisite: CSEC 2223 and COMS 3363.

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.
Prerequisite: COMS 1333 and COMS 2213.

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  
Offered: Fall, Spring Prerequisites: COMS 2213 and COMS 2223.

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  
Prerequisite: COMS 2203, COMS 2903 and MATH 2914.

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.
Prerequisite: COMS 2213 and COMS 2223.

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  
Prerequisite: COMS 2223, COMS 3213 and COMS 4103.

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.
Prerequisite: COMS 2703 and COMS 3703.

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.