CSC 1010: Science and Technology (5) Offerings |
A hands-on exploration of the science behind the computer, the fundamental concepts of computing, and the impacts of computing technology on 21st Century life. Topics will be selected from such areas as the history of computing, data representation and storage, applications (SW creation, simulation, games and graphics), networking and communications, and artificial intelligence. Combines lecture, discussion, and laboratory experiences. |
Attributes:Natural Science B, WK Applied Science
|
|
CSC 1123: Spreadsheets (1) Offerings |
"What is a Spreadsheet"? This course covers creating, modifying, saving, and printing spreadsheet documents; entering and using formulas and calculations; editing and importing data; incorporating graphs; and formatting and enhancing the appearance of a spreadsheet document. |
|
|
CSC 1124: Databases (1) Offerings |
"What is a Database? What is a relational database management system?" This course covers designing a database; defining tables; defining and editing fields; entering and editing data; creating and using queries using one or more tables; and creating, formatting, and enhancing forms and reports. |
|
|
CSC 1126: Presentation Managers (1) Offerings |
"What is a Presentation Manager"? Covers designing an effective presentation; creating and editing slides, incorporating pictures, drawings, and "graphics"; rearranging topics and slides; formatting and enhancing the look of a presentation; estimating the timing and sequencing of a presentation; and printing notes and handouts. |
|
|
CSC 1130: Beginning Programming (5) Offerings |
Prerequisite: Demonstratable computer literacy and two years of high school algebra. Covers designing a computerized solution to a problem, the software development lifecycle, and structured programming concepts and skills. In addition the course provides an introduction to a modern programming language. |
|
|
CSC 1230: Problem Solving and Programming (5) Offerings |
Prerequisites: High school pre-calculus, math analysis, or equivalent and demonstratable computer literacy. An introduction to computer science, this course covers problem-solving methods and algorithm development; modern programming methodologies; and fundamentals of a high-level block structured language. Solutions to mathematical and scientific problems and scenarios are emphasized. |
Attributes:WK Applied Science
|
|
CSC 1521: Contemporary Math with Computing (5) Offerings |
Prerequisite: Mathematics Placement Level A or MAT 0144, or Mathematics Placement Level B or MAT 0145. Explores topics that illustrate how mathematical methods and models permeate our economics, political, and personal lives. By investigation of diverse applications, a variety of problem-solving techniques will be introduced, including using the computer as a quantitative problem-solving tool. Introduces the mathematics behind the computer and also examines data representation, storage and manipulation. |
Attributes:Mathematics (MAT), WK Quantitative Reasoning
|
|
CSC 1800: Special Topics in Computer Usage (1-3) Offerings |
Prerequisite: Demonstratable computer literacy. Presentation of a topic of current interest in computer usage. Topics may vary between offerings. May be repeated for credit up to 5 credits. |
|
|
CSC 2222: Programming Techniques (3) Offerings |
Prerequisite: CSC 2430. Intermediate programming and problem-solving techniques that will introduce a different programming language than used in CSC 2430. |
|
|
CSC 2230: Computer Programming for Engineers (5) Offerings |
Prerequisite: MAT 1235. Introduction to computer programming with an engineering applications theme. Topics include math and logical operations, data types, matrices, conditions and decisions looping subroutines, numerical methods, and plotting. This course is not the prerequisite to CSC 2430. |
|
|
CSC 2430: Data Structures I (5) Offerings |
Prerequisite: CSC 1230 or equivalent. Develops discipline in program design, style, debugging, testing. Introduces object-oriented design with classes, methods, and encapsulation. Introduces dynamic storage allocation and pointers. Examines arrays, linked linear data structures, and recursion. |
|
|
CSC 2431: Data Structures II (5) Offerings |
Prerequisite: CSC 2430. Continuation of CSC 2430. Continues object-oriented design with inheritance and polymorphism; covers linked data structures, including trees, and other non-linear representations; introduces graphs and networks; explores external data structures, and methods of organizing and accessing data (indexing and hashing). |
|
|
CSC 2951: Directed Study: "C++" Programming (2) Offerings |
Prerequisite: Previous problem-solving and programming course in a language other than C or C++. Presents fundamentals of the C++ programming language. Offered as a directed-study, instructor arranged course. |
|
|
CSC 3011: Living in a Digital World (3) Offerings |
Prerequisite: UFDN 2000 or 3001. Considers the ethical and societal impacts of computing technology on daily life. Sample topics include invasion of privacy, computer crime, intellectual property, software theft, computer security, technology in the workplace, social networking and the global information society. Class format is a combination of lecture and discussion. |
Attributes:Upper-Division, Ways of Engaging
Restrictions:Junior, Post-Baccalaureate, Senior students only. |
|
CSC 3150: Systems Design (5) Offerings |
Prerequisite: CSC 2430. CSC 3220 is recommended. Surveys issues and tools used in the analysis and design of software systems. Topics include feasibility analysis; requirements gathering and modeling; data modeling; system architecture and security; and user-interface and program design. Measures for the evaluation of specifications and designs are introduced. |
Attributes:Upper-Division, Writing "W" Course
|
|
CSC 3220: Applications Programming (3) Offerings |
Prerequisite: CSC 2430. An implementation-oriented look at software development techniques used to create interactive applications, focusing on the use of object-oriented libraries to create user interfaces. Topics include event-driven programming, human-computer interaction (HCI), graphical user interfaces (GUI), database interfaces and tools for interface prototyping. |
Attributes:Upper-Division
|
|
CSC 3221: Netcentric Computing (3) Offerings |
Prerequisite: CSC 3220. Introduction to networking and the Internet. Topics studied include network architectures, network security, communication, and networking layer protocols, and the Web as an example of client-server computing. In addition, students will practice building Web applications. |
Attributes:Upper-Division
|
|
CSC 3310: Concepts in Programming Languages (3) Offerings |
Prerequisite: CSC 2431 and (MAT 1720 or MAT 2720). Explores organization and structure of programming languages; run-time behavior and requirements of programs; and programming language specification. |
Attributes:Upper-Division
|
|
CSC 3350: Operating Systems Programming (3) Offerings |
Prerequisites: CSC 2431 and (CSC 3750 or CSC 3760 or CPE 3760 or EE 3760) Note: EE 3760 may be taken concurrently. Introduction to operating systems and systems programming. Surveys systems software; operating system interface and functions; utilities and shell programming; linkers and loaders; translators; and processes, concurrency and concurrent programming. |
Equivalent Courses:CPE 3350
Attributes:Upper-Division
|
|
CSC 3430: Algorithm Design and Analysis (3) Offerings |
Prerequisites: CSC 2430 and (MAT 1360 or MAT 2700 or MAT 2200 or MAT 2360 or MAT 3360) and (MAT 1720 or MAT 2720, may be taken concurrently). Studies algorithmic, problem solving approaches such as greedy, divide and conquer, and dynamic programming. Covers the design and analysis of algorithms for searching, sorting, string processing, table management, and graphs. Includes principles of computational complexity and analysis. |
Attributes:Upper-Division
|
|
CSC 3750: Computer Architecture and Organization (5) Offerings |
Prerequisites: CSC 2430 and (MAT 1720 or 2720). Covers digital logic, computer structure, machine language, addressing, use and operation of assemblers, micro-architectures, instruction formats, and the memory hierarchy. |
Attributes:Upper-Division
|
|
CSC 3760: Computer Organization and Assembly Language (5) Offerings |
Prerequisites: CSC 2430 and EE 1210. CSC 2431 is recommended. Studies organization and structuring of the major hardware components of computers, including mechanics of information transfer, and control within a digital computer system. Introduces computer architecture, machine instruction sets and assembly language programming. |
Equivalent Courses:CPE 3760, EE 3760
Attributes:Upper-Division
|
|
CSC 3899: Social Impacts of Computing (3) Offerings |
Covers ethical, social, and societal-impact issues with which computer professionals and users must deal. Sample topics include invasion of privacy, computer crime, intellectual property, software theft, computer security, ethics in the workplace, and the global information society. Class format is a combination of lecture and discussion. |
Attributes:Upper-Division, Writing "W" Course
Restrictions:Freshman, Sophomore students are excluded. |
|
CSC 3900: Independent Study in Computer Science (1-5) Offerings |
Independent study and research in an advanced computer science topic. May be repeated for credit up to 10 credits. |
Attributes:Upper-Division
|
|
CSC 3930: Practicum in Computer Science (1-5) Offerings |
Practial experience in applied computer science. Examples include academic system support and programming; tutoring, grading and lab preparation; or off-campus work experiences. Includes an assessment of Christian service issues or experiences. May be repeated for credit up to 10 credits. |
Attributes:Upper-Division
|
|
CSC 3940: Internship in Computer Science (1-5) Offerings |
Provides a significant learning experience to be obtained in a supervised work-study environment. Typically involves work in systems analysis and design, advanced applications, programming, quality assurance, or end-user support. Includes an assessment of Christian service issues or experiences. May be repeated for credit up to 10 credits. |
Attributes:Upper-Division
|
|
CSC 3950: Topics in Computer Science (1-5) Offerings |
Advanced or special interest topics in computer science. May be repeated for credit up to 10 credits. |
Attributes:Upper-Division
|
|
CSC 3960: Project in Computer Science (1-5) Offerings |
Independent work on a significant project in computer science. May be repeated for credit up to 10 credits. |
Attributes:Upper-Division
|
|
CSC 4150: Software Engineering (5) Offerings |
Prerequisite: CSC 3150. Covers topics in software engineering, including team programming, project planning and management, SDLC (software development life cycle) and software quality assurance. Course requirements include the design and implementation of a team software project. |
Equivalent Courses:CPE 4150
Attributes:Upper-Division
Restrictions:Post-Baccalaureate, Senior students only. |
|
CSC 4151: Software Engineering I (3) Offerings |
Prerequisite: CSC 3150, and (CSC 2431 or CSC 3221). Explores the technical processes and practice of software engineering. Lecture/discussion topics include the development process, project planning and management, measurement and metrics, and software quality assurance. In this first of a two-quarter team software development sequence, student teams will complete and present the requirements analysis and a prototype of a software system. A final grade will be awarded for this course upon completion of CSC/CPE 4152. |
Equivalent Courses:CPE 4151
Attributes:Upper-Division
Restrictions:Post-Baccalaureate, Senior students only. |
|
CSC 4152: Software Engineering II (3) Offerings |
Prerequisite: CSC/CPE 4151. This course is a completion of a two-quarter software development experience. Student teams will implement, test and deploy systems they began in CSC 4151. Class time will be primarily devoted to the application of software engineering principles to their project, technical reviews, and formal presentation of the completed system. |
Equivalent Courses:CPE 4152
Attributes:Upper-Division
Restrictions:Post-Baccalaureate, Senior students only. |
|
CSC 4210: Theory of Computation and Algorithm (3) Offerings |
Prerequisites: CSC 3310 and 3430. Introduction to theoretical topics in computer science. Includes formal languages, automata and parsing; computational complexity, analysis of algorithms; computability; and program correctness and verification. |
Attributes:Upper-Division
|
|
CSC 4310: Compiler Design (3) Offerings |
Prerequisites: CSC 3310, and (CSC 3750 or CSC/CPE/EE 3760). Studies programming language translation and compiler design concepts; language recognition, symbol table management, semantic analysis, and code generation. |
Attributes:Upper-Division
|
|
CSC 4350: Advanced Operating Systems (3) Offerings |
Prerequisite: CSC 3350 or CPE 3350. Introduces the major functions of operating systems. Covers processes and concurrency; concurrent programming; resource allocation, contention and control; scheduling, memory management, and device management. |
Equivalent Courses:CPE 4350
Attributes:Upper-Division
|
|
CSC 4410: Database Management (5) Offerings |
Prerequisites: CSC 3150. Introduces database concepts: data models; data description and data manipulation languages; query facilities; data security, integrity, and reliability; and multi-user database processing. Primary emphasis is on the relational data model. Includes the design and implementation of applications using a relational DBMS. |
Attributes:Upper-Division
|
|
CSC 4510: Windows Programming (3) Offerings |
Prerequisite: CSC 3221. An introduction to programming in the Windows environment, this course covers Graphical User Interfaces; forms programming; controls and messages; database and network resources; windows services; and comparison of common windowing environments. |
Attributes:Upper-Division
|
|
CSC 4750: Computer Networks (5) Offerings |
Prerequisites: CSC 3750 or CSC 3760 or CPE 3760 or EE 3760. Recommended: CSC 2431. Studies concepts and terminology of computer networks, equipment, and protocols. Emphasis is on local area networks. |
Equivalent Courses:CPE 4750
Attributes:Upper-Division
|
|
CSC 4760: Advanced Computer Architecture (5) Offerings |
Prerequisite: CSC 3750 or CSC 3760 or CPE 3760 or EE 3760. Recommended: CSC 2431. Studies the architecture of multiprocessor, pipelined, and parallel computers. Emphasis is placed on principles of parallelism and the architecture of state-of-the-art multiprocessors. |
Equivalent Courses:CPE 4760
Attributes:Upper-Division
|
|
CSC 4800: Advanced Issues in Computer Science (3-5) Offerings |
An advanced course studying a special interest topic in computer science. Topics and credits may vary between offerings. Computer science minors may take this course with instructor approval. May be repeated for an unlimited number of credits. |
Attributes:Upper-Division
Restrictions:Computer Science, Information Systems Majors only. |
|
CSC 4810: Advanced Issues in Computer Science (3-5) Offerings |
An advanced course studying a special interest topic in computer science. Topics and credits may vary between offerings. Computer science minors may take this course with instructor approval. May be repeated for an unlimited number of credits. |
Attributes:Upper-Division, Writing "W" Course
Restrictions:Computer Science, Information Systems Majors only. |
|
CSC 4898: Senior Capstone in Computer Science (2) Offerings |
This senior capstone course will explore topics and frontiers in the computing sciences. Students will write a significant paper or design and implement an experimental project that investigates a current topic within the computing sciences. |
Attributes:Upper-Division
Restrictions:Computer Science, Information Systems Majors only. Post-Baccalaureate, Senior students only. |
|
CSC 4900: Independent Study in Computer Science (1-5) Offerings |
Independent study and research in an advanced computer science topic. May be repeated for credit up to 15 credits. |
Attributes:Upper-Division
|
|
CSC 4930: Practicum in Computer Science (1-5) Offerings |
Studies applied computer science. Typically involves academic systems programming, teaching, grading, lab preparation, or tutoring responsibilities. Includes an assessment of Christian service issues or experiences. May be repeated for credit up to 8 credits. |
Attributes:Upper-Division
|
|
CSC 4940: Internship in Computer Science (1-5) Offerings |
Provides a significant learning experience to be obtained in a supervised work-study environment. Typically involves work in systems analysis and design, advanced applications, or systems programming, qaulity assurance, or end-user support. Includes an assessment of Christian service issues or experiences. May be repeated for credit up to 8 credits. |
Attributes:Upper-Division
|
|
CSC 4950: Topics in Computer Science (1-5) Offerings |
An advanced course studying a special interest topic in computer science. Topics and credits may vary between offerings. May be repeated for credit up to 5 credits. |
Attributes:Upper-Division
Restrictions:Computer Science, Information Systems Majors only. Freshman, Sophomore students are excluded. |
|
CSC 4960: Project in Computer Science (1-5) Offerings |
Independent work on a significant project in computer science. May be repeated for credit up to 8 credits. |
Attributes:Upper-Division
|
|
CSC 4970: Directed Research in Computing Sciences (2-5) Offerings |
The student will conduct research based on a proposal prepared prior to registering for this course. Results of the research will be prepared for presentation at undergraduate or professional symposia. May be repeated for credit up to 8 credits. |
Attributes:Upper-Division
Restrictions:Computer Science, Information Systems Majors only. Freshman, Sophomore students are excluded. |
|
|