2007-2008 Academic Catalog

School of Natural and Applied Science Engineering and Computer Science 104 Cedarville University 2007-08 Engineering and Computer Science Course Descriptions Computer Science Courses CS-1210 C++ Programming –Fa,Sp 2 hours Introduction to computer programming, software engineering principles, structured program design and implementation, and object-oriented design using the C++ programming language; students will become familiar with compiling programs in the UNIX operating system. One lecture hour and two one-hour laboratories per week. (Fee: $50) CS-1220 Object-Oriented Design Using C++ –Fa,Sp 3 hours Continuation of CS-1210 C++ programming to include pointers, the object paradigm, and abstract data types; advanced topics include exception handling, event-driven programming, and Graphical User Interface (GUI); principles of object-oriented design are applied to programming tasks in both the UNIX and Windows environments. Prerequisite: CS-1210 C++ Programming. (Fee: $50) CS-2210 Data Structures Using Java –Fa,Sp 3 hours Introduction to the proper use of data structures for developing efficient software; data structures include stacks, queues, priority queues, hash tables, trees, and graphs. Students will develop skill in object-oriented design and the Java programming language. Design project required. Prerequisite: CS-1220 Object-Oriented Design Using C++. (Fee: $50) CS-3210 Programming Language Survey –Sp 3 hour Systematic study of the principles, concepts, and mechanisms of computer programming languages: their syntax, semantics, and pragmatics; the processing and interpretations of computer programs; programming paradigms; and language design. Illustrative examples will be selected from a variety of programming language paradigms. Prerequisite: CS-2210 Data Structures Using Java. (Fee: $50) CS-3310 Operating Systems –Fa 3 hours A state of the art survey of operating system principles. Covers fundamental technology and contemporary design issues such as threads, real-time systems, multiprocessor scheduling, distributed systems, security, and object-oriented design. Course content is developed through lectures, student research of the relevant literature, presentations, and programming projects using both C++ and Java. Prerequisite: CS-2210 Data Structures Using Java. (Fee: $50) CS-3410 Algorithms –Fa 3 hours Introduction to classical algorithms that have broad application in solving computer science problems; topics include analysis of algorithms, advanced data structures, graph algorithms, numerical methods, and NP-completeness. Prerequisite: CS-2210 Data Structures Using Java; MATH-2510 Discrete Math for Computer Science (Fee: $50) CS-3510 Compiler Theory and Practice –Sp 3 hours Introduction to the foundational technology of modern compilers, with emphasis on underlying theory and practical techniques for implementing a compiler by applying object-oriented and appropriate data structures. Design project typically developing a compiler is required. Prerequisite: CS-3410 Algorithms. (Fee: $50) (even years) CS-3610 Database Organization and Design –Sp 3 hours Introduction to the analysis, design, and implementation of relational databases and The Structured Query Language (SQL); topics include data modeling techniques, data model to logical schema conversion techniques, relational algebra, SQL, database file organizations, query evaluation, transaction management, and client-server application architectures. Design project required. Prerequisites: CS-2210 Data Structures Using Java; MATH-2510 Discrete Mathematics for Computer Science. (Fee: $50) CS-3920 Computer Science Internship –Fa, Sp 1-3 hours An opportunity for a computer science student to work closely with an industrial advisor. Specific attention is given to solving a particular problem(s) in the industry or firm. A faculty advisor assists in supervising and approving the internship, including assessing the number of credit hours. A final report (approximately seven pages per credit hour) describing the experience, including the problem and solution, is required. Must be arranged with a faculty sponsor and work supervisor before starting. No more than one hour of CS-3920 can be used to fulfill program technical elective requirements. Prerequisites: junior or senior computer science major status; faculty advisor permission. CS-4220 Web Applications –Sp 3 hours Introduction to the design and implementation of web-based applications using tools such as JavaScript, PHP, JSP, and Java servlets; applications will be developed using both the IIS and Apache servers. Multiple design projects required. Prerequisite: CS-2210 Data Structures Using Java. (Fee: $50) CS-4320 Network Security –Fa 3 hours Introduction to network security, including policy, malicious code, intrusion detection, prevention, response, cryptographic protocols for privacy and integrity, tradeoffs between risk of misuse, cost of prevention, and societal issues. Prerequisite: CS-3310 Operating Systems. (Fee: $50) CS-4410 Parallel Computing –Fa 3 hours Introduction to the exploitation of parallelism to solve computationally intensive problems; explores schemes for achieving parallelism, architectures required for parallel computing, performance analysis, and parallel algorithm design; uses common standards for message passing (e.g., MPI), local clusters and remote supercomputer systems. Prerequisites: CS- 3410 Algorithms. (Fee: $50) (even years) CS-4710 Computer Graphics –Fa 3 hours Introduction to two- and three-dimensional computer graphics; topics include analytic geometry of computer graphics (vectors, planes, clipping, visibility testing) and techniques for enhancing graphical realism such as lighting and shading, texture mapping, bump mapping, and reflection. Prerequisite: CS-3410 Algorithms, MATH-2510 Discrete Math for Computer Science. (odd years) (Fee: $50)

RkJQdWJsaXNoZXIy MTM4ODY=