|
Apply |
Contact Us |
Give a Gift |
WJU Home
|
| |
|
|
Computer Science
Contact Persons: Dr. Beverly Carter The computer science major is designed to provide a wide acquaintance with various aspects of computing, ranging from the theoretical to the practical, with an emphasis on the solution of actual problems. Currently the C++ programming language is emphasized in the introductory sequence of courses. There is a strong mathematics component since we believe that the successful computer scientist, whether seeking a job or continuing his/her education, is best served by understanding the necessary mathematical thinking and processes that underlie all of computer science. Upon completion of the Computer Science program, students will be able to demonstrate the ability to:
Requirements for Computer Science Major In addition to completing the core curriculum requirements (17 courses listed on p. 14-15 of this catalog, at least 1 of which is also included below) all majors in computer science must complete at least the following courses:
Special Note on Elective: Of the five or more CSC electives, at least three must be chosen from the current CSC upper level Elective list. Such courses currently include CSC 340 (Graphics), CSC 315 (Advanced Web Programming), CSC 420 (Systems Administration) and CSC 415 (Artificial Intelligence). The remaining electives may also be CSC upper level Elective courses, or chosen from a list including MAT 240 (Linear Alg), MAT 331 (Numerical Analysis), MAT 212 (Differential Equations), PHY 260 (Computer Hardware), or approved courses in other departments. The elective sequence must be approved by the department chair, and all prerequisites for courses selected must be met. At most one Internship (373), or Independent study can be counted among the five electives. A capable student should take more than the minimum number of five Computer Science Electives, especially if graduate school is planned. A well-prepared and industrious student who takes occasional overloads and/or summer school courses has room to declare a minor as well as a major. Popular minors for Computer Science majors include Mathematics, Physics, Business and E-Commerce. Since the computer science major includes a strong mathematics component, we assume that the entering freshman has a good mathematics background, including advanced algebra, trigonometry and pre-calculus, and can begin Calculus I as a freshman. We also assume that the student beginning a computer science major has had previous programming experience using some high-level programming language such as BASIC or PASCAL. In both cases, courses covering this material are available (MAT 091, MAT 092, MAT 108 and CSC 108), but having to take these courses first will slow down a student’s progress in the major sequence.
Requirements for a Minor in Computer Science For a minor in computer science, the following are required: CSC 110, CSC 112, CSC 220, CSC 222 and at least three other CSC courses at the 200 level or above. Any computer science course may be taken by a non-math or non-computer science major provided the necessary prerequisites are met. Some courses which may be attractive include: CSC 108, 110, 112, 220, and the occasional upper level course intended for a wider audience. Minor in Electronic Commerce Computer science students are encouraged to investigate the e-commerce minor listed on page 39. Course Descriptions In general (unless otherwise noted), 100-level courses are offered both semesters every year, 200-level courses are offered once every year, 300-level required courses are offered at least once every other year, and electives are offered approximately every two years as faculty and resources permit. CSC 108 Introduction to Structured Programing (3 crs) (Core)–Every Semester CSC 110 Computer Science I (4 crs) (Core)–Every Semester An introduction to the general fields of study of Computer Science, including a discussion of different programming languages, their styles and strengths. This course emphasizes the methodology of structured programming in a high level language (currently C++), introduces basic data structures and elementary algorithms. An emphasis is placed on reusable software tools, good documentation and top-down design. Programming and other written assignments are included, and a separate supervised lab explores specific programming problems in more detail. The course requires previous programming experience in some high level programming language (such as that in CSC 108), and a strong mathematics background (determined by math placement). Prerequisites: CSC 108 or instructor approval. Required for Computer Science Major. CSC 112 Computer Science II (4 crs)–Every Semester This course extends the acquaintance with the general fields of study of Computer Science, visiting them in more detail, and placing an emphasis on data structures, information storage and retrieval and numerical computation. This course uses objects and object oriented programming. Other data structures such as stacks, queues and trees are fully treated. Along with programming and written assignments, a separate supervised lab session explores more programming and operating system problems. Prerequisite: CSC 110. Required for Computer Science Major. CSC 222 Computer Science III (3 crs)–Every Semester This course continues the exploration of the general fields of study of Computer Science, introducing more complex data structures, and placing a special emphasis on algorithm design and analysis. This course is currently taught with C++. Programming and written problems are assigned. Prerequisite: CSC 112. Required for Computer Science Major. CSC 220 Social, Professional and Ethical Issues in Computer Science (3 crs)–Spring This course deals with the impact of the rapidly expanding computer technology on society, including many ethical and professional issues which arise. Professional activities, organizations and publications are also explored. Although the course does not include programming assignments, the student must have experience in both programming and using computers for a variety of purposes. No specific prerequisites. Required for Computer Science Major. CSC 235 Machine and Assembly Language (3 crs)–Fall An introduction to the architecture, organization and operation of a computer, including memory and addressing techniques, registers, control, machine language instructions, I/O units, symbolic coding in assembly language, subroutines. Programming problems are assigned. Prerequisite: CSC 112. Required for Computer Science Major. CSC 310 Analysis of Algorithms (3 crs)–Fall, odd years This course covers algorithm analysis theory and techniques. Students learn properties of both efficient and inefficient algorithms. The importance of analyzing algorithms before implementing them will be emphasized. This course will teach the skills necessary to determine the best algorithm for a given problem. Some types of algorithms we will investigate are greedy, graph theoretic and divide and conquer algorithms. We will cover both polynomial time algorithms and NP-completeness. Prerequisites: CSC 222 and MAT 235. CSC 315 Advanced Web Programming (3 crs)–Spring, odd years This course will advance the student in the field of programming for web-based applications. This programming will include advanced HTML, JavaScript, VBScript, CGI and Active Server Pages (ASP). Primary emphasis is in the use of ASP to design and create database-driven web applications. Prerequisites: CSC 108 and PWR 253 (or instructor permission). This course is an elective for Computer Science and part of the E-Commerce minor. CSC 320 Introduction to Programming Languages (3 crs)–Fall, odd years Language definition, structure, syntax and grammar, issues of data types, static and dynamic data storage management, control structures, subroutines and procedures, parameter passing styles, list processing techniques are covered. Imperative, declarative and functional languages are compared, with a variety of languages used as examples. Prerequisite: CSC 222. Required for Computer Science Major. CSC 325 Operating Systems (3 crs)–Spring, odd years A study of the programs which control a computer. Topics include computer structure, organization of storage and process, multi-programming and multi-processing, concurrent processes, scheduling and placement algorithms, memory management and virtual memory, elementary queuing theory and security. A number of different operating systems are employed. Prerequisites: CSC 222 and CSC 235. Required for Computer Science Major. CSC 330 Database Design and Management (3 crs)–Fall, even years Logical and physical database design concepts, database administration,with an emphasis on the relational model. A team or individual project requires the design and implementation of a relational database. Prerequisite: CSC 222. Required for Computer Science Major. CSC 335 Software Engineering (3 crs)–Spring, even years Large program specification, design, modularization, documentation, validation, performance analysis and measurement, maintenance and user interface are covered. A programming project using a language such as Ada or C++ is completed. Prerequisite: CSC 222. Required for Computer Science Major. CSC 340 Introduction to Computer Graphics (3 crs) –Fall, even years Introduction to the techniques used in designing and implementing two and three-dimensional graphics displays, using a high-level programming language as a foundation. Pre-requisite: CSC 222, MAT 235, MAT 111. (MAT 240 is also helpful). Elective for Computer Science Major. CSC 350 Computer Architecture (3 crs)–Spring, even years This course introduces the student to the basics of computer hardware and organization, providing a firm foundation in general computer design issues. Topics covered include Boolean logic, gates, digital logic circuits, memory, CPU chips and buses, microarchitecture and microinstructions and parallel architectures. Prerequisites: CSC 222 and CSC 235. Required for Computer Science Majors. CSC 373 Internship (3 crs)–As needed Students gain practical experience in the operation and administration of a computer center, system or network by working on systems projects in the Academic Computer Center, or with a private company. Prerequisite: CSC 325, Junior level status as a Computer Science Major, recommendation of the department chair. CSC 415 Artificial Intelligence (3 crs)–Fall, odd years This course includes an introduction to the methods and languages of artificial intelligence programming, including problem definition, a variety of solution methods and algorithms, knowledge representation, logical reasoning and a brief look at the techniques of expert systems, neural networks and genetic algorithms. Prerequisites: CSC 222, MAT 235. Strongly recommended: CSC 220. Elective for Computer Science Major. CSC 420 Systems Administration (3 crs)–Spring, odd years This course will acquaint the student with the setting up, managing and upgrading of a networked server platform. Issues covered include: networking fundamentals, installing network software, managing user accounts, configuring network software, security issues, installing and configuring network hardware and a variety of other topics. Prerequisite: CSC 222. This course is an elective for Computer Science, but encouraged for the E-Commerce minor. CSC 482 Senior Seminar (2 crs)–Fall This course, which meets during the fall semester, includes group study of a topic chosen by the seminar leader, individual presentations and a capstone individual or team project devised by the seminar leader, often in conjunction with a real-world application problem. Prerequisite: CSC 222, 235, and Senior level status. At least 2 of the 5 required 300 level CSC courses must be completed before this course can be taken. Required for Computer Science Major. X61 Special Topics (1-3 crs) According to current interests of faculty and students, topics courses are offered frequently as computer science electives. Recent offerings have included User Interface Design Seminar in Networks, Formal Language Theory and Compiler Design. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Calendar | President's Welcome | Campus Tour | Services | Financial Aid | Campus Directory | Apply Online |
|
© 2007 Wheeling Jesuit University, Inc. 316 Washington Avenue Wheeling West Virginia 26003 (800) 624-6992 Legal Website Powered by ActiveCampus Software by Datatel |