Brief Descriptions of CIS Courses
2007 - 2009
Shown here are brief descriptions of each CIS course in the 2007-2009 Saint
Vincent College Bulletin. Some details and updates have been added beyond what is shown
in the Bulletin itself. (Note that further information about how a course is currently being
taught can often be found out from the instructor.)
CS 101 Survey of Computers and Computing
This course presents an overview of current concepts and terminology
related to computers and information processing. It is designed
for students who have had no previous college-level computing
courses. It covers the use of graphical user interfaces, applications
software, and telecommunications in a laboratory environment.
The course is currently using Windows XP and Office 2003.
Not open to CIS majors without departmental approval. Three credits.
CS 103 Animation, the Web, and Security:
Three Views of Computing
This is an introductory, non-majors course. Students learn how to create animated objects
and worlds using the popular Alice software. An animated ice skater in a virtual world will
be used as a key example. Second, students learn different ways of creating web pages.
This might lead into further webpage coursework. Finally, computer and Internet security
issues are investigated. This includes problems such as identity theft, spyware, and
phishing attacks, as well as how to defend against them.
Not open to CIS majors without departmental approval. Three credits.
CS 110 Computing and Information Science I
An introduction to problem solving and computer programming using
the C++ programming language. Topics include algorithms, program
structure, input/output, modularity and parameters, control structures,
data abstraction, arrays, text files, and structured techniques. Three
credits.
CS 111 Computing and Information Science II
A study of advanced programming techniques and applications in
C++ continuing from the point where CS 110 ended. Elementary data
structures and associated algorithms are examined. Topics covered
include arrays, strings, file processing, stacks, queues, linked lists,
objects, and recursion. Prerequisite: CS 110. Offered Spring semester.
Three credits.
CS 170 Discrete Structures I
An introduction to the topics of discrete mathematics which are
appropriate to computing. The major purpose is to help the student
obtain some fluency in specific areas of mathematics and to encourage
the use of the associated techniques within other computing
courses. Topics to be covered include logic, sets, functions, simple
proof techniques, algorithms, counting techniques, basics of graphs
and trees, and simple finite state machines and grammars.
Prerequisite: CS 111 or permission of instructor. Offered Fall semester
alternate years (Fall 2007). Three credits.
(Note that it is helpful to have taken Calculus I first, not that
calculus is used in CS 170, but because of the level of mathematic thought involved.)
CS 171 Discrete Structures II
A continuation of CS 170 with an emphasis on the mathematical and
theoretical foundations of computer science. Topics to be covered
include proofs of correctness, recurrence relations and generating
functions, algorithm analysis, computability theory (using Turing
machines), complexity theory, and grammars. Prerequisite: CS 170.
Offered Spring semester alternate years (Spring 2008). Three credits.
CS 205 Webpage Programming and Design
Topics include basic aspects of good web design, introductions to software packages that facilitate
webpage construction and introductions to scripting and programming languages that add
functionality. This course is intended for both CIS majors and non-majors.
Prerequisite: CS 110. Three credits.
CS 221 Data Structures
The study of data structures and the associated algorithms is developed
in C++ in an object-oriented fashion. This course attempts to
show the value of object-oriented design. Various implementations of
data structures and the efficiency of the associated algorithms are
discussed. Topics to be covered include stacks, queues, keyed
tables, recursion, linked lists, binary trees, B-trees and other types of
trees, sorting, searching, hash functions, and external sorting.
Prerequisite: CS 111. Offered Spring semester. Three credits.
CS 225 Computer and
Network Security
This course examines both the theory and practice of computer and
network security. Topics include cryptography, spyware, viruses,
sniffers, rootkits, back doors, network attacks, Trojan horses, intrusion
detection, and firewalls. Examples of attacks and how to protect
against them will be drawn from both the Windows and Unix/Linux
worlds. Hands-on exercises are included. Prerequisite or concurrent:
CS 111 or permission of instructor. Three credits.
CS 230 Computer Architecture and Assembly Language
A study of the fundamentals of machine architecture and assembly
language programming is conducted. This course emphasizes the
relationships between computer organization (hardware) and programming
components (software). Assembler for typical Intel processors is used.
Prerequisite: CS 111. Offered Fall semester. Three credits.
CS 250 User Interface Design
Good decisions involving the design of a user interface can lead to
programs that are easier for end users to execute. Code that is written
by programmers who are sensitive to ergonomic issues will execute
faster, have fewer errors, require less training time and ultimately
give its end user a greater sense of satisfaction. This course will discuss
the many issues involving such human-computer interaction. In addition, course
participants will program interface applications using VB .NET.
Prerequisite: CS 111. Three credits.
CS 251 Introductory Computer Graphics
Computer graphics is the art and science of communicating information
using images that are generated and presented through computation.
This requires the design and construction of models that represent
information in ways that support the creation and viewing of
images, the design of devices and techniques through which the person
may interact with the model or the view, the creation of techniques
for rendering the model, and the design of ways to preserve
the images. In this course, both the mathematical foundations and
practical implementation of these concepts will be explored with the
help of a standard API. Prerequisites: CS 221 and Calculus II (either MA 110 or
MA 112). Three credits.
CS 255 Introduction to Artificial Intelligence
This course will present overviews of the roots of artificial intelligence,
predicate calculus, the importance of search and search techniques,
knowledge representation and knowledge-based problem-solving,
the complexity of natural language and machine learning. In addition
to other assignments, students will be required to complete projects
using PROLOG and LISP, which will be introduced during the course.
Prerequisite: CS 111. Three credits.
CS 270 Introduction to Numerical Computation
An introduction to the algorithms of scientific computation and their
application to problems in algebra and calculus. Topics covered
include number representation, error analysis, programming techniques,
function evaluation, solutions of nonlinear equations, solutions
of linear systems, numerical integration, and solutions of differential
equations. Prior programming experience is not required.
The course will likely teach Fortran 90 and use it to do numerical
analysis. Prerequisite: Calculus I (either MA 109 or MA 111).
Offered Spring semester alternate years (Spring 2008). Three credits.
CS 305 Web Technologies
This course focuses on more complex web technologies than are
covered in CS 205. The majority of the course involves building an ecommerce
site and using webpages as front-ends to server-based
databases. Prerequisite: CS 205 or permission of instructor. Three credits.
CS 310 Programming Languages
This course examines the features, implementation, and design of
programming languages. Various high-level programming languages
representing different programming paradigms will be covered. Java
will be used as the primary example of an object-oriented programming
language. Programming language translation and runtime features
such as storage allocation will be among the topics that are
considered. Prerequisite: CS 230 or permission of instructor. Offered
Spring semester alternate years (Spring 2008). Three credits.
CS 321 Data Communications
This course covers the major areas of data communications and networking.
It uses the ISO layered approach and focuses especially on
the TCP/IP protocols and the Internet. LAN technologies and the
configuration of routers and switches are also included.
Prerequisite (or concurrent): CS 230 or permission of instructor. Three credits.
CS 330
Computer Architecture and Operating Systems
Computer architecture and operating systems are covered using the
multilevel machine approach, with particular attention paid to the
microprogramming level, the conventional machine level, and the
operating system level. Linux and Windows
server operating systems are used as case studies.
Prerequisite: CS 230 or permission of instructor. Offered Spring
semester alternate years (Spring 2009). Three credits.
CS 350 Database Concepts and Information Structures
This is a first course in modeling complex organizations of data. It
includes a review of logical file structures and access methods.
Information structures and databases are studied, with detailed work
using Access and SQL. Prerequisite: CS 111. Offered Fall semester. Three credits.
CS 351 Information Systems Analysis and Design
An investigation of the discipline of systems analysis in relation to the
information system life cycle. Structured and object-oriented techniques
of analysis and design applicable to current system documentation
and the development of general systems solutions are presented.
Topics include process and data flows, I/O designs, and systems
modeling. Problem solving and communication skills employed
in the transition from analysis to design are stressed. Prerequisite: CS
230. Offered Fall semester alternate years (Fall 2008). Three credits.
CS 352 Networked and Large Database Systems
This course primarily discusses topics associated with networked
and large database systems. Issues such as concurrency control,
error recovery, distributed systems, and data warehousing are discussed.
The Oracle database language is studied in considerable detail.
Prerequisite: CS 350. Three credits.
CS 355 Software Engineering
Since good programming involves the systematic mastery of complexity,
one can consider programming to be an engineering discipline
(if we use the term engineering in a wider sense than used
when referring to traditional fields of engineering). This course will
develop a methodology for program construction which will allow
software of high quality to be constructed, where high quality software
is defined as software which is reliable and reasonably easy to
understand, modify, and maintain. Prerequisite: CS 230. Offered Fall
semester alternate years (Fall 2007). Three credits.
CS 357 Computing Science Project I
Using principles and techniques developed in CS 351 or CS 355, a
capstone senior project is begun in this course. This includes items
such as choosing a project, researching the requirements and technologies
needed, and producing a requirements document. A team
approach may be used at the discretion of the instructor. Some projects
may be projects for real clients. Prerequisite or
concurrent: CS 351 or CS 355. Offered Fall semester starting in fall 2008. One credit.
CS 358 Computing Science Project II
Using principles and techniques developed in CS 351 or CS 355, the
capstone senior project begun in CS 357 is now implemented. A
team approach to software development may be used at the discretion
of the instructor. Some projects may be projects for real clients.
Prerequisite: CS 357. Offered Spring semester starting in spring 2009. Two credits.
CS 359 Computing Science Project
Using principles and techniques developed in CS 351 or CS 355,
a semester-length project is implemented. A team approach to software
development may be used. Some projects may be actual projects
for local companies. Prerequisite: CS 351 or CS 355. Offered spring semester.
(Last offering will be spring 2008. After that, the CS 357 and CS 358 combination replaces this course.)
Three credits.
CS 450 Independent Study in Computing and Information Science
An independent study may be possible by arrangement with an individual faculty
member. Course may be repeated with a different topic. Variable credit.
CS 465 Management Information Systems
This course explains how information is used in organizations, the
role of information technology professionals, and how information
systems are used to an advantage in business settings. Students will
gain an appreciation of the importance of information accuracy and
integrity, an appreciation of how information technology contributes to
an organization, and an understanding of the issues and challenges
involved in the development, implementation, management and maintenance of
information systems. The course will also address social and ethical
issues related to information system design and use. Offered Fall
semester alternate years (Fall 2007). Three credits.
CS 550 Computing and Information Science Internship
An internship involves practical work experience, typically with a local
business. Course may be repeated. Variable credit. May be done for no credit.
|