Computer Science

Computer Science Major (CS)

The computer science major prepares students to be professional computer programmers and (with the proper area of specialization) to enter graduate school in Computer Science. Students will learn both the theory and practice of the profession, how to work in groups to complete large software projects and appropriate ethical standards. Computer science is a rapidly changing profession and the Mount Mercy computer science program endeavors to teach, model and demonstrate the most modern professional practices. Students with a computer science degree find excellent employment opportunities in almost all industries.

* NOTE: Computer science courses taken seven or more years ago are subject to review by the department before awarding credit for a major or minor in computer science.

Objectives established for students in this major include, among others: use programming languages to explain fundamental computer science concepts; design and analyze algorithms; and understand the process of software engineering (i.e. writing specifications.)

Career Opportunities

Graduates of the computer science program may be employed in business and industry. See the Graduate section of this Catalog for more information on Graduate programs offered at Mount Mercy.

Major

MA 150Discrete Mathematics3
CS 105Fundamentals Of Computer Science4
CS 106Data Structures4
CS 112Introduction to Object Oriented Programming 13
CS 190Computer Organization4
CS 203Information Ethics3
CS 235Systems Programming Concepts4
CS 389Algorithm Analysis3
CS 435Senior Project: CS4
Plus one area of specialization 22-23
Total Hours54-55
1

NOTE: The student will have a chance to take challenge test to get credit for CS 112.

Area of specialization

CS electives 6-12 semester hours (2-4 courses) and specialization courses 11-16 semester hours (4-6 courses in a discipline other than CS).

The intent of the “Area of Specialization” is to allow students to create their own programs of study in Computer Science. A traditional computer science program is possible by selecting the Computational Science Specialization. Other programs of study are outlined beginning on the next page, but this list is incomplete. Potential students are encouraged to “think outside the box” as they, with the advice and approval of their advisors, create their personal computer science majors at Mount Mercy.

The area of specialization must be declared by the end of the Spring term of your sophomore year (can be changed later).

Sample Areas of Specialization for the Computer Science Major

Computational Science

This specialization is intended for those considering graduate school in computer science.

CS 302Programming Languages4
CS 399Special Topics in Computer Science3
MA 164Calculus I4
MA 165Calculus II4
MA 202Linear Algebra4
Total Hours19

Information Security

Individuals choosing information security are encouraged to complete a mathematics minor.

CS 399Special Topics in Computer Science (Cryptography)3
CS 399Special Topics in Computer Science (Any)3
MA 164Calculus I4
MA 165Calculus II4
MA 214Probability And Statistics3
CJ 297Criminal Law3
Total Hours20

Web Development

CS 315Web Programming4
CS 388Database Systems4
BK 208Principles Of Marketing3
AR 120Visual Technology3
AR 130Graphic Design I3
AR 330Web and Motion Graphics3
Total Hours20

Software Development

This is a more CS intensive version of MIS.

This is the only area of specialization available in the evening accelerated program.

CS 326Information Systems Analysis3
CS 388Database Systems4
CS 399Special Topics in Computer Science (Any)3
BA 250Technology & Communication In Business3
BN 204Principles Of Management3
BN 377Project Management3
Total Hours19

Embedded Systems

CS 399Special Topics in Computer Science (Embeded Systems)3
CS 399Special Topics in Computer Science (Robotics)3
CS 399Special Topics in Computer Science (Any)3
MA 164Calculus I4
MA 210Introduction To Graph Theory3
PH 151Principles of Physics I4.5

Software Engineering

CS 302Programming Languages4
CS 326Information Systems Analysis3
CS 399Special Topics in Computer Science (Any)3
CS 399Special Topics in Computer Science (Any)3
MA 164Calculus I4
MA 210Introduction To Graph Theory3

Academic Requirements

A grade of C or above (C- does not count) is required in all courses in the major and their prerequisites. A cumulative grade point average (all courses) of 2.00 or higher is required for graduation with a major in Computer Science.

Courses

CS 101 Using Computers in Research Settings: 1 semester hour

The course is designed to make students fluent in the use of common office applications in professional settings. We will learn these skills in the context of the analysis and interpretation of real-world data sets that come from the research of the faculty and students of Mount Mercy University. Students who complete this course will be able to be more productive here at Mount Mercy, and more prepared to enter careers or to attend graduate school.

CS 103 Introduction To Web Site Development: 3 semester hours

In Introduction to Web Site Development, students will learn a wide arange of web-based technologies and scripting languages that are used for the development of internet web sites. The tools discussed in the course will vary in order to stay current with the rapidly changing environment of web development. These tools could include (but are not limited to): wysiwyg html editors, html, css, xml, Flash, java script and dynamic web programming languages. The intent of the course is to give students a broad experience with a wide range of web-based technologies. This course is intended for non-majors who are interested in careers focused on the development of web sites. Computer Science majors may take the course as an elective, but it cannot be used to fulfull any CS graduation requirement or to complete an area of specialization.

CS 105 Fundamentals Of Computer Science: 4 semester hours

This course focuses on the concepts and constructs of computer programming, including program design and decomposition, data types, interactive and file input/output, control structures, and graphical user interface development. Formerly CS 175.

CS 106 Data Structures: 4 semester hours

This course introduces basic concepts of software development, elementary data structures (including sets, lists, stacks, queues, trees, and graphs), recursion, and elementary algorithm analysis. Formerly CS 205. Prerequisites: CS 105, MA 150 (the latter may be taken as a co-requisite).

CS 112 Introduction to Object Oriented Programming: 3 semester hours

This course teaches the concepts and skills of object oriented programming. Topics to be covered include inheritance, abstract fields, methods and classes, encapsulation and polymorphism. Demonstration of significant experience and skills in object oriented programming can be used to pass out of the course. Prerequisite: CS 105.

CS 190 Computer Organization: 4 semester hours

This course covers various hardware aspects of computers. Topics to be covered include number representation, digital logic, Boolean algebra, memory technologies, and management techniques, interrupts, CPU structure, microprogramming, assembly language, and input/output devices. Prerequisite: CS 106.

CS 203 Information Ethics: 3 semester hours

In this course, students will learn to define and analyze ethical, moral, social, and professional issues related to computing and information technology. Topics to be discussed include ethical frameworks for decision making, regulation of the Internet, intellectual property, privacy, security, and codes of conduct. Prerequisite: sophomore standing or consent of instructor.

CS 226 Programming in Visual Basic: 4 semester hours

This course is an introduction to programming using Visual Basic and the .NET development environment. Topics to be covered include control structures, input/output, graphical user interfaces, and interface with other Microsoft Office applications. This course is for MIS majors.Computer Science majors may take the course as an elective, but it cannot be used to fulfill any CS graduation requirement or to complete an area of specialization.

CS 235 Systems Programming Concepts: 4 semester hours

This course explores topics related to operating systems and network programming, including shell programming, programming with operating systems calls, and programming using network sockets. Other topics include basic struture of operating systems and network software. Prerequisite: CS 190.

CS 302 Programming Languages: 4 semester hours

This course considers the evolution of programming languages. Topics to be discussed include language specification and analysis, syntax, semantics, parameter passing techniques, scope, binding, paradigms (including imperative, functional, and object-oriented), and translation techniques. Prerequisite: CS 190.

CS 315 Web Programming: 4 semester hours

This course explores the development of web-based applications and dynamic web pages using modern development tools and languages. Topics to be covered include basic web site design, scripting languages, web servers, use of databases and SQL in the development of dynamic web sites and web security. Prerequisite: CS 190.

CS 326 Information Systems Analysis: 3 semester hours

This course will focus on management issues in the creation and management of information systems. Broad topics will include system investigation, system and feasibility analysis, system design, system implementation, and system maintenance. Various approaches to systems analysis and design will be considered, as well as tools. Prerequisites: CS 106 for CS students or CS 226 and BN 204 for MIS students.

CS 388 Database Systems: 4 semester hours

This course emphasizes the concepts and structures necessary to design and implement a database management system. Topics to be covered include the evolution of database systems, the relational database model, query languages, triggers, constraints, views, and other advanced topics as time permits. Prerequisite: CS 326.

CS 389 Algorithm Analysis: 3 semester hours

This course is an introduction to advanced data structures and algorithm analysis techniques. Topics to be covered include asymptotic notation, empirical and theoretical analysis techniques, complexity classes, algorithmic approaches (divide and conquer, greedy), and advanced tree structures. Three hours lecture. Prerequisites: MA 150, CS 106.

CS 399 Special Topics in Computer Science: 3 semester hours

This course provides students the opportunity to take electives in an area of special interest in computer science. When possible, the course will be taught by experts from the field. Topics may include educational software develoment, artificial intelligence, robotics, embedded systems, bioinformatics, and cryptography. Prerequisite: permission of instructor.

CS 415 Field Experience: 3 semester hours

This course provides students the opportunity to take advantage of internship opportunities that become available. The internships include off-campus supervision at local empolyers and periodic conferences with the on-campus instructor. One semester hour of credit is assigned for each 45 hours of work per semester at the outside agency.

CS 420 Mgmt Info Systems Senior Thesis: 3 semester hours

The MIS Senior Thesis is intended to be one option for the MIS capstone course specifically suited to students with significant professional experience as a team member on at least one large enterprise software development project. Students in this course will work with a faculty member to select a topic relevant to their education and professional experience, design a plan for researching the topic and produce a thesis that reviews and analyzes the research and integrates the research, the learning they have gained from their educational program and from their professional experience into a solution of the problem defined by the chosen topic.

CS 430 Senior Project: MIS: 4 semester hours

This is the capstone course for management information system majors. The student will complete a broad and deep software development project as part of a mulit-disciplinary team as project managers. Prerequisites: CS 226, CS 326 and BN 377.

CS 435 Senior Project: CS: 4 semester hours

This is the capstone course for computer science majors. The student will complete a broad and deep software development project as part of a multi-disciplinary team. Prerequisites: CS 235 and at least one 300-level CS course.