• Department of Mathematics & Computer Science

  • Computer Science Classes

    CSC 140

    SURVEY OF COMPUTERS is a thorough introduction to computers, including hardware and software concepts. Hands-on experience using micro-computer hardware and software tools is included. Elementary skills in using such computer tools as word processing, spreadsheets, database managers, and programming will be developed as time allows. Social issues involving computers will be discussed. (Communications Core)
    3 credit hours

    CSC 141

    INTRODUCTION TO COMPUTER SCIENCE serves three main purposes: to develop in students an understanding of the algorithmic formulation of methods for problem solving on a computer; to train students to use at least one procedural computer language; and to acquaint students with the basic properties of computers. (Communications Core)
    3 credit hours

    CSC 144

    OBJECT-ORIENTED PROGRAMMING serves two main purposes: to develop in the students an understanding of the object-oriented approaches to the algorithmic formulation of methods for problem solving on the computer and to train students to use at least one object oriented computer language. (Communications Core)
    3 credit hours
    Prerequisite: CSC 141 or knowledge of “C” programming language or instructor’s permission

    CSC 155

    COMPUTERS AND INSTRUCTIONAL TECHNOLOGY I enables the student educator to master the knowledge and skills necessary to become an intelligent user of computers in classrooms and laboratories. Course topics include computer-aided instruction; Piaget’s and Papert’s learning theories in relation to computers; word processing; electronic gradebooks; databases; spreadsheets; telecommunications; Internet; and an introduction to multimedia. This course is for those seeking teacher licensure. Education majors only.
    3 credit hours

    CSC 171

    APPLIED OBJECT-ORIENTED PROGRAMMING serves three main purposes: to develop in the students an understanding of the object-oriented approaches to the algorithmic formulation of methods for problem solving on the computer; to train students to use at least one object-oriented computer language and to prepare students for applied object-oriented programming in their upper level courses.
    3 credit hours

    CSC 205

    BIOINFORMATICS PROGRAMMING studies the use of scripting languages and software tools for work in bioinformatics. Emphasis will be on data manipulation, file input and output, FASTA files, regular expressions and pattern matching, databases, and web programming.
    Prerequisite: CSC 141, 144, 171 or 280
    3 credit hours

    CSC 210

    BIOINFORMATICS ALGORITHMS studies the fundamental algorithms used in bioinformatics. Attention will be paid to specific algorithms (e.g. for measuring DNA similarity and for constructing phylogenic trees), to algorithm design methods (e.g. exact vs. heuristic methods, and dynamic programing) as well as to the computational costs of the various algorithms (Big-O notation, and the difference between polynomial and exponential time algorithms).
    Prerequisite: CSC 141, 144, 171 or 280
    3 credit hours

    CSC 232

    ELEMENTARY COBOL AND STRUCTURED PROGRAMMING emphasizes structured programming and problem-solving using COBOL.
    Prerequisite: CSC 141 or equivalent
    3 credit hours

    CSC 242

    ADVANCED COBOL AND FILE PROCESSING is a continuation of the study of COBOL begun in CSC 232 and includes pseudo-code, table handling, modular programming, documentation, and other related topics. The techniques and concepts of structuring, sorting, and retrieving data on bulk storage devices are also introduced.
    Prerequisite: CSC 232
    3 credit hours

    CSC 255

    COMPUTERS AND INSTRUCTIONAL TECHNOLOGY II further prepares student educators for the effective use of computers and technology in the classroom. Through this course, students will learn the basic skills needed to evaluate, design, produce, and utilize multimedia products in educational, organizational, and communications environments.
    Prerequisite: CSC 155—Education majors only
    3 credit hours

    CSC 261

    INFORMATION PROCESSING SYSTEMS examines the four fundamental types of data organization (sequential, direct, indexed sequential, and database management systems) and the corresponding programming and design techniques. Security, privacy, data integrity, and future trends are discussed.
    Prerequisite: CSC 141 or CSC 144
    3 credit hours

    CSC 271

    STRUCTURED SYSTEMS ANALYSIS studies the system development cycle with emphasis on techniques and tools, system documentation, data flow diagrams, system testing, and implementation. Students are expected to suggest, design, and implement a specific application system.
    Prerequisite: CSC 171
    3 credit hours

    CSC 280

    NUMERICAL COMPUTING introduces procedural programming techniques using the programming language FORTRAN. Emphasis is placed on the analysis and design of numerical algorithms, which are useful in business and science. Other topics include file processing and parallel processing.
    Co-requisite: MTH 161
    3 credit hours

    CSC 310

    PROGRAMING LANGUAGES examines the basic concepts of programming languages: programming language processors, elementary and structured data types, subprograms, sequence control, data control, storage management, syntax and translation, and programming environments. The student will also study three different programming languages and write a short project in each.
    Prerequisite: CSC 145
    3 credit hours

    CSC 320

    GENETIC ALGORITHMS studies the use of simulated evolution in computer science and biology. Primary emphasis will be on the use of evolutionary and genetic algorithms as tools for solving combinatorial optimization problems (including problems arising in bioinformatics). Secondary emphasis will be placed on construction of computer models designed to illuminate aspects of evolutionary theory (e.g. the computer evolution of strategies for playing the prisoner’s dilemma as a model for the evolution of altruistic traits). Counts as a bioinformatics elective.
    3 credit hours

    CSC 330

    NUMBER THEORY AND CRYPTOGRAPHY covers the fundamental algorithms used in both private key and public key cryptography. Algorithms covered will include DES, AES, Diffie-Hellman, and RSA. Traditional encryption methods such as Vigenere ciphers and their cryptanalysis will be briefly described. The number theory needed to understand primality testing and RSA encryption will be developed in detail. Several programming projects aimed at implementing some of the material will be given throughout the semester.
    Cross listed with MTH 330
    Prerequisites: CSC 141, 144, 171 or 280; and MTH 220
    3 credit hours

    CSC 335

    JUNIOR SEMINAR is designed to teach computer science and computer information science majors the skills necessary to learn computer science on their own and communicate their knowledge to others in oral and written form. All students will attend presentations made by senior computer science students. Students will be required to write a short, independently-researched paper and present it to the other students in the junior seminar.
    1 credit hour

    CSC 341

    NETWORKING/TELECOMMUNICATIONS introduces students to the fundamentals of network and data communication technologies. Course topics include telecommunication media and equipment; data transmission and protocols; corporate, local, and wide area networks; intranets and internets; and network software and management. An introduction to electromagnetic concepts and principles is included to provide a technical foundation for these concepts.
    Prerequisites: CSC 141 or 144 and junior standing
    3 credit hours

    CSC 344

    ALGORITHM AND COMPLEXITY will introduce concepts of algorithm analysis, strategies, time and resource complexity and basic computability.
    Prerequisites: CSC 145 and MTH 220
    3 credit hours

    CSC 351

    CURRENT TOPICS IN COMPUTER INFORMATION SCIENCE is a seminar in information resource management covering such topics as office automation, networks, distributed data processing, data integrity, and decision support systems.
    Prerequisite: Junior standing or permission of instructor
    3 credit hours

    CSC 352

    SOFTWARE PATTERNS IN OBJECT-ORIENTED PROGRAMMING serves three main purposes: to develop in the students an understanding of software patterns in an object-oriented framework; to teach the students the 24 most common software patterns; and to train students to use another object-oriented computer language.
    Prerequisite: CSC 144
    3 credit hours

    CSC 400

    INTERNSHIP is a work-experience opportunity with the purpose of expanding education by applying accumulated knowledge in computer science/technology. The availability of internships is limited to upper-level students, normally seniors with a 2.5 quality point average. Students are approved individually by the academic department. A contract can be obtained from the Career Services Office in Starvaggi Hall. Internships count as general electives.
    Prerequisite: Computer Science Junior or Senior standing and permission of the department chair.
    Internships must be preapproved.
    1-6 credit hours

    CSC 402

    HARDWARE AND SOFTWARE SYSTEMS surveys the relationship between hardware architecture and both systems and applications software. The influence of processor and storage system architecture on software design is also studied.
    Prerequisite: Junior standing or permission of instructor
    3 credit hours

    CSC 403

    OPERATING SYSTEMS considers the structure of operating systems involving design, implementation, and maintenance. Various types of mainframe, mini, and micro operating systems will be discussed. Some systems programming will be considered.
    Prerequisite: CSC 404
    3 credit hours

    CSC 404

    COMPUTER ARCHITECTURE WITH ASSEMBLY LANGUAGE is an introduction to the architecture of the microprocessors and Assembly Language. Concepts in digital logic, machine level of data, the assembly level machine organization, memory system organization, interfacing and functional organization are covered. Exercises in Assembly Programming will illustrate some of these concepts.
    Prerequisites: CSC 145 and MTH 220
    3 credit hours

    CSC 405

    SYSTEMS PROJECT gives students an opportunity to plan and implement a significant project using previously obtained analytic and programming skills. Students will be responsible for the proposal, management, implementation, documentation, and communication of the project. Departmental guidance will be available when necessary.
    Prerequisite: CSC 271
    3 credit hours

    CSC 410

    INTRODUCTION TO ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS explores artificial intelligence (AI) within the context of special languages used in AI, such as LISP and PROLOG. Basic AI techniques presented include those needed to understand and design simple expert systems. As time permits, topics from the following areas may be investigated: natural language processing, planning, machine learning, neural networks, and various forms of reasoning.
    Prerequisite: CSC 145 and junior standing
    3 credit hours

    CSC 430

    THEORY OF COMPUTING examines the underlying mathematical models and theories that are the basis of the modern computer. Topics include grammars, types of languages, types of automata, computability, and complexity.
    Prerequisite: MTH 220
    3 credit hours

    CSC 434

    SENIOR THESIS requires all computer science and computer information science students to write a thesis on an approved topic in computer science. Students must consult closely with a departmental faculty member at each stage in the development of their theses. The thesis will be presented to students in the Junior Seminar.
    1 credit hour

FacebookTwitterFlickr LogoYouTube Logorss icons
MyFranciscan - Click here


Get Connected Picture  

for Future:

Click here to log in
Click here to get help
