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 arrange 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 fulfill 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 162 (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 105 & MA 162.

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 215 Data Programming Languages: 3 semester hours

This course is an introductory course for using current programming language techniques for Data Science. Students will learn to use a contemporary programming language, like python or R, to solve various data science challenges. The course reinforces the student’s knowledge of objects and control structures. The student will expand this knowledge for data storage, manipulation, visualization, and randomness. These tools and techniques are vital to the data science professional. Prerequisite: CS 105.

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 structure of operating systems and network software. Prerequisite: CS 190.

CS 302 Programming Languages: 3 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 235.

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 340 Game Design and Development: 4 semester hours

This course is an introductory overview of the video game design and development process. Through detailed study of historical as well as current games, students will learn the language and structure needed to develop their own game ideas. Students will learn the many aspects of a game development team and learn how each of these roles contributes to a game’s overall design. Projects, in and out of class, will focus on creating and designing game concepts both digital and non-digital. A strong focus on the elements of game design and process will support class projects. Students will get a basic overview of game studies and integrate those concepts into their work. Prerequisite: CS 106, CS 235, & CS 326.

CS 341 Mobile Development: 4 semester hours

This course is an introductory overview of the mobile application design and development process. Through detailed study of historical as well as current mobile, students will learn the language and structure needed to develop their own mobile applications. Students will learn the many aspects of a mobile development team and learn how each of these roles contributes to an applications overall design. Projects, in and out of class, will focus on creating and designing mobile concepts. A strong focus on the elements of mobile design and process will support class projects. Prerequisite: CS 106, CS 235, & CS 326.

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 235 or 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 162, CS 106.

CS 391 Embedded Systems: 3 semester hours

This course is an introductory overview of embedded systems and embedded language. Students will learn the skills needed to develop their embedded solutions through a detailed study of embedded control history and current applications of embedded systems. In and out of class, projects will focus on using, creating, and designing embedded system solutions. Prerequisites: CS 106, CS 235, MA 164.

CS 392 Robotic Systems: 3 semester hours

This course is an introductory overview of robotic systems and sensor networks. Students will learn the skills needed to develop their robotics and sensor network solutions through a detailed study of robotic history and current applications of robotic systems. Students will work with both mobile and stationary robotics. In and out of class, projects will focus on using, creating, and designing robotic solutions. Prerequisites: CS 106, CS 235, MA 164.

CS 393 Cryptology: 3 semester hours

This course is an introductory overview of Cryptology and Secure Programming. Students will learn the skills needed to develop their security solutions through a detailed study of cryptographic history and current cryptographic algorithms. Students will learn the many aspects of a security team and how each role contributes to security’s overall design. In and out of class, projects will focus on using, creating, and designing security solutions for both digital and non-digital domains. Prerequisites: CS 106, CS 235, MA 164.

CS 395 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 326 & CS 388.

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 development, 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 employers 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 Management Information 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 422 IT Security and Risk Management: 3 semester hours

This course introduces the fundamental principles and topics of Information Technology Security and Risk Management at the organizational level. Students will learn critical security principles that enable them to plan, develop, and perform security tasks. The course will address hardware, software, processes, communications, applications, and policies and procedures with respect to organizational IT Security and Risk Management. Prerequisite: BN 340 & CS 326.

CS 425 IT Audit and Controls: 3 semester hours

This course introduces the fundamental concepts of the information technology audit and control functions. This course focuses on understanding information controls, the types of controls, and their impact on the organization and managing and auditing them. The concepts and techniques used in information technology audits will be presented. Students will learn the process of creating a control structure with goals and objectives, audit an information technology infrastructure against it, and establish a systematic remediation procedure for any inadequacies. The course also covers the challenges of dealing with best practices, standards, and regulatory requirements governing information and controls. Prerequisite: BN 340 and CS 326.

CS 430 Senior Project: Management Information Systems: 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 multi-disciplinary team as project managers. Prerequisites: CS 226, CS 326 and BN 377.

CS 435 Senior Project: Computer Science: 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 388 and (CS 302 or CS 395).

CS 445 Computer Science Independent Study: 3 semester hours

Study topics will be negotiated by the student and his/ her advisor.

Computer Science Major

Required:
CS 105Fundamentals Of Computer Science4
CS 106Data Structures4
CS 190Computer Organization4
CS 203Information Ethics3
CS 235Systems Programming Concepts4
CS 302Programming Languages3
CS 388Database Systems4
CS 389Algorithm Analysis3
CS 435Senior Project: Computer Science4
DS 101Introduction to Data Science I3
MA 162Discrete Mathematics3
MA 164Calculus I4
MA 214Probability And Statistics3
or MA 135 Basic Statistics
One area of specialization 12.5 - 16
Total Hours58.5-62

Area of specialization

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. Potential students are encouraged to “think outside the box” as they, with the advice and approval of their Computer Science faculty advisor, 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 and/or double major with mathematics.

MA 165Calculus II4
MA 166Calculus III3
MA 202Linear Algebra3
MA 210Introduction To Graph Theory3
Total Hours13

Information Security

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

CJ 297Criminal Law3
CS 422IT Security and Risk Management3
CS 393Cryptology3
MA 165Calculus II4
Total Hours13

Web Development

This specialization is for individuals interested in creating websites and/or databases for business.

AR 120Visual Technology3
AR 130Graphic Design I3
AR 231Graphic Design II: Web & Motion Graphics3
BK 208Principles Of Marketing3
CS 395Web Programming4
Total Hours16

Robotics and Embedded Systems 

This specialization prepares the student for a career developing embedded software.

CS 391Embedded Systems3
CS 392Robotic Systems3
MA 202Linear Algebra3
PH 151Principles of Physics I4
Total Hours13

Software Engineering

This is the most technical CS area of specialization.

BA 250Technology & Communication In Business3
BN 204Principles Of Management3
BN 377Project Management3
CS 326Information Systems Analysis3
CS 395Web Programming4
Total Hours16

Scientific Computing 

PH 151Principles of Physics I4
PH 152Principles of Physics II4
CH 111General Chemistry I4.5
or BI 125
125L
Foundations of Biology & Scientific Inquiry I
and Biostatistics and Scientific Investigation I
Total Hours12.5

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. CS 101 Using Computers in Research Settings, CS 103 Introduction To Web Site Development and CS 226 Programming in Visual Basic do not count towards major requirements(including area of specialization).

Computer Science Minor

In an era of increasing technology, the MMU computer science minor provides a valuable skill set for almost any major.

Required
CS 105Fundamentals Of Computer Science4
CS 106Data Structures4
CS 190Computer Organization4
CS 203Information Ethics3
CS 235Systems Programming Concepts4
CS 388Database Systems4
DS 101Introduction to Data Science I3
MA 162Discrete Mathematics3
Total Hours29

The following is the typical sequence of courses required for the major*:

Freshman
FallHoursWinterHoursSpringHours
CS 1054Domain3CS 1064
MA 1623 CO 1013
Writing Competency4 DS 1013
Portal3 Domain3
 14 3 13
Sophomore
FallHoursWinterHoursSpringHours
CS 1904CS 2033CS 2354
MA 1644 MA 2143
Domain3 Domain3
Domain3 Domain3
  Domain3
 14 3 16
Junior
FallHoursWinterHoursSpringHours
CS 3884Elective3CS 3023
CS Elective 3 CS Elective 3
Domain3 Natural World Domain4
Domain3 Domain3
Elective3  
 16 3 13
Senior
FallHoursWinterHoursSpringHours
CS 3893Elective3CS 4354
ME 4501 CS Elective3
CS Elective 3 Elective3
Elective3 Elective2
Elective3  
 13 3 12
Total Hours: 123

Note: Elective courses could be used for a second major, a minor, a course of interest, internship or study abroad experience.

Note: See the Curriculum section for more information on Portal, Competency, Domain, and Capstone courses.

*Disclaimer

The course offerings, requirements, and policies of Mount Mercy University are under continual examination and revision. This Catalog presents the offerings, requirements, and policies in effect at the time of publication and in no way guarantees that the offerings, requirements, and policies will not change.

This plan of study represents a typical sequence of courses required for this major. It may not be applicable to every student. Students should contact a department faculty member to be sure of appropriate course sequence.