SOUTH DAKOTA

SCHOOL OF MINES
& TECHNOLOGY

Search
Directories
Current Students
Faculty & Staff
Local Weather

Computer Science (CSC)


    University Directory
    University Courses

    CSC 448/548 MACHINE LEARNING
    (3-0) 3 credits. Prerequisite: CSC 300. A systematic study of the theory and algorithms that constitute machine learning. It covers learning based on examples including genetic algorithms, case-based reasoning, decision trees, and Bayesian methods. Students enrolled in CSC 548 will be held to a higher standard than those enrolled in CSC 448.

    CSC 105 INTRODUCTION TO COMPUTERS
    (3-0) 3 credits. Overview of computer applications with emphasis on word processing, spreadsheets, database, presentation tools and Internet-based applications. May not be used for credit toward an engineering or science degree (except interdisciplinary sciences and associate of arts).

    CSC 150/150L COMPUTER SCIENCE I
    (2-1) 3 credits. Prerequisite and corequisite: MATH 123. An introduction to computer programming. Focus on problem solving, algorithm development, design, and programming concepts. Topics include sequence, selection, repetition, functions, and arrays.

    CSC 210 WEB AUTHORING
    (3-0) 3 credits. Prerequisite: CSC 105 or permission of instructor. This course focuses on techniques and methods for writing specifically for the Internet. Topics will include designing and creating documents for the World Wide Web, design considerations, and publishing and maintaining websites. Students will use HTML, web authoring software, and other software for web development.

    CSC 448/548 MACHINE LEARNING

    CSC 211 WEB PROGRAMMING I
    (3-0) 3 credits. Prerequisites: CSC 210 and CSC 115, or permission of instructor. This course introduces students to the issues and techniques for creating interactive websites. Students explore the framework for web programming applications with particular attention to the Microsoft Active Server Pages (ASP) model. VBScript programming will be taught and used as the tool for creating interactive websites. An introduction to Active X controls will also be provided. This is a programming course and students should expect to spend a significant amount of time outside of the classroom on course projects.

    CSC 212 WEB PROGRAMMING II
    (3-0) 3 credits. Prerequisites: CSC 211 or permission of instructor. This course explores web programming languages. Emphasis will be on connecting interactive websites to databases. Students will use the ASP learned in CSC 211 as well as learn Java and JavaScript for this course. Students will also be introduced to PHP on UNIX and to XML. A comparison of the strengths and weaknesses of the different models will be an important part of this course. This is a programming course and students should expect to spend a significant amount of time outside of the classroom on course projects.

    CSC 242 NT IN THE ENTERPRISE
    (3-0) 3 credits. Prerequisites: CSC 131 or permission of instructor. This course will prepare students to design, implement, and support directory services on a Microsoft Windows NT server network. Students will also have hands on experience in analyzing and optimizing Windows NT Servers and Troubleshooting Windows NT Server in the Enterprise Environment.

    CSC 244/244L INTERNET INFORMATION SERVER AND NETWORK PROTOCOLS
    SERVER AND NETWORK PROTOCOLS (2-1) 3 credits. Prerequisites: CSC 141 or permission of instructor. This course will prepare students to install and configure Internet Information Server. Students will learn the different components to administer the Internet Information Server. Students will learn about Transmission Control Protocol/Internet Protocol (TCP/IP) and how it works with the Internet Information Server. This course has a significant laboratory component to give the student hands on experience.

    CSC 250 COMPUTER SCIENCE II
    (4-0) 4 credits. Prerequisite: CSC 150 completed with a minimum grade of “C”. Problem solving, algorithm design, standards of program style, debugging and testing. Extension of the control structures and data structures of the high-level language introduced in CSC 150. Elementary data structures and basic algorithms that include sorting and searching. Topics include more advanced treatment of functions, data types such as arrays and structures, and files.

    CSC 251 FINITE STRUCTURES
    (4-0) 4 credits. Prerequisite: CSC 150 or permission of instructor. Selected topics from Boolean algebra, set theory, congruencies, equivalence relations, complexity, graph theory, combinatorics, induction, difference equations, and logic.

    CSC 284 DATABASE PROCESSING
    (3-0) 3 credits. Prerequisite: CSC 211; corequisite: CSC 212 or permission of instructor. Student will learn the fundamentals of database management with specific attention to the most popular database systems currently in use on both NT and UNIX systems (Access, Sequel, and Oracle). Students will learn how data is stored and retrieved, the basics of the entity-relationship design methodology and table design, and an introduction to performance issues. This course emphasizes using existing systems rather than writing these systems. Students interested in the programming details should take CSC 484.

    CSC 291 INDEPENDENT STUDY
    1 to 5 credits. Prerequisite: Permission of instructor. Includes directed study, problems, readings, directed readings, special problems and special projects. Students complete individualized plans of study which include significant one-on-one student-teacher involvement. The faculty member and students negotiate the details of the study plans. Enrollments are usually 10 or fewer students. Meeting depending upon the requirements of the topic. May be repeated to a total of five (5) credit hours.

    CSC 292 TOPICS
    1 to 5 credits. Includes current topics, advanced topics, and special topics. A course devoted to a particular issue in a specified field. Course content is not wholly included in the regular curriculum. Guest artists or experts may serve as instructors. Enrollments are usually 10 or fewer students with significant one-on-one student/teacher involvement. May be repeated to a total of five (5) credit hours.

    CSC 300 DATA STRUCTURES
    (4-0) 4 credits. Prerequisite: CSC 250 completed with a minimum grade of “C” and CSC 251. A systematic study of data structures and the accompanying algorithms used in computing problems; structure and use of storage; methods of representing data; techniques for implementing data structures; linear lists; stacks; queues; trees and tree traversal; linked lists; and other structures.

    CSC 314/314L ASSEMBLY LANGUAGE
    (2-2) 4 credits. Prerequisite: CSC 250. A thorough introduction to assembly language programming and processor architecture. A study of low-level programming techniques, and the layout of a typical computer. The student will gain insight into the memory layout, registers, run-time stack, and global data segment of a running program. This course is cross listed with CENG 314/314L. Graduation credit will not be allowed for both this course and CENG 314/314L

    CSC 317/317L COMPUTER ORGANIZATION AND ARCHITECTURE
    (3-1) 4 credits. Prerequisite: CSC 314 and CENG 244. A course in computer organization with emphasis on the hierarchical structure of computer systems. Covers such topics as: components of computer systems and their configuration, design of basic digital circuits, the microprogram level, the conventional machine level, the operating system level, assembly language, addressing modes, interpreters/translators, computer arithmetic.

    CSC 372 ANALYSIS OF ALGORITHMS
    (3-0) 3 credits. Prerequisites: CSC 300 and MATH 125. Design and analysis of algorithms for numeric and nonnumeric problems, general problem-solving approaches, theory of computation. Topics will be selected from searching, sorting, graph algorithms, numerical algorithms, geometric algorithms, cryptography, and parallel algorithms.

    CSC 391 INDEPENDENT STUDY
    1 to 5 credits. Prerequisite: Permission of instructor. Includes directed study, problems, readings, directed readings, special problems and special projects. Students complete individualized plans of study which include significant one-on-one student-teacher involvement. The faculty member and students negotiate the details of the study plans. Enrollments are usually 10 or fewer students. Meeting depending upon the requirements of the topic. May be repeated to a total of five (5) credit hours.

    CSC 392 TOPICS
    1 to 5 credits. Includes current topics, advanced topics and special topics. A course devoted to a particular issue in a specified field. Course content is not wholly included in the regular curriculum. Guest artists or experts may serve as instructors. Enrol particular, software validation and verification as well as scheduling and schedule assessment techniques will be discussed. This course together with CSC 465 form a twocourse sequence.

    CSC 410/510 PARALLEL COMPUTING
    (3-0) 3 credits. Prerequisite: CSC 456. The fundamental ideas and issues involved in programming and using parallel computers. A survey of modern architectures and operating systems. Parallel programming applications in business, economic modeling, and science. SDSM&T emphasizes scientific applications. Students enrolled in CSC 510 will be held to a higher standard than those enrolled in CSC 410.

    CSC 421/521 GRAPHICAL USER INTERFACES
    (3-0) 3 credits. Prerequisite: CSC 300. This introductory course in graphical user interface concepts will cover graphical user interface elements and style, events, component and object oriented user interface models, and graphical application programming issues. Topics will be covered in the context of common graphical user interface environments and programming languages. Possible topics include current GUI development languages such as Java, web interfaces, GUI design principles and standards, and the role of the GUI in the overall application. Students enrolled in CSC 521 will be held to a higher standard than those enrolled in CSC 421

    CSC 433/533 COMPUTER GRAPHICS
    (3-0) 3 credits. Prerequisites CSC 300 and MATH 225. Graphical programming concepts. Display media and device characteristics. Point, line, and circle plotting. Coordinate systems and transformations. Polygon clipping and filling. Spline methods, hidden surface elimination, and shading. Students enrolled in CSC 533 will be held to a higher standard than those enrolled in CSC 433.

    CSC 440/440L ADVANCED DIGITAL SYSTEMS
    (3-1) 4 credits. Prerequisites: CSC 317 or permission of instructor. Memory and disk systems, bus and I/0 systems, parallel processing. Applications of digital systems in real-time processing. Graduation credit will not be allowed for both this course and CENG 446.

    CSC 445/545 INTRO TO THEORY OF COMPUTATION
    (3-0) 3 credits. Prerequisite: CSC 251. Introduction to a series of models for computation and their relationship to formal languages that are useful in the definition of programming languages along with a look at the theoretical limits of computers. Topics include finite and pushdown automata, Turing machines, grammars, decidability and computational complexity. Students enrolled in CSC 545 will be held to a higher standard than those enrolled in CSC 445.

    CSC 447/547 ARTIFICIAL INTELLIGENCE
    (3-0) 3 credits. Prerequisite: CSC 300. Concepts in Artificial Intelligence: programming in languages such as Prolog or LISP; knowledge representation; search algorithms. Students enrolled in CSC 547 will be held to a higher standard than those enrolled in CSC 447.

    CSC 456/456L OPERATING SYSTEMS
    (3-1) 4 credits. Prerequisites: CSC 314 and CSC 300. A study of the functions and structures associated with operating systems with respect to process management, memory management, auxiliary storage management, and processor management. Topics include concurrent and distributed computing, deadlock, real and virtual memory, job and processor scheduling, security and protection. Graduation credit will not be allowed for both this course and CENG 456.

    CSC 461 PROGRAMMING LANGUAGES
    (4-0) 4 credits. Prerequisite: CSC 300. This course consists of two parts. The first part introduces how programming languages are designed, including an introduction to the concepts of parsing and compiling. Issues related to implementation such as type checking, binding, and memory management are discussed. Secondly, the course will survey the spectrum of programming languages paradigms, including traditional imperative, object oriented, functional, and logic languages.

    CSC 463/563 DATA COMMUNICATIONS
    (4-0) 4 credits. Prerequisite: CSC 250. A study of the principles of data communications, computer networks, and open systems, following the outline provided by the ISO/OSI model. Students enrolled in CSC 563 will be held to a higher standard than those enrolled in CSC 463.

    CSC 464/564 INTRODUCTION TO DIGITAL IMAGE PROCESSING AND COMPUTER VISION
    (3-0) 3 credits. Prerequisites: CSC 300 and MATH 125. Introduction to digital image processing and computer vision, including image digitization and display, image enhancement and restoration, frequency domain techniques using the Fourier transform, image encoding, segmentation, and feature detection. Students enrolled in CSC 564 will be held to a higher standard then those enrolled in CSC 464.

    CSC 465 SENIOR DESIGN PROJECT
    (3-0) 3 credits. Prerequisites: CSC 470 or permission of instructor. Normally open only to Computer Science majors in their senior year. This is a team project design course. The course covers topics of current interest in computer science.

    CSC 470 SOFTWARE ENGINEERING
    (3-0) 3 credits. Prerequisites: CSC 300. An introduction to the software engineering process, including lifecycle phases, problem analysis, specification, project estimation and resource estimation, design, implementation, testing/maintenance, and project management. In particular, software validation and verification as well as scheduling and schedule assessment techniques will be discussed. This course together with CSC 465 form a two-course sequence.

    CSC 476 THEORY OF COMPILERS
    (3-0) 3 credits. Prerequisites: CSC 314 and CSC 461 or permission of instructor. Course covers formal languages, parsing, design of compilers, assemblers, and translators.

    CSC 484 DATABASE MANAGEMENT SYSTEMS
    (3-0) 3 credits. Prerequisite: CSC 300. The study of formalized database design. This course will focus on relational model design and the use of SQL. Students will use a modern relational database to implement designs and learn the basics of data management.

    CSC 491 INDEPENDENT STUDY
    1 to 3 credits. Prerequisite: Permission of instructor. Includes directed study, problems, readings, directed readings, special problems, and special projects. Students complete individualized plans of study which include significant one-on-one student-teacher involvement. The faculty member and students negotiate the details of the study plans. Enrollments are usually 10 or fewer students. Meeting depending upon the requirements of the topic. May be repeated to a total of five (5) credit hours.

    CSC 492 TOPICS
    1 to 3 credits. Prerequisite: Permission of instructor. Includes current topics, advanced topics, and special topics. A course devoted to a particular issue in a specified field. Course content is not wholly included in the regular curriculum. Guest artists or experts may serve as instructors. Enrollments are usually 10 or fewer students with significant one-on-one student/teacher involvement. May be repeated to a total of three (3) credit hours.

    CSC 498 UNDERGRADUATE RESEARCH/SCHOLARSHIP
    Credit to be arranged; not to exceed six credits toward fulfillment of B.S. degree requirements. Prerequisite: Permission of instructor. Includes senior project, and capstone experience. Independent research problems/projects or scholarship activities. The plan of study is negotiated by the faculty member and the student. Contact between the two may be extensive and intensive. Does not include research courses which are theoretical. May be repeated to a total of six credit hours.

    CSC 691 INDEPENDENT STUDY
    1 to 3 credits. Prerequisite: Permission of instructor. Student should have obtained permission of an instructor in the Department of Mathematics and Computer Science prior to registering for this course. Directed independent study of a topic or field of special interest. This may involve readings, research, laboratory or fieldwork, and preparation of papers, as agreed to in advance, by student and instructor. May be repeated to a total of five (5) credit hours.

    CSC 692 TOPICS
    1 to 3 credits. Student should have obtained permission of an instructor in the Department of Mathematics and Computer Science prior to registering for this course. Lecture course or seminar on a topic or field of special interest, as determined by the instructor. May be repeated to a total of six credit hours.

    CSC 713 ADVANCED SOFTWARE ENGINEERING
    (3-0) 3 credits. Prerequisite: CSC 300 or permission of instructor. This course covers concepts and techniques within the different phases of the software life cycle: requirements, specifications, design, implementation, testing, operation, and management. The emphasis will be on the study of activities related to software configuration management and maintenance.

    CSC 731 ADVANCED COMPUTER GRAPHICS
    (3-0) 3 credits. Prerequisites: CSC 433 or permission of instructor. Topics considered in this course include the viewing/rendering pipeline, interaction strategies, curve and surface models, visible-surface determination, illumination and shading models, antialiasing. Also included will be project development using PHIGS and GKS (C programming required).

    CSC 751 IMAGE PROCESSING
    (3-0) 3 credits. Prerequisites: Permission of instructor, with calculus, linear algebra, data structures, and algorithms highly recommended. Image digitization and display, sampling theory, image enhancement and restoration using various spatial, and frequency domain techniques (histogram modification, filtering), Fourier transforms and convolution, image encoding, segmentation, and feature detection.

    CSC 752 COMPUTER VISION
    (3-0) 3 credits. Prerequisites: Permission of instructor. Low-level processing for extraction of intrinsic image features (edges, range, surface orientation, motion and optical flow, texture), relaxation methods, image segmentation, pattern recognition, geometric and relational structures, knowledge representation, and neural network approaches.

    CSC 761 ADVANCED ARTIFICIAL INTELLIGENCE
    (3-0) 3 credits. Prerequisites: Permission of instructor. The objective of this course is to provide students with a background in advanced artificial intelligence problem solving methods. Topics covered include: Expert systems, fuzzy logic and fuzzy expert systems, genetic algorithms, case-based reasoning, and current research work on new areas of problem solving

    CSC 762 NEURAL NETWORKS
    (3-0) 3 credits. Prerequisites: CSC 300 or permission of instructor. This course presents a survey of the architecture and algorithms of neural networks. Topics covered include perceptrons, competitive learning, multi-layer networks, back propagation, and selected topics from pattern recognition.

    CSC 772 ADVANCED OPERATING SYSTEMS
    (3-0) 3 credits. Prerequisites: CSC 456 or permission of instructor. Advanced topics in operating systems design for multiprocessing and distributed systems. Topics will include areas such as methods of interprocess communication, reliability, maintainability, security, and largescale design considerations.

    CSC 784 DATABASE DESIGN
    (3-0) 3 credits. Prerequisites: CSC 300 or permission of instructor. This course will include an overview of the relational and entity relationship (E-R) models. It will cover database design, advanced data models, emerging trends in the database field, including data warehouse, data mining, and distributed and parallel databases. Oracle database design tools and programming will be taught.

    CSC 788 MASTER¿S RESEARCH PROBLEMS/PROJECTS
    Credit to be arranged; not to exceed three (3) credits toward fulfillment of M.S. degree requirements. Open only to students pursuing the M.S. non-thesis option. Directed investigation of a selected problem culminating in an acceptable written report. Oral defense of the report and findings are required.

    CSC 790 SEMINAR
    (1-0) 1 credit. May not be repeated for degree credit. Preparation of an oral and/or written presentation and group discussion of a research problem.

    CSC 791 INDEPENDENT STUDY
    1 to 5 credits. Prerequisite: Permission of instructor. Student should have obtained permission of an instructor in the Department of Mathematics and Computer Science prior to registering for this course. Directed independent study of a topic or field of special interest. This may involve readings, research, laboratory or fieldwork, and preparation of papers, as agreed to in advance, by student and instructor. May be repeated to a total of five (5) credit hours.

    CSC 792 TOPICS
    1 to 5 credits. Student should have obtained permission of an instructor in the Department of Mathematics and Computer Science prior to registering for this course. Lecture course or seminar on a topic or field of special interest, as determined by the instructor. May be repeated to a total of six credit hours.

    CSC 798 MASTER'S THESIS
    Credit to be arranged; not to exceed six credits toward fulfillment of M.S. degree requirements. Open only to students pursuing the M.S. thesis option. Supervised original or expository research culminating in an acceptable thesis. Oral defense of thesis and research findings are required.


Contact: South Dakota School of Mines and Technology

http://sdmines.sdsmt.edu/sdsmt/directory/courses/csc
 
     

© - 1994-2009 - SDSM&T - All rights Reserved.