Computer Science Bachelor's Degree
View courses and cost per credit for our Computer Science Bachelor's degree. Courses, course names, and cost per credit may vary by location. Download your state specific catalog for more information.
Choose your state or online to see your full course listing:
Course listings are subject to change. Please see our course catalog and/or addendum for most current listings.
Computer Science Bachelor's Degree Course List
Major and Core Courses
- Applied Discrete Mathematics
- Probability and Statistics
- Software Systems Principles
- Operating Systems Design
- Web Application Architecture and Design
- Software Systems Engineering
- Database Systems Design
- Mobile Platform Development
- Algorithm Analysis
- Artificial Intelligence
- Network Systems Design
- Advanced Mobile Application Development
- Simulation Analysis and Design
- Computer Graphics Programming
- Engineering Virtual Worlds
- Senior Computer Science Capstone
This course builds on the foundation established in Introduction to Discrete Mathematics with further exploration in logic and mathematical reasoning. Topics include combinatorics and graph theory, Boolean algebra, digital logic circuits, ordered sets, functional programming, models of computation, and computational complexity. Students will gain experience formulating mathematical proofs.
Prerequisites:Introduction to Discrete Mathematics; Calculus II
Course ID: MH300
This course explores the concepts of conditional probability, random variables, expectations and distributions, sample spaces, moment-generating functions, and the central-limit theorem. Further topics include an introduction to estimation, confidence intervals, and hypothesis testing. Students will be able to generate random variables through experimentation, and they will understand how to apply statistical concepts to computational applications.
Prerequisite:Introduction to Discrete Mathematics
Course ID: MH310
This course provides a historical perspective of programming languages and their development. Students will study techniques of language translation including lexical analysis, grammar, syntax, and parsers. Topics include the structure and functionality of modern operating system software with an emphasis on concurrent process execution, process scheduling, communication, and API services. The design and development of programs using dedicated OS features is also considered.
Prerequisite:Introduction to Computer Systems
Course ID: N303
In the course, students learn how operating systems such as Windows, Linux, and the Mac OS X are a fundamental component of all computing systems. This course explores how operating systems are responsible for managing the running processes as well as the sharing of system resources such as the printers and storage over network infrastructures. The course provides an in-depth exploration of the design and implementation of modern operating systems. Topics include the evolution of operating systems, scheduling, paging, input/output devices, virtual memory, files, synchronization, and security.
Prerequisite:Software Systems Principles
Course ID: N304
This course presents key concepts in distributed designs for network enabled software systems and applications. Distributed designs allow applications to span multiple machines and require deliberately planned design approaches. Students will learn to build systems that are scalable, reliable, and secure when implemented within network infrastructures. Topics include object-oriented programming to networked web services, including database applications deployed on very large-scale websites.
Course ID: N322
This course exposes students to the implementation of software systems at a high level with an emphasis on rigorous algorithm development and test suites. The course introduces the systems aspect of development and tradeoffs related to resource management, system architecture capabilities, and hardware and software efficiencies. Students are also exposed to requirements analysis and the techniques to develop a functional system from specified requirements.
Course ID: N341
In this course, students will learn how to develop and deploy a relational database management system (RDBMS) as a software application. Students will explore relations and tables as well as how to modify the relations with commands such as insert, update, and delete. Students will also understand the role and importance of primary and foreign keys in creating relational database structures.
Course ID: N358
As more devices become smaller and more mobile, the need to have games to entertain users in downtime increases. This course looks at how to create games for mobile platforms using a systematic approach. The Java programming language is utilized in creating these games. How to weave in audio and video is also addressed along with considering factors such as user inputs involved in playing the game.
Course ID: N360
This course provides a detailed exploration of algorithm design and analysis, including greedy algorithms, divide and conquer, dynamic programming, and backtracking. Students will gain experience with searching and sorting techniques in practical applications. The course will emphasize the verification and analysis of time space complexity within a software design framework.
Prerequisites:Programming II; Probability and Statistics
Course ID: N361
Students will learn how techniques in Artificial Intelligence (AI) can be utilized to allow software applications to mimic human or intelligent behavior in a variety of contexts ranging from expert systems to computer-controlled game opponents. Students will be exposed to topics such as natural language processing and parsers, problem solving algorithms, and knowledge representations. The implications of the intelligent agent paradigm as it relates to common sense and creativity will also be explored.
Course ID: N401
This course offers the study of the technology, network architecture and topologies, and software used by systems of network-connected computers. Topics include data transmission, local area network architectures, network protocols, distributed systems, security, and network applications such as email, various transfer protocols, and services of the Internet such as the World Wide Web. Students will develop programs that run concurrently running computers within various network configurations.
Prerequisite:Operating Systems Design
Course ID: N402
Building upon the topics covered in Mobile Application Development, this course provides students with instruction in the creation of more complex applications and programs. Students will learn how to use the Dalvik virtual machine as a platform to develop Android applications. Additionally, students will understand the differences in developing applications in a wide range of vertical industries including healthcare, science, and entertainment.
Prerequisite:Mobile Application Development
Course ID: N403
This course offers students an in-depth exploration of the use of probability theory and statistical methods in the development of computer simulations used to study and model real-world phenomena. Students will build application frameworks to model events and activities within several environments including medical, industrial, military, and scientific simulation.
Course ID: N436
This course offers a survey of computer industry-standard graphic hardware, foundation graphic operations and implementations, two-dimensional and three-dimensional transformations utilizing matrix calculations, hidden lines and surface removal, illumination and shading models, curves and surface textures, object modeling, and three-dimensional animation. Students will learn how to convert complex mathematical formulae into operational program code.
Course ID: N461
\"In this course, students will learn how to create multi-user virtual worlds. Virtual worlds allow network-connected users to interact in real time within shared two-dimensional and three-dimensional environments. Students will gain an understanding of how virtual worlds change the concept of \"\"interface\"\" to one of \"\"location.\"\" The course will explore several types of worlds, the technologies and methodologies for building worlds, and ways in which communities are hosted in local and remote configurations.\"
Course ID: N471
The Senior Computer Science Capstone course provides a culminating and integrative educational experience. While participating in a team environment, students will design and implement a large-scale software project utilizing the skills and techniques they have mastered throughout their program of study. Class and small group meetings will be used for teams to demonstrate the progress of their projects as well as for the teams to meet and work. Team meetings outside of regularly scheduled class sessions will be required.
Prerequisite:Must fall in last quarter of study
Course ID: N480
- Career Development
- Calculus I
- Calculus II
- Programming I
- Foundations of Software Design
- Programming II
- Introduction to Computer Systems
- Discrete Structures for Computer Science
- Mobile Application Development
- Object-Oriented Programming
- Relational Databases
- Fundamentals of Programming
- Java I
This course is designed to study the personal and professional characteristics necessary for obtaining and maintaining suitable employment. The student will assemble a complete jobseeking portfolio including his/her resume and references, letters of application and appreciation, documentation of work and educational history, and demonstration of skills through examples of student work. The course includes an indepth study of self-marketing approaches, job interviewing techniques and professionalism as well as participation in a mock interview.
Course ID: E242
In this course, students will understand the application of function theory including the properties and behavior of various function types including polynomial, exponential, rational, polar, and parametric functions. The course emphasizes the comprehension of function behavior through graph plotting, both manual and through the use of graphing calculators. Students will develop solution sets for equations and inequalities.
Course ID: MH100
This course takes students into a deeper exploration of functions within the framework of the Fundamental Theorem of Calculus. Topics including limits, derivatives, and methods of integration will be discussed. Students will cover numeric, graphical, and symbolic approaches to problem-solving for real-world scenarios. Technology including graphing calculators and computer applications will be used to solve problems and properly interpret results.
Course ID: MH200
In this continuation of the topics investigated in Calculus I, students will further explore the methods of integrations and the applications of integrals as well as power series and methods of differentiation. This course will cover the topics of convergence and divergence, and students will understand whether improper integrals are convergent or divergent.
Course ID: MH210
This course is designed to teach the student C++ programming utilizing object oriented terminology. C++ expressions, decisions, and loops within the C++ realm are explored and practiced. This first course in a two course sequence ends with an analysis of functions and classes and how these elements are used in different programming projects.
Course ID: N137
This course introduces students to fundamental aspects of programming as it is related to proper software design concepts. Students will gain an understanding of how computational techniques are applied in solving a variety of problems. Topics will include variables, procedural abstraction utilizing handlers, conditionals, and loops, and data types. The course will also provide students with an understanding of software engineering by having them write small but useful computer programs using pseudo-code as well as a high-level programming language.
Course ID: N142
This course is a continuation of Programming I. Topics that will be covered in this course include design analysis, inheritance, and the use of templates in programming. A look at input/output issues is done along with a look at advanced topics in C++ programming and a brief look at how C++ can start to be utilized in game programs is covered.
Course ID: N207
This course is an introduction to the study of software control over the various hardware components of a computer's architecture - the CPU, RAM, and system bus. Topics include development of C language programs with a pseudo-code foundation, CPU operation at the bus level, comparison of procedural languages to machine language, and the development of machine and assembly language programs using multiple addressing modes, branching, and subroutine calls.
Prerequisite:Foundations of Software Design
Course ID: N210
This course will provide a basic understanding of discrete mathematical topics that form the basis of computer science. Topics to be covered include truth tables, logical propositions, elements of set theory, as well as basic notions of functions and mathematical induction. Students will explore the logical constructs that are the underlying model of discrete systems.
Prerequisite:Fundamentals of Programming
Course ID: SD110
In this course, students will understand the development cycle of programs and applications for mobile devices. Utilizing the Java language, students will create both standalone programs as well as program suites for mobile marketplace commerce systems where applications can be deployed. Instruction will focus on mobile development best practices for ease and efficiency of program development.
Course ID: SD140
This course will provide students with an understanding of the basic concepts of object-oriented programming including encapsulation, inheritance, and polymorphism. Students will explore the uses of class templates as well as their attributes, behaviors, and the methods that can be applied to them. Programs will be developed and implemented utilizing the Java programming language.
Prerequisite:Fundamentals of Programming
Course ID: SD225
This course covers relational databases and their efficient design. The course will include the definition of tables and indexes, logical and physical design, the E-R model, and transaction management. The use of Structured Query Language (SQL) will be emphasized.
Prerequisite:Fundamentals of Programming
Course ID: W109
This course is an introduction to logic and computer programming and provides the fundamental knowledge and skills needed to begin programming in any language. The student will learn to design computer programming logic using pseudocode and flowcharting techniques, while learning the processes, procedures, and conventions of programming. Topics include variables, functions, loops, conditionals, and basic input and output.
Course ID: W107
Students will work with the Java programming language to learn about Java bytecode programs and how they are executed within a Java virtual machine. Students will study class libraries and gain an understanding of how they perform important computing tasks, how they interact with computer hardware and operating systems, and how they handle deficiencies encountered on computing platforms. Concepts such as Graphical User Interfaces, multimedia development, and web programming will be explored as well as the use of Java programming in the development of applications for mobile devices.
Course ID: W210
General Education Courses
Communication (Select 1 course)
- Advanced Composition
- Visual Communication in the Media
This advanced writing course is intended to help students further develop and refine their writing, researching, and analytical skills, through the application of these skills to various rhetorical situations. To achieve these goals, students will be expected to develop their ability to present their views in an organized, unified, and coherent manner to diverse audiences.
Course ID: G324
This course examines how people understand their world through visual images. Students will examine how people visually gather, process, and interpret information presented through media sources.
Course ID: G332
Humanities (Select 2 courses)
- American Literature
- Contemporary World Literature: 1900 to the Present
- Literature of American Minorities
- Political Thought
- Human Uses of the Environment
- Physical Geography
- Conservation of Resources
- Gender in Math and Science
This course surveys authors, genres, and movements in American literature from 1865 to the present, including representative works of Realism, Naturalism, Modernism, and Post- Modernism/Post-Structuralism. Students will engage in critical readings of exemplary literary texts from a diverse group of authors that have influenced American literature since the Civil War. Students will analyze how these works of literature exemplify particular historical moments in U.S. history, as well as how they communicate pertinent cultural issues such as gender, race, ethnicity, class, religion, sexual identity, community, region, and nation. In their study of the broad range of American fiction, poetry, and drama since 1865, students will analyze literary, aesthetic, and critical developments.
Prerequisites:English Composition; Introduction to Literature
Course ID: G330
This course explores how authors from around the world have engaged with important themes and historical events throughout the twentieth century. In studying these texts, students will examine the interplay of fiction and history, the varieties of literary style, and the qualities that link as well as distinguish works from different cultures. Students will respond to texts critically in discussion and essays, as well as research critical evaluations of literary topics, authors, etc.
Course ID: G335
This course introduces students to a variety of texts by American minority authors from the mid- 19th century to the present. The central focus of this course will be on literary responses to social marginalization based on race/ethnicity, gender, national origin, sexuality/sexual orientation, ability, and other factors. Students will study the effects of exclusionary and oppressive practices, both historical and present day, on writers' perceptions and literary representations of their times, contexts, and identity. Students will also be introduced to samples of the most common critical-theoretical approaches to the primary texts they will study in this class
Course ID: G435
The aim of this course is to understand and appreciate some important authors and traditions of political thought. The course will cover such topics as authority, consent, freedom, and obligation.
Course ID: G440
This course provides an in-depth exploration of the integrated relationship between human life and the surrounding environment, beginning with a study of the fundamental concepts and principles of ecology. Topics that are interwoven throughout the course include principles of ecology as seen in the structure and function of the ecosystem; pollution of air, soil and water resources; population explosion and the relationship of people, disease, and food production; and environmental controls necessary for survival.
Course ID: G328
This course presents a study of the development and distribution of landforms, climates, minerals, soils and water resources. Interrelationships between the physical environment and regional patterns formed by these elements are analyzed against man's utilization of them.
Course ID: G346
The purpose of this course is to provide students with important principles of ecology and resource management. Emphasis will be on local, national, and global environment problems and possible solutions to these problems.
Course ID: G350
This course examines the personal and collective educational experiences, career paths, and discoveries of female researchers, teachers, and practitioners in the fields of mathematics and science.
Course ID: G434
Social Sciences (Select 2 courses)
- American Religious History
- Visions of America Since 1945
- Comparative Politics
- Work and Family
\"A survey of the contribution of religion to American culture, including the differences between rural and urban society, the development of religious freedom and the rise of a \"\"secular religion.\"\" Examines the emergence of new forms of belief and practice and the variety of religious issues confronting American society today.\"
Course ID: G333
Since the end of World War II, popular culture has become an especially significant aspect of American history and an important element in many of our lives. Consequently, this course will explore the ways in which popular culture has represented and mediated conflicts and tensions post-World War II. Through this lens, issues of gender and family relationships, as well as class and racial politics, will be discussed. The dual role of television as a reflective and manipulative force in the new suburban family and the role Hollywood films played in the popular culture will be examined.
Course ID: G380
This course will introduce students to the field of comparative politics by examining classification of political systems according to institutional and developmental characteristics. Causes and costs of political stability and instability will be explored. Comparison will be made between contemporary political institutions and processes in various countries.
Prerequisite:American/U.S. National Government
Course ID: G401
This course focuses on the overlapping worlds of work and family. It examines both the nature of the links that exist between the two major social institutions as well as the issues and problems that result from the combination of individuals' work and family responsibilities. An emphasis is placed on female labor force participation.
Course ID: G425
English Composition (Required course)
- English Composition
This course is designed to guide students in understanding the writing process and developing their ability to write and express ideas in an organized, unified, and coherent manner. Students will produce college-level writing that reflects awareness of rhetorical strategies, writing purpose, student voice, and appropriate grammar, punctuation, and usage skills. Through reading, writing, discussion, research, and collaboration, students will practice effective writing and apply course concepts.
Course ID: G124
Communication (*Required course, select 1 additional course)
- Introduction to Communication
- Oral Communication
The course will introduce students to basic models and theories of the communication process. Students will learn about a variety of elements involved in communication. They will also explore how factors such as race, ethnicity, age, socioeconomic status, and gender influence communication. Students will focus on developing an awareness of the effects of various types of communication on themselves and others. They will also develop practical skills for improving their ability to communicate in personal, social and professional contexts. Specific topics will include perception, self-concept, verbal and nonverbal communication, effective listening and communicating in culturally diverse settings.
Prerequisite:Passing grade in Foundation coursework or placement determined by Rasmussen College entrance placement exam score
Course ID: G141
This course will present students with a broad understanding of communication in a variety of contexts. Students will learn the processes and strategies of oral communication by exploring speech anxiety, audience analysis, and organizational speech patterns. Students will research, use supporting materials, and use effective language to develop and present a narrative, informative and persuasive speech.
Course ID: G227
Humanities (*Required course, select 2 additional courses)
- Film Appreciation
- Art Appreciation
- Creative Writing
- Introduction to Literature
- Conversational Spanish
This course investigates human creative achievement. It is designed to increase the student's understanding and appreciation of cultural literacy and the pursuit of humanitarian goals. Representative disciplines may include art, music, literature, architecture, drama, and philosophy.
Course ID: G125
Students will study different elements, forms, techniques and styles of film and will learn a critical approach to film and the motion picture industry. Students will critique films and filmmakers through various approaches and assessments that demonstrate analysis, interpretation, and evaluation skills as well as fostering a deeper appreciation and understanding of film as an art form.
Course ID: G145
Students will examine the historical, social, and technological factors that contribute to understanding the function and meaning of art in this course. Using a global and thematic approach, students will be introduced to the basic elements of art, while learning about a full range of media used to make art, and the fundamental concepts of art criticism. Western and non-Western art is represented, with a strong emphasis on a global perspective in relation to culture, communication, politics, and economics.
Course ID: G147
This course will develop the student's talents in creative writing. Various forms of writing will be studied, such as short stories, novels, poems, plays and non-fiction. Works by students and others will be critiqued. Students will also develop editorial skills so that each writer may revise and improve his/her work. Students will compose a minimum of 6000 words over the course of the program.
Prerequisite:Passing grade in Foundation coursework or placement determined by Rasmussen College entrance placement exam score
Course ID: G201
This course offers an introduction to the most common literary genres: fiction, poetry, drama, and literary non-fiction. Students will study the basic elements of each genre, learn how to compare genres, become familiar with sample texts that illustrate the particularities of each genre, and practice the skills of analyzing and writing about literary texts. Reading and analysis of texts will include a variety of literary forms and periods. Students will engage in approaches to determine literary meaning, form, and value.
Prerequisite:none [English Composition recommended]
Course ID: G230
This course focuses on common words and phrases students need to develop a working vocabulary which will enable them to communicate with Spanish-speaking individuals in their personal and professional lives. Although oral communication is stressed, included is an overview of Spanish grammar, phonetic pronunciation and Hispanic culture.
Course ID: G238
Math/Natural Sciences (*Required courses, select 1 additional course)
- Structure and Function of the Human Body
- Scientific Literacy
- Introduction to Human Biology
- Introduction to Astronomy
- Introduction to Geology
This course provides a working knowledge of the structure and function of the human body. A general introduction to cells and tissues is followed by study of the anatomy and physiology of the skeletal and muscular systems. The student is introduced to the nervous, cardiovascular, respiratory, digestive, urinary, reproductive, and endocrine systems.
Course ID: G150
In this course students will explore the role that science plays in the world. Students will survey different natural sciences such as: biology, health sciences, chemistry, physics, astronomy, and geology; as well as analyze specific case studies from these fields. Throughout the course students will develop their scientific reasoning skills. They will learn about the scientific method as well as how to detect common fallacies and misuses of science.
Course ID: G152
Students will explore fundamental concepts of human biology. They will examine cell structure and function, body systems, and biochemistry. They will also learn basic concepts of genetics and evolution. Students will explore the relationship of human populations and the ecosystem. Students will complete laboratory exercise coordinated with course content.
Course ID: G231
Examines astronomical phenomena and concepts, including the solar system, stars and galaxies, planetary motions, atoms and radiation, and the origin and evolution of the universe.
Course ID: G239
Examines basic geologic principles from a physical or historical perspective. Includes such topics as the formation of rocks and minerals; internal and external processes modifying the earth's surface and phenomena; and the evolutionary history of the earth, including its life forms, oceans and atmosphere.
Course ID: G245
Social Sciences (Select 2 courses)
- Introduction to Sociology
- Human Geography
- General Psychology
- Technology and Society
- Understanding Cultures
- American/U.S. National Government
- United States History: 1900 to the Present
This course introduces students to basic sociology terms and concepts. Students will understand how to apply sociological concepts and theories and analyze the structure and relationships of social institutions and the process of social change. Students will explore a variety of topics of sociological interest, including socialization, social inequality, social movements, and the impact of technology and social change on society.
Course ID: G142
This course will introduce students to the systematic study of patterns and processes that have shaped human understanding, use, and alteration of Earth's surface. Students will employ spatial concepts and landscape analysis to examine human social organization and its environmental consequences.
Course ID: G146
This course will provide students with a general understanding of basic methodologies, concepts, theories, and practices in contemporary psychology. Areas of investigation may include the goals and research methodologies of psychology, the science of the brain, theories of human development and intelligence, concepts of motivation and emotions, the science of sensation and perceptions, and the current practices pertaining to psychological disorders, therapies, and treatments.
Course ID: G148
Students will examine the relationships, benefits, historical significance, and effects technology has on society. This course will investigate the local, national and global impact of technology on both individual and global cultures. This course introduces students to basic diversity and technology terms and concepts. Students will examine the influences that emerging technologies have on diversity awareness, the digital divide, and intercultural knowledge.
Course ID: G149
This course is a comparative study of societies and cultures around the world and the cultures within the United States, focusing on the effects of ethnicity and race on African Americans, Latino, Asian American and Native Americans living in the United States. Topics include family, marriage, power, religion, values, inequality, social organization, language, social stratification, economic processes, conflicts and cultural and social change over time. Examples will be drawn from Africa, South America, North America, Asia and the Pacific Islands.
Course ID: G200
In this course, students will learn the fundamentals of macroeconomics, which deals with the economy as a whole. An overview of the American economy will be explored through a study of basic supply and demand analysis and a review of fiscal and monetary policy to phases of the business cycle. Unemployment, inflation, GDP, and policy decisions which affect the American economy at home and abroad will be covered.
Course ID: G203
Students will be introduced to the field of microeconomics in this course, including theories of production, determination of prices, and distribution of income in regulated and unregulated industries. Other topics may include industrial relations, monopolies, and comparative economic systems.
Course ID: G204
This course presents the development and evolution of the American national government with emphasis on the structures and processes of our representative democracy, including its ties to culture, politics and policies, political parties, and state and local governments.
Course ID: G242
This course provides an overview of the history of the United States during the 20th century up until the present day. The political, social, and economic aspects of this time will be explored amid a variety of human cultures, values, and perspectives within the United States.
Course ID: G270
Total Bachelor's Degree Credits
Lower Division General Education Credits: 45
Upper Division General Education Credits: 24
Lower Division Major and Core Credits: 46
Upper Division Major and Core Credits: 61
Unrestricted Upper Division Elective Credits: 4
Total BS Degree Credits: 180
Want to learn more?
Complete the form to receive more information about your program of interest.