Major and Minor Requirements 2008-2009

Major Requirements (60 hours)
Computer Science
CSci 105, CSci 115, CSci 116, CSci 215, CSci 230, CSci 305, CSci 310, CSci 365, CSci 371
Management Information Systems
MIS 220
Computer Science / Management Information Systems Electives
Any 300 or greater level Computer Science course
Any 300 or greater level Computer Science or Management Information Systems course
Mathematics
Math 123 or Math 223
Accounting
Acct 201, Acct 202
Management
Mngt 301
Accounting / Management Electives
Any three 300 or greater level Accounting or Management courses
Computer Science Senior Capstone
CSci 420
Minor Requirements (21 hours)
CSci 105, CSci 115, CSci 116, CSci 230, CSci 305, CSci 371
Any 300 or greater level Computer Science course
Degree Audit Forms
Computer Information Systems Major
Computer Information Systems Minor

Courses (as listed in the Marietta College 2008-2009 Catalog of Undergraduate Programs )

CSci 105 - Microcomputer Applications
Overview of microcomputer hardware and software systems that enhance personal and professional productivity. Overview of computer components, microcomputer operating systems, word processing, spreadsheets, and database management systems. Emphasizes integrated use of these tools to solve problems. Involves substantial amount of lab work outside of class.
Prerequisites: None.
CSci 115 - Computer Programming I
Introductory analysis, design, implementation, and debugging of well-structured computer programs. Style and documentation emphasized. Primitive commands, basic data types, control structures, scope, functions, parameters, arrays, records and classes.
Prerequisites: None.
CSci 116 - Computer Programming II
Emphasizes top-down design, modularity, recursion, dynamic variables, and data structures such as trees, stacks, and queues.
Prerequisites: CSci 115.
CSci 150 - Advanced Software Applications
Advanced survey of popular applications software packages, such as word processors, spread sheets, database systems, and operating systems. May be repeated up to three times, provided that a different software package is covered each time. On the transcript, this course listed with software package in parentheses.
Prerequisites: CSci 105 or written permission of instructor. Credit: 1 Hour.
CSci 210 - Scientific Computing and Problem Solving
Use of computer software tools to assist in conducting scientific research. Problem and context identification; mathematical modeling of relationships and/or conjectures; selection of software tools, development, implementation and testing of designs. Computing tools include spreadsheets, simulation software, and programming languages. Projects reflect the type of research conducted in courses designed for science and engineering majors. Focus will be on problems whose solutions require mathematics, statistics, computer science, and basic understanding of one or more science areas.
Prerequisites: (Math 123 or Math 121 or satisfactory score on the calculus readiness section of the math placement test) and (completion of at least one course in a laboratory science sequence).
CSci 215 - Computer Architecture and Programming
Computer architecture and machine language; internal data representation; symbolic coding and assembly systems; macro facilities; program segmentation and linkage; construction of elementary assemblers; overview of operating systems.
Prerequisites: CSci 116.
CSci 216 - Computer Organization
Logic design, information transfer, and control within computer. Boolean functions, combinational and sequential logic elements, number representations and arithmetic, microprogrammed vs. hardwired control, input/output, and interrupts.
Prerequisites: CSci 215.
CSci 230 - Using Database Management System Software
Students will learn to use a relational DBMS to develop a user-friendly system which allows users to manipulate data and generate reports to support decisions in a typical business application environment. Topics include data structure definitions; data manipulation operations; query, report, forms and menu generation; SQL commands; and use of a programming language to customize database operations.
Prerequisites: CSci 115.
CSci 240 - Introduction to File Processing
External data structures used to represent various file organizations, such as sequential, indexed, and random; algorithms for searching and sorting files; direct access files using Btrees and hashing; techniques for implementing inverted lists and multilists.
Prerequisites: CSci 116.
CSci 305 - Systems Analysis and Design
Software engineering approach to system life cycle of computer-based information systems. Modern structured techniques, employing data-flow diagrams, data dictionaries, data structure diagrams, structured English minispecs, and structure charts, used in case studies and class projects.
Prerequisites: CSci 116 and at least one 200-level CSci course.
CSci 310 - Data Structures and Algorithm Analysis
Analysis of algorithms that represent and transform information structures such as strings, lists, stacks, queues, and multilinked structures; techniques for finding paths and spanning trees in graphs; methods of dynamic storage allocation and recovery; abstract data types.
Prerequisites: CSci 215 and CSci 240.
CSci 320 - Computer Graphics
Interactive graphics displays. Line-drawing algorithms, circle generation, transformations, clipping and windowing, segmented display files, picture structure, graphical input techniques, raster graphics, scan conversion algorithms, three-dimensional transformations and perspective, and hidden surfaces. Includes writing of graphics packages using microcomputers and graphics terminals and plotters. Offered when feasible.
Prerequisites: CSci 310 and Math 224.
CSci/Math 340 - Numerical Analysis
Introductory numerical techniques emphasizing algorithms suitable for use with computer. Error analysis and critical comparison of alternative algorithms emphasized. Series approximations to functions, roots of equations, linear systems of equations, integration, and ordinary differential equations. Offered when feasible.
Prerequisites: CSci 115 and Math 224.
CSci 342 - Principles of Programming Languages
Introductory programming language design and analysis. Formal syntax, data types, storage models, control structures, binding occurrences, procedural abstraction, definition structures, concurrent processes, and formal semantics. Examples include Ada, Pascal, LISP, Prolog, and C++.
Prerequisites: CSci 310.
CSci 365 - Computer Networking and Data Communications
Overview of computer networks using various models, such as the OSI layered approach, IEEE 802 and "real" protocols, including TCP/IP and popular commercial protocols. Design and implementation of LANs (Ethernet, FDDI, etc.) using the campus network. Design of internetworks and routing. Managing networks. Client/server applications.
Prerequisites: CSci 215 or CSci 230 or CSci 240.
CSci 371 - Database Management Systems Design
Design techniques and secondary storage structures used in computer-based data models. Attributes and functional dependencies; data normalization; network, relational, and hierarchical models; schema and query languages; integrity and security issues.
Prerequisites: CSci 230 or CSci 240.
CSci 380 - Operating Systems and Computer Architecture
Relationship between advanced computer architecture and implementation of modern operating systems. Processor modes and context switching, memory management, input/output, exception handling, process scheduling, paging, and swapping. Modern operating system, such as UNIX and/or VAX/VMS, used to provide examples of these ideas.
Prerequisites: CSci 215.
CSci 385 - Artificial Intelligence
Data structures and algorithms required to simulate human intelligence with computers. Knowledge representation, search algorithms, games, predicate calculus and resolution, unification, rule-based systems, learning and brief introduction to neural networks. LISP-like language used for projects. Offered when feasible.
Prerequisites: CSci 215.
CSci 410 - Compiler Design
Design and implementation of language translators. Lexical analysis and regular expressions; context-free grammars and parsing algorithms; syntax-driven translation; intermediate code representations; code generation; and optimization techniques. Offered when feasible.
Prerequisites: CSci 310.
CSci 420 - Systems Development Project
Senior-level departmental capstone course. Teams of students construct a complete operational system. Course project responds to actual needs of manufacturing, retail, or service organization.
Prerequisites: Written permission of instructor.
CSci 422 - Theoretical Foundations of Computing
Various mathematical models for computation. Nature of computation, finite automata and grammars, solvable and unsolvable problems, formal semantics, proving program correctness, and nondeterminism. Offered when feasible.
Prerequisites: CSci 310.
CSci 430 - Expert Systems
Choosing, creating, and evaluating expert systems and expert system shells. Emphasizes developing systems that exploit backward chaining rules and that permit assignment of confidence levels to rule-based system. Offers students experience in linking inference engines developed with expert system shells (e.g. M.1) to modules written in more traditional languages (e.g. C). Inductive systems and non-rulebased systems discussed. Offered when feasible.
Prerequisites: At least one 300-level CSci course.
MC logo
Mathematics and
Computer Science
232 Selby
215 5th St
Marietta, OH 45750
740.376.4820 [Voice]
740.376.4808 [Fax]
math.csci@marietta.edu


Valid XHTML 1.1 Valid CSS