COM 104 Computer Solutions to Information Problems
Students will enhance their abilities to manage, analyze and
present information by using modern computer technologies.
Emphasis will be put on problem definition, structured solution of
subordinate problems and identification of appropriate problem solving
methodologies. Laboratory work will use three principal
types of computer applications: databases for management of
information, spreadsheets and other programs for information
analysis, and word processing, HTML documents and PowerPoint for
effective
information presentation. Other topics include web page and web site
creation, information security issues including firewalls and antivirus
programs, the societal effects of information
technologies, and an introduction to
programming. This course satisfies the University’s liberal arts core
requirement in Computer Science. (3 s.h.) (offered F, I, S, Su)
COM 201 Introduction to Computer Science I
The first of a two semester introduction to concepts of computer science,
emphasizing computer programming. The C# programming language provides a
more accessible introduction to structured and object-oriented programming than
previous languages. Students also enhance proficiencies in using
application software such as web page development. COM 201 is prerequisite
to all higher courses in Computer Science and Computer Information Systems and
familiarizes students of mathematics, other sciences or business with techniques
of information processing and mathematical modeling. No previous
programming experience is expected. Prerequisite: MAT 112 or its
equivalent. This course satisfies the University’s liberal arts
core requirement in Computer Science. (4 s.h.) (F)
COM 202 Introduction to Computer Science II
The second semester of a general introduction to computer science, emphasizing
computer programming. The C++ language continues the development of
object-oriented programming techniques from the C# foundation of COM 201.
The course is designed to meet the needs of science, engineering and mathematics
majors in gaining facility with the techniques of modeling and analysis, and to
equip Math Education majors with programming skills for use in the classroom.
Emphasis continues on systematic problem solving and the use of powerful
programming tools such as the Standard Template Library. Prerequisite:
COM 201. (4 s.h.) (S)
COM 230 Computer Systems Architecture An introduction to computer
architecture. Topics include the levels of computer organization, the organization of processors
and assembly language programming. The assembly language section provides basic concepts
of programming systems and computer architecture, including organization of memory, central processors,
I/O devices, instructions and data types.
Prerequisites: COM 202 and COM/MAT 306. Laboratory arranged. (3 s.h.)
(even F)
COM 241 Visual Programming in the Classroom Modern computer programming
approaches that are rapid in program development, attractive in appearance and intuitive in
use. This course is designed to introduce students to structured programming and to graphical
and event-driven paradigms through the use of Visual Basic for Windows. The emphasis will be
on problem solving using a top-down approach of breaking a major problem or program into more manageable
sub programs or modules. The ease of use of the language and the attractive
visual results should promote use in the classroom, both for computer instruction and for design
of educational demonstrations. Prerequisite: COM 104. (2 s.h.)
COM 300 Numerical Methods Mathematical techniques most needed by those engaged
in computational mathematics. Topics include numerical integration, optimization, polynomial
approximation, matrix inversion, and approximate solutions to boundary value problems.
Prerequisites: COM 201 and MAT 204, with COM 202, MAT 205 and COM/MAT 306 recommended.
Credit in this course may be applied toward a Mathematics major. (3 s.h.) (I
'04)
COM 301 Alternatives in Visual Programming Windows GUI programming
alternatives, particularly the suite of languages that comprise Visual Studio.NET,
are assuming an important place in the computer work environment. This course will equip
future professionals with the concepts and skills of program development using C# and Visual
Basic.NET. Topics will include the Common Language Runtime and the interoperability of the
dotNET languages. Prerequisite: COM 201 (3 s.h.)
COM 302 Introduction to Linux The UNIX operating system is characterized
by its stability and scalability. These
characteristics make it appropriate for mission-critical and server operations. Many network
installations utilize UNIX or LINUX servers connected to clients running varying operating
systems. Born of the need for an inexpensive version of UNIX, LINUX was created in 1991
and in several distributions is increasingly popular. This course primarily studies LINUX,
including installation, security features and networking. Both command-line and graphic interfaces
are explored. Prerequisites: COM 202 or 301. (3 s.h.) (odd S)
COM 303
Introduction to Networking This course covers the fundamental concepts
used in computer networking: network architecture including the OSI and TCP/IP
models, data flow in a network, network design, network protocol configuration
including wireless network protocols. The course incorporates both
lectures and labs in which students work with both physical and logical IP
addressing schemes in a TCP/IP network. The course is essential for
mastery of basic networking concepts and communication between computers.
COM 306 Discrete and Algorithmic Mathematics An introduction to the mathematical
basis of computer science. Includes an introduction to logical reasoning, counting and
finite probability, the rudiments of sets, functions, relations,
mathematical induction and recurrence relations, graph theory, finite state machines, formal languages
and Boolean algebra. Prerequisite: COM 201. (3 s.h.) (odd S)
COM 310 Information Systems Analysis
This first course in object-oriented systems analysis introduces the Uniform
Process. Students participate in all phases of systems and software
development during the major term project. Modeling in UML and an
introduction to the Software Capability Maturity Model, along with other aspects
of project development and management, prepare students for managing and
developing information systems. Prerequisites: COM 202 or COM 301 and
COM/MAT 306. (3 s.h.) (even S)
COM 315 Organization of Programming Languages The structure of programming
languages is explored first through the example of Java. As Java is learned, its design and
operation is contrasted with that of C++ or C#. Concepts such as interpreted language, garbage collection,
a virtual machine, and language portability are developed. Other topics are introduced as additional
languages such as Lisp are also learned in this
course. Prerequisites: COM 202 and COM/MAT 306. (3 s.h.)
(odd S)
COM 318 Database Management Systems The study of database management systems
introduces the theory of the relational model, entity-relationship diagrams,
functional dependencies, and normalization. A term project requires
students to design and implement a database using MS Access. Students will
write SQL for database definition and for efficient information retrieval.
Other topics may include stored procedures, database assertions, database
programming, transaction processing, and database recovery and security.
The course provides the theoretical understanding for making informed design
decisions as well as the practical skills needed for the management of or
participation in the development of database information systems.
Prerequisites: COM 202 or COM 301. (3 s.h.)
(odd F)
COM 320 Structure and Logic of Digital Computers An introduction to the internal
structure of digital computers. Topics include design of gates, flip-flops, registers and memories
for operations on numerical and other data represented in binary form. Prerequisites:
COM 202 and COM/MAT 306. (3 s.h.) (F '03)
COM 322 Operating Systems Operating systems are sets of
software that serve users by managing all the resources which we describe as a computer. Distinguished
from applications, operating systems are responsible for controlling processes, storage management
and internal security and protection. If computers are networked, the operating system
is further responsible for managing and cooperating with the shared resources. All these concepts
are the subject of this course. Prerequisite: COM 202. (3 s.h.)
COM 340 Algorithms and Objects in C++ Programming techniques for creating
efficient solutions to fundamental computer problems are developed using object classes and C++.
Concepts of data structures are extended to include reusable program modules containing both information
and algorithmic methods. Algorithms explored include those for searching, sorting, string processing
and graphing. Introduction to complexity and efficiency analysis. The course’s dual emphasis
is the understanding of principal algorithmic problem-solving techniques and the application of these
techniques using C++ object-oriented programming. Prerequisites: COM 202 and COM/MAT 306. (3 s.h.)
(even F)
COM 390 Special Topics in Computer Application Provides experience in all areas
of computing. Students participate in solving a significant information processing problem.
Interested students should contact the instructor for specific topics for
that term. May be repeated with change in topic. Prerequisites: COM 202 and
COM/MAT 306. (3 s.h.)
COM 395 Internship A phase of practical on-the-job training. Students
may acquire experience in applying their learning in
the areas of either computer hardware or software at local firms
that use computers as a major computing tool. Prerequisites: COM 202, COM/MAT 306,
and approval of a Computer Science faculty member and the student’s academic advisor. (2-4 s.h.)
COM 490 Senior Seminar A capstone experience drawing on skills and understanding
developed throughout the undergraduate program. Significant attention is given to weaving the various
strands of the programs into a coherent whole, as well as
refining writing and presentation skills in forms appropriate to the discipline.
Prerequisite: at least 9 s.h. of 300-level
coursework in Mathematics or Computer Science. (1 s.h.) (S)