Academics
About Christian
Liberal Arts
Academic Programs
and Majors
Academic
Records Office
Adult Degree
Programs
Catalog
Course Descriptions
Faculty List
Learning Resources
Off-Campus
Programs
Office of the
Academic Dean
Web Sites for
Departments
|
Computer Science Course Descriptions
CSCI 115 Perspectives on Computing (3, OD)
An overview of how computers process, transmit, and store
information. Designed for the non-major and includes many
applications and issues found in contemporary culture. For
example, privacy issues related to databases maintained by
insurance companies or protection of intellectual property in
light of increasingly popular file sharing applications. There
are no prerequisites. This does not count toward a major or
minor in computer science.
CSCI 211 Programming I (3, F)
This course covers the fundamentals of object-oriented
programming utilizing the Java programming language. This first
programming course provides students with basic Java programming
concepts, data types, operators, flow control statements,
objects, classes, methods, arrays, strings, applications,
applets, and graphics user interfaces.
CSCI 218 Programming II (3, S)
This course extends the concepts learned in Programming I. It
covers some advanced features of Java including advanced
graphical user interfaces, exceptions, threads, graphics,
multimedia, input/output, and networking.
Prerequisite: CSCI 211
CSCI 214 Discrete Mathematics (3, S06, 08)
Topics include: sets, functions, relations (incl. Partial
order), methods of propositional logic, introduction to
predicate logic, counting, recurrence relations, asymptotic
analysis, proof (incl. Induction), introduction to probability,
and graphs.
CSCI 226 Computer Architecture (3, S06, 08)
Structure and internal organization of digital computers.
Machine language and assembly language, representation of
numbers, CPU organization, subroutines and linkage.
Prerequisite: CSCI 211 or equivalent proficiency
CSCI 236 Data Structures and Algorithms (3, F)
This course covers the fundamental data structures of computer
science and accompanying algorithms. Linked Lists, Stacks,
Queues, Binary Trees, Priority Queues, Heaps and other ADTs will
be included. Classical sorting and searching algorithms will be
learned and implemented.
Prerequisite: CSCI 218
CSCI 245 Software Engineering (3, 07, 09)
This course covers both a theoretical and a practical foundation
in software engineering. In the theoretical part, it covers
principles and methods of software engineering, including
requirements, specification, design, implementation, testing,
validation, operation, and maintenance. In the practical part,
it covers the development of software products from an industry
perspective, including generation of appropriate documents.
Prerequisite: CSCI 218.
CSCI 326 Operating Systems (3, F06, 08)
A study of computer architecture at the register level.
Management of the processor, memory, peripheral devices, and
information. Interrelationships of architecture and operating
systems. Performance evaluation. Exposure to system manager
responsibilities in UNIX and Windows. Prerequisite: CSCI 226 and
CSCI 236 or permission
CSCI 328 Foundations of Computing (3, F05, 07)
This course covers the introduction to the classical and
contemporary theory of computation including regular,
context-free, and computable (recursive) languages with finite
state machines, pushdown automata, and Turing machines. It also
covers the historical reasons and the need that gave rise to
many different programming languages and discusses the features
of the most successful and more influential of them. The
similarities and the differences among procedural, functional,
object-oriented, logic as well as parallel programming languages
will also be covered.
CSCI 331 Web Programming (3, F06, 08)
This course covers the new programming models that are used to
support Web applications. It covers software design, interface
design, the development side of Web applications. It helps the
students learn how to build software that accepts information
from users across the Web and returns data to the user, and
understand how to interact with database engines to store and
retrieve information. Specific topics that are included are
HTML, XML, JSP (Java Server Page) and Java servlets.
Prerequisite: CSCI 218
CSCI 336 Programming III (3, S07, 09)
This course covers J2EE (Java Enterprise Edition). The topics
will include how to develop n-tier applications, design various
application architectures based on the J2EE platform, and
enterprise technologies - JDBC, RMI, JNDI, EJB, JMS, and JINI.
Prerequisite: CSCI 236
CSCI 340 Databases (3, S06, 08)
Introduction to relational databases. Fundamentals of database
design and query design. Database management topics include
security, integrity, and concurrency techniques. Use of
relational database software (including SQL) for application
projects. Topics include decision-based and object-based
databases. Exposure to database manager responsibilities.
Prerequisite: CSCI 218 or permission
CSCI 344 Enterprise Application Integration (3, F05, 07)
EAI overview, types of legacy systems, EAI and e-business,
data-level EAI, application interface-level EAI, method-level
EAI, user interface-level EAI, middleware models, RPCs,
messaging (Microsoft MSMQ and IBM MQ Series), distributed
objects, Java middleware, WML basics.
Prerequisite: CSCI 336 and CSCI 331
CSCI 420 Networking (3, S05, 07)
An introduction to the basics of data communication and
networking. Topics include the OSI model, physical processes
used for digital transmission, standardization, local area
networks, the network protocols, and network applications.
Exposure to network manager responsibilities in UNIX and Windows
NT.
Prerequisite: CSCI 326 or permission
CSCI 428 IT Architectures (3, S08, 10)
The course focuses on the principles and priorities of
enterprise systems design, emphasizing the new requirements
brought by e-commerce and distributed integrated systems. It
also discusses middleware technology alternatives, resiliency,
performance and scalability, security, systems management,
information access and accuracy.
Prerequisites: CSCI 336 and CSCI 331
CSCI 480 Senior Capstone: Computer Science Seminar (2, S)
For seniors, except by permission. Required of all computer
science majors.
CSCI 490 Senior Project (3, F)
The senior project allows seniors to participate in a scholarly
endeavor with faculty and other students or in a formally
controlled internship. This project will include at least the
following three components: (1) A review of one or more
scholarly papers from primary literature of computer science;
(2) The writing of a significant scientific paper or substantial
document to give the student experience in writing for a
scientific audience; (3) An oral presentation to students and/or
faculty.
CSCI 391, -2; 491, -2 Independent Study (1, 2 or 3)
CSCI 496 Honors in Computer Science (3)
CSCI 295, -6; 395, -6; 495 Special Topics in Computer Science
(1, 2 or 3, OD)
Previous topics include: wireless Java; Java message service;
wavelets: neural networks; C#; and .NET (Dot NET).
|
|