B.S. Computer Science
124
Credit Hours
76%
Max Transfer Credit
Class Type
100% online, 6 & 12-week courses
Next Start Date
Nov 11, 2024
Cost Per Credit
Curriculum Alignment
ACM/IEEE-CS

Computer Science Bachelor's Degree Program

What do creative thinking, problem solving, competitive salaries and a high-demand field have in common? They're all just a few of the many things a bachelor's degree in computer science has going for it. With the transfer-friendly Computer Science degree program at Franklin, you'll be well-prepared to investigate, assess, design and collaborate on the creation of technology-based solutions that literally change how business is done.

Program Availability

On Site

Language-Independent Curriculum

Acquire the foundation that'll keep you relevant through technology changes.

Hands-On Assignments

Team with peers on cutting-edge software development projects.

Finish Faster

Transfer up to 94 previously earned college credits.

Innovative Curriculum

Learn from the program developed under international curricular guidelines.

Accredited Online University

Nearly 80% of our students take online courses.

Real-World Practitioners

Learn from experienced technology leaders.

100% Online Classes

Take classes that fit with your busy life.

Computer Science Degree Overview

Power business with robust and scalable software solutions

The allure of a top salary in a high-demand field is one thing a degree in computer science has going for it -- but it’s far from the only. With Franklin's online Computer Science bachelor's degree program, you’ll be solidly grounded in software development, building skills that prepare you to readily adapt to an ever-changing environment throughout your career.

Our program is language independent; meaning you’ll learn widely used languages and build industrial and reusable software components with cutting-edge Java technology. The development knowledge you gain won’t become obsolete. As a result, you’ll be well prepared to not only apply, but also shape and influence dynamic and emerging technologies.

Franklin’s Computer Science courses include the development of significant, high-level technical skills, giving you the opportunity to achieve software development capabilities while you receive your foundational education in these key areas: Object-Oriented Design, Computer Architecture, Coding & Testing, Web Application Development, and Database Management.

Engineer your own robust, interactive applications

Coursework at Franklin is very practical and hands-on, so you’ll team with other students on cutting-edge software development projects that simulate a real-world industrial environment. Franklin’s Computer Science curriculum is designed so each class provides a logical progression, giving you the opportunity to assume roles of increasing responsibility as you move toward completing your computer science degree.

At Franklin, you’ll have the opportunity to work on pivotal projects, like creating database-driven web applications with interactive AJAX components. Along the way, you’ll gain exposure to Java, C, Scheme, and Prolog programming languages, as well as popular client/server development technologies like JSP, XHTML, and XML.

Learn from the real-world experiences of high-level professionals

Taught by real-world computer professionals and practitioners, our Computer Science program faculty currently work in the field or have held high-level industry positions. And because Franklin’s online Computer Science bachelor's program is strongly rooted in the ACM/IEEE-CS Joint Task Force on Computing Curricula, you’ll learn under the international curricular guidelines for undergraduate programs in computing.

In addition, you’ll have the opportunity to build a professional network through collaborative coursework and our student chapter of the Association for Computing Machinery (ACM) Committee on Women in Computing (ACM-W).

Earn your B.S. in Computer Science online or on campus from a university built for busy adults

Earn your degree on your terms by taking classes 100% online. Accredited and nonprofit, Franklin was built from the ground-up to satisfy the needs of adult learners. Our seamless transfer process and team of academic advisors will help ease your transition to becoming a student, while our flexible course schedules help to balance your education with work, family and life. Get started on your future today.

Read more >

DJ

B.S. Computer Science Graduate

"I truly enjoyed my classes at Franklin. My professors actually worked in the field and could help me understand the reasons and benefits to different programming and database situations. The things they brought from the real world helped make my job easier."

Future Start Date

Start dates for individual programs may vary and are subject to change. Please request free information & speak with an admission advisor for the latest program start dates.

Fall 2024
November
11
Recommended Register By:
Nov 1
Spring 2025
January
6
Recommended Register By:
Dec 27
Spring 2025
February
17
Recommended Register By:
Feb 7
Spring 2025
March
31
Recommended Register By:
Mar 21
Summer 2025
May
19
Recommended Register By:
May 9
Summer 2025
June
30
Recommended Register By:
Jun 20
Fall 2025
August
18
Recommended Register By:
Aug 8
Fall 2025
September
29
Recommended Register By:
Sep 19
Fall 2025
November
10
Recommended Register By:
Oct 31
Spring 2026
January
5
Recommended Register By:
Dec 26
Spring 2026
February
16
Recommended Register By:
Feb 6
Spring 2026
March
30
Recommended Register By:
Mar 20
Summer 2026
May
18
Recommended Register By:
May 8
Summer 2026
June
29
Recommended Register By:
Jun 19
Fall 2026
August
17
Recommended Register By:
Aug 7
Fall 2026
September
28
Recommended Register By:
Sep 18
Fall 2026
November
9
Recommended Register By:
Oct 30

Your Best Value B.S. Computer Science

Choose Franklin's B.S. Computer Science and get a high-quality degree that fits your life and budget.     

Affordable Tuition

$398
PER CREDIT HOUR

Affordable tuition rates provide value and quality.

Keep the Credit You've Earned

53
AVG TRANSFER HOURS

On average, students transfer in 40% of the credits required.

Transfer MORE Credits, Pay LESS tuition*

$11,940
|
$28,258
Max Transfer Credits
Avg Transfer Credits
*$398 per credit, 124 Total Credits, 94 maximum transfer credits, 53 average transfer credits.

Partner? Pay Less.


Search below to see if you could save tuition through an employer or professional 
organization partnership.

$49,352
Total Tuition
(After Partner Discount)

Tuition Guarantee

Inflation-proof your degree cost by locking-in your tuition rate from day one through graduation.

Highly Recommended

98%
STUDENT SATISFACTION

98% of graduating students would recommend Franklin to their family, friends and/or colleagues.

Source: Franklin University, Office of Career Development Student Satisfaction Survey (Summer 2023)

×
×

Computer Science Courses & Curriculum

124 Semester Hours
Fundamental General Education
English Composition
ENG 120 - College Writing (4)

In this course, students acquire the writing competencies necessary for completing analytical and argumentative papers supported by secondary research. A variety of assignments, beginning with personal reflections, build upon one another, as students develop ideas that respond to, critique, and synthesize the positions of others. Students systematize and organize knowledge in ways that will help them in all their courses. The course also emphasizes the elements of critical reading, effective writing style, appropriate grammar and mechanics, clarity of language, and logical and cohesive development. It culminates in submission of an extended, documented research paper.

Mathematics
MATH 160 - College Algebra (4)

This course is designed to prepare students for Applied Calculus and Discrete Mathematics and to provide the mathematical background needed for the analytic reasoning used in other courses. Topics include functions and their graphs, including exponential and logarithmic functions; complex numbers; systems of equations and inequalities; matrices; basic principles of counting and probability; and other selected topics. Note, this course has proctored exam(s).

AND

Take MATH 150 Fundamental Algebra as the prerequisite and earn a minimum grade of “C". Course can count as a University elective.

Social and Behavioral Sciences

6 credits from the following types of courses:
Choose from the Anthropology, Geography, History, Political Science, Psychology, or Sociology disciplines.

Science

6 credits from the following types of courses:
Two courses from the Science discipline. One course must have a lab component.

Arts & Humanities
HUMN 211 - Introduction to Critical Ethics (2)

Critical Ethics uses critical thinking to get around the limitations of personal belief and indoctrination to get to what ought to be done and why to improve the human condition. Accordingly, the goal of this course is to help the student improve his/her ethical analysis and evaluation skills to help the student do the thing that must be done, when it ought to be done, using critical thinking.

AND

4 credits from the following types of courses:
Choose from the Art, English Literature, Fine Arts, Humanities, Music, Philosophy, Religion or Theater disciplines.

Additional General Education
PF 121 - Basic Learning Strategies (2)

This course prepares students to be successful lifelong learners both academically and in their chosen careers. Franklin courses require a high level of self-directed learning and focus on the skills required in the workplace and the classroom that are easily transferrable between the two environments. The course includes strategies for time management, goal setting, reading comprehension, and advancing communication skills, including the use of electronic tools to participate in virtual environments.

OR PF 321 - Learning Strategies (2)

This course prepares students to be successful lifelong learners both academically and in their chosen careers. Franklin courses require a high level of self-directed learning and focus on the skills required in the workplace and the classroom that are easily transferable between the two environments. The course includes strategies for advancing communication skills, including the use of electronic tools to participate in virtual environments. The assignments and activities in the course are created to closely simulate teamwork found in the workplace.

AND

SPCH 100 - Speech Communication (4)

This basic public-speaking course intends to improve the student's ability to think critically and to communicate orally. Theory and practice are provided in various speaking situations. Each student is required to speak before an audience, but class work also involves reading, gathering and organizing information, writing, and listening.

OR COMM 150 - Interpersonal Communication (4)

By using applied critical and creative thinking, students in this course will develop a set of communication skills that will enhance their personal and professional relationships and endeavors. This course will focus on skill development in key areas such as self, perception, listening, verbal messages, conversations, relationships, conflict management, persuasion, and presentation skills.

AND

ENG 220 - Research Writing: Exploring Professional Identities (4)

This is an intermediate course focusing on the composition of research papers. Students in this course prepare to be active participants in professional discourse communities by examining and practicing the writing conventions associated with their own fields of study and work. By calling attention to the conventions of disciplinary writing, the course also prepares students for upper-division college writing and the special conventions of advanced academic discourse. Course activities include three extended research papers, semi-formal writing addressing interdisciplinary communication, and readings fostering critical engagement with disciplinary conversations.

MATH 215 - Statistical Concepts (4)

This course introduces you to statistics with applications to various areas. The course covers both descriptive and inferential statistics. Topics included are: sampling techniques, data types, experiments; measures of central tendency, measures of dispersion, graphical displays of data, basic probability concepts, binomial and normal probability distributions, sampling distributions and Central Limit Theorem; confidence intervals, hypothesis tests of a mean, or a proportion for one or two populations, and linear regression.

Professional Core
COMP 111 - Introduction to Computer Science & Object-Oriented Programming (4)

This course provides an introduction to software construction using an object-oriented approach. The student learns and reflects on problem analysis, object-oriented design, implementation, and testing. To support the concepts and principles of software construction, the student will design, code, test, debug, and document programs using the Java programming language. Basic data types, control structures, methods, and classes are used as the building blocks for reusable software components. Automated unit testing, programming style, and industrial practice are emphasized in addition to the object-oriented techniques of abstraction, encapsulation, and composition. Note, this course has proctored exam(s).

COMP 201 - Principles of Computer Organization (2)

This course is the first of four courses that holistically explore the structure of computational systems. This course deals with the nature of computer hardware. The course will cover the structure of current computer systems at the level of functional organization, representation of data and programs, the design of the memory hierarchy, and, the design of the I/O system. The course will introduce basic assembly language.

COMP 204 - Principles of Computer Networks (2)

This course serves as an introduction to the function, design, administration, and implementation of computer networks. Topics include network infrastructure, architecture, protocols, applications, and the OSI networking model. Note, this course has proctored exam(s).

COMP 281 - Database Management Systems (4)

This course, Database Management Systems, covers the fundamental concepts necessary for the design, use, implementation, and administration of database systems. The course will stress the fundamentals of database modeling and design, the languages and facilities provided by database management systems, and some techniques for implementing and administering database systems.

COMP 294 - Computer Science Practicum I (2)

This is the first practicum course in the Computer Science program. It provides experience in an on-going software development project. A student at this level will be given an assignment in a team similar to that of a new hire in industry. The software development project will require the student to apply industry best practices in completing an assignment for the project.

COMP 101 - Problem Solving With Computing (2)

Many organizations today utilize computers and information systems to store, organize, analyze, and summarize data to solve problems. As a result, computing is a tool that can benefit students in many different fields. At the heart of solving problems with computers is the study of structured thinking using algorithms. This course is designed for students with no prior programming experience and teaches the building blocks of algorithms, including variables, expressions, selection and repetition structures, functions and parameters, and array processing.

CLOUD 200 - Cloud Fundamentals (2)

This course explores the concepts of cloud computing, including financial impacts and business value, financial requirements, deployment, risks, and security. Hands-on exercises help students to gain experience with cloud computing environments, identifying technical and security requirements for given deployment scenarios, implementing the proposed cloud deployment scenario, and troubleshooting technical issues of existing cloud computing scenarios.

CYSC 200 - Cybersecurity Fundamentals (2)

The Internet has changed dramatically; so have the activities that are dependent on it in some shape or form. Understanding the need for security, it's influence on people, businesses and society, as well as business drivers is critical. The course also covers malicious attacks, threats and vulnerabilities common to the world of security, as well as access controls, and methods to assess and respond to risks. Hands-on labs accompany the various concepts that are taught.

AND

COMP 121 - Object-Oriented Data Structures & Algorithms I (4)

This course continues the objected-oriented approach to software construction. The student learns and reflects on advanced object-oriented techniques, algorithm efficiency, class hierarchies, and data structures. To support the concepts and principles of software construction, the student will design, code, test, debug, and document programs using the Java programming language. Design principles, I/O, exception handling, linear data structures (lists, stacks, and queues), and design patterns are emphasized in addition to the object-oriented techniques of inheritance and polymorphism. Note, this course has proctored exam(s).

OR COMP 511 - Foundation Data Struc & Obj Orntd Design (4)

This course continues the object-oriented approach to intermediate-level software development. The student will learn and reflect on fundamental object-oriented analysis techniques, basic design patterns, and linear data structures such as lists and queues.

Major Area Required
COMP 321 - Application Server Programming (4)

This course provides an introduction to server-based programming using an object-oriented approach. The student learns and reflects on two- and three-tier software architectures, separation of responsibility, and design patterns. In order to support the concepts and principles of server-based software construction, the student will design, code, test, debug, and document programs using the Java programming language. HTML/CSS/XML, JDBC, Java Server Pages, and Java Servlets are used as the implementation mechanisms for Model 1 and Model 2 web applications.

COMP 323 - Fundamentals of Operating Systems (4)

TThis course introduces the major topics of computer operating systems such as processes, threads, synchronization and inter-process communication, processor scheduling, memory management, I/O, file systems, and issues in security. Students will also learn to solve operating system problems using multi-threaded programming.

COMP 394 - Computer Science Practicum II (2)

This is the second practicum course in the Computer Science program. It provides experience in an on-going software development project. A student at this level will be given an assignment in a team similar to that of an experienced team member or as a team leader in industry. The software development project will require the student to apply industry best practices in completing an assignment for the project.

COMP 495 - Computer Science Practicum Iii/Capstone (4)

This is the third and final practicum course in the Computer Science program. During this course, you will have the opportunity to lead a realistic software development project. As seniors, you will be given an assignment similar to that of a project manager who is responsible for planning and coordinating all project tasks. You may also be responsible for completing tasks that require advanced-level skills/expertise. In addition to project work, you will complete introspective assignments designed to help you synthesize your overall experience in the program. There is a basic structure for all three practicum classes. During the first week, students will apply for and receive assignments for the term. The senior roles will be assigned first, and the instructor, along with the assigned senior managers, will then make the rest of the assignments. All assignments need to be in place by week two. The next step will be to arrange team meetings during the second week to kick off the project. Remember that all of your work will be stored by Franklin and can be compiled to create a professional portfolio to be shown to prospective employers. Consequently, you should submit excellent work and consciously produce good writing.

MATH 320 - Discrete Mathematics (4)

This course introduces students to fundamental algebraic, logical, and combinational concepts in mathematics that are needed in upper-division computer science courses. Topics include sets, mappings, and relations; elementary counting principles; proof techniques with an emphasis on mathematical induction; graphs and directed graphs; Boolean algebras; recursion; and applications to computer science.

COMP 215 - Programming Language: Principles & Practice (4)

This course conveys a high-level vision of programming language theory and a survey of programming languages representing different paradigms. It begins with the concepts and methodologies that underlie all programming languages such as syntax, grammar, semantics, and subroutines. An assortment of programming paradigms is introduced to provide insight into both the traditional imperative and some alternative approaches to program development. The key issues in designing and using programming languages are revisited through studying and writing programs in three different languages.

AND

COMP 311 - Object-Oriented Data Structures & Algorithms II (4)

This course is the third of four courses using the objected-oriented approach to software construction. The student learns and reflects on non-linear data structures, recursive algorithms, algorithm efficiency, and design patterns. To support the concepts and principles of software construction, the student will design, code, test, debug, and document programs using the Java programming language. Implementation and analysis of sets, maps, balanced binary search trees, heaps, hashing and hash tables, graphs and graph algorithms, and efficient sorting algorithms are addressed.

OR COMP 611 - Advanced Data Structures and Programming (4)

This course covers key knowledge and skills for advanced software development using the object-oriented approach. The student learns, manipulates and reflects on nonlinear data structures such as trees and heaps. Recursive algorithms, sorting algorithms, algorithm efficiency, and advanced design patterns are addressed. To support the advanced concepts and principles of software development, the student will design, code, test, debug, and document programs with increased scale and complexity using industry's best practices (such as GitHub) and the Java programming language.

Major Electives

At least 12 credits from the following courses:

COMP 325 - Human-Computer Interaction (4)

This course covers a broad range of important topics within Human-Computer Interaction and its implications for the design of interactive systems. By understanding the user's viewpoint and technology's effect on people, we can better plan for the selection, design, implementation, and use of technology so that the effects are positive rather than negative. The focus is on the design of interactive systems and human-computer interfaces. The course will cover the current literature and the knowns and unknowns of Human-Computer Interaction and design. The design process is centered on the user and is based on a multidisciplinary approach that synthesizes computer science, cognitive science, and psychology. Human-computer interface designers also use analytical and empirical techniques to assess, predict, and evaluate whether a design meets user requirements. During this course, you will focus on 3 major types of assignments: Written assignments on HCI principles and system design. A project during which you will demonstrate your ability to apply HCI principles to design a software interface. A journal where you will record and reflect on your observations related to your studies in the course.

COMP 461 - Enterprise Software Architecture (4)

This course reinforces and extends client-server programming concepts to enterprise applications. It introduces Enterprise Java Bean technologies such as JNDI, EJBs and EJB Containers. It explores the current use of XML and XSLT for data representation and communication. The course studies the application of patterns in the design of enterprise architectures. Finally, the course introduces emerging topics related to Web enterprise applications.

COMP 471 - Software Testing (4)

In this course, we will review the traditional software testing techniques that are applicable to any software product, as well as learn techniques for the paradigm of test-driven development. Continuous delivery and its impact on testing will be discussed. We will also discover how innovative companies are able to build testing and quality into every stage of the development process and deliver a multitude of releases with a relatively small testing organization. We will practice test creation and testing techniques through assignments, individual projects, and group projects. Concepts covered include: test cycles testing objectives testing in the software development process types of software errors reporting and analyzing software errors problem tracking systems test case design testing tools test planning test documentation managing a test group test-driven development principles continuous delivery principles and their impact on testing

COMP 480 - Special Topics in Computer Science (1-4)

This course introduces students to the Internet of Things (IoT) systems: basic electronics and electrical components for IoT applications, IoT Systems-on-Chips (SoC), and embedded systems. The course provides students with hands-on experience on selected IoT hardware (Raspberry Pi and Arduino), IoT software development in Python and C++, and IoT simulation in TinkerCAD. The course introduces IoT communication protocols (MQTT and COAP) and IoT edge and cloud integration. Students implement multiple labs and one capstone project to demonstrate mastering of the course concepts and skills.

COMP 486 - Object-Oriented Analysis & Design (4)

This course studies the process of designing software systems both from the view of process and from the view of requirements, analysis and the synthesis of a viable software design. It builds on the concepts from the programming sequence to examine the aspects of good design practice.

DATA 300 - Introduction to Analytics (4)

This course introduces the fundamentals of Business and Data Analytics. Students will learn business problem framing, data wrangling, descriptive and inferential statistics, data visualization, and data storytelling in analytics.

DATA 310 - Data Visualization (4)

This course introduces data visualization fundamentals using the leading visualization tools in the industry and focuses on project-based learning. Students will learn how to develop dashboards and discover insight effectively based on data.

DATA 400 - Principles of Machine Learning (4)

Students will learn the basic concepts behind major machine learning algorithms, the essential steps for creating a typical machine learning model, the strengths and weaknesses of different algorithms, and the model evaluation using different performance metrics. Eventually, students will be able to build a prediction model by machine learning algorithm using Python language. The common problems in practical machine learning exercises and their solutions also will be discussed.

MIS 310 - Info Systems Architecture & Technology (4)

This course provides a conceptual survey of general systems theory followed by a conceptual and technological survey of the structure of distributed information systems architectures, operating systems, network operating systems, peripheral technology and user interfaces. Interoperability between these architectural components will be explored and current technology and trends in each architectural element will be reviewed. This course will de-emphasize, although not ignore, mainframe architectures in favor of information architectures more applicable to client/server computing. The various interacting categories of client/server computing as well as the benefits and implications of such a system will be fully explored.

WEBD 325 - Mobile Programming (4)

This course covers the fundamentals of mobile app programming for mobile devices, including smartphones and tablets as well as providing a survey of current mobile platforms, mobile application development environments, and mobile device input and output methods. Students will design and build a variety of Apps throughout the course to reinforce learning and to develop real competency.

BUSA 350 - Principles of Analytics Modeling (4)

This course introduces the principles of analytics modeling. Students will learn exploratory data analytics, regression, classification, clustering, model interpretation, and model evaluation.

CYSC 300 - Information Assurance (4)

In a highly connected, data intensive, and cost-focused business environment, the practice of information security is not a business advantage; it is a customer requirement. Malware and exploits including ransomware, viruses, trojans, denial of service attacks, phishing, and even Wiki leaks have become headline news. Failure to insure the confidentiality, integrity, and availability of data costs companies millions, if not billions of dollars in legal settlements, lost business, and trade secrets. In this course, you will get an overview of information security principles and practices, including security models, risk management, access controls, intrusion detection and prevention (IDS/IPS), cryptography, software vulnerabilities, and ethical issues. Subsequent courses expand on this foundational material in much greater depth. Note, this course has proctored exam(s).

CYSC 400 - Application Security (4)

Software vulnerabilities, especially those that compromise personal or financial data, are appallingly common. Nearly every major software company has dealt with the fallout of a major incident due to vulnerabilities in their products. Developing correct - let alone secure - software is very difficult. Yet users and executives expect it. In this course, you will learn about the typical development mistakes that lead to application-level security issues as well as how to defend against each.. Students will explore the Open Web Application Security Project (OWASP) top 10 security vulnerabilities. Topics include unchecked user input, injection, fuzzing, CSRF, XSS, cryptography, CAPTCHA, configuration errors, authentication, and authorization. Note, this course has proctored exam(s).

University Electives

22 credits from the following types of courses:
Any undergraduate courses offered by the University except developmental education courses.

Optional Focus Areas

Students may complete a focus area to fulfill the Major Area Elective requirement.

OR

Software Architecture and Engineering:

MIS 310 - Info Systems Architecture & Technology (4)

This course provides a conceptual survey of general systems theory followed by a conceptual and technological survey of the structure of distributed information systems architectures, operating systems, network operating systems, peripheral technology and user interfaces. Interoperability between these architectural components will be explored and current technology and trends in each architectural element will be reviewed. This course will de-emphasize, although not ignore, mainframe architectures in favor of information architectures more applicable to client/server computing. The various interacting categories of client/server computing as well as the benefits and implications of such a system will be fully explored.

COMP 461 - Enterprise Software Architecture (4)

This course reinforces and extends client-server programming concepts to enterprise applications. It introduces Enterprise Java Bean technologies such as JNDI, EJBs and EJB Containers. It explores the current use of XML and XSLT for data representation and communication. The course studies the application of patterns in the design of enterprise architectures. Finally, the course introduces emerging topics related to Web enterprise applications.

COMP 486 - Object-Oriented Analysis & Design (4)

This course studies the process of designing software systems both from the view of process and from the view of requirements, analysis and the synthesis of a viable software design. It builds on the concepts from the programming sequence to examine the aspects of good design practice.

COMP 471 - Software Testing (4)

In this course, we will review the traditional software testing techniques that are applicable to any software product, as well as learn techniques for the paradigm of test-driven development. Continuous delivery and its impact on testing will be discussed. We will also discover how innovative companies are able to build testing and quality into every stage of the development process and deliver a multitude of releases with a relatively small testing organization. We will practice test creation and testing techniques through assignments, individual projects, and group projects. Concepts covered include: test cycles testing objectives testing in the software development process types of software errors reporting and analyzing software errors problem tracking systems test case design testing tools test planning test documentation managing a test group test-driven development principles continuous delivery principles and their impact on testing

OR

Data Analytics:

DATA 300 - Introduction to Analytics (4)

This course introduces the fundamentals of Business and Data Analytics. Students will learn business problem framing, data wrangling, descriptive and inferential statistics, data visualization, and data storytelling in analytics.

DATA 310 - Data Visualization (4)

This course introduces data visualization fundamentals using the leading visualization tools in the industry and focuses on project-based learning. Students will learn how to develop dashboards and discover insight effectively based on data.

DATA 400 - Principles of Machine Learning (4)

Students will learn the basic concepts behind major machine learning algorithms, the essential steps for creating a typical machine learning model, the strengths and weaknesses of different algorithms, and the model evaluation using different performance metrics. Eventually, students will be able to build a prediction model by machine learning algorithm using Python language. The common problems in practical machine learning exercises and their solutions also will be discussed.

BUSA 350 - Principles of Analytics Modeling (4)

This course introduces the principles of analytics modeling. Students will learn exploratory data analytics, regression, classification, clustering, model interpretation, and model evaluation.

OR

Web and Mobile Development:

COMP 325 - Human-Computer Interaction (4)

This course covers a broad range of important topics within Human-Computer Interaction and its implications for the design of interactive systems. By understanding the user's viewpoint and technology's effect on people, we can better plan for the selection, design, implementation, and use of technology so that the effects are positive rather than negative. The focus is on the design of interactive systems and human-computer interfaces. The course will cover the current literature and the knowns and unknowns of Human-Computer Interaction and design. The design process is centered on the user and is based on a multidisciplinary approach that synthesizes computer science, cognitive science, and psychology. Human-computer interface designers also use analytical and empirical techniques to assess, predict, and evaluate whether a design meets user requirements. During this course, you will focus on 3 major types of assignments: Written assignments on HCI principles and system design. A project during which you will demonstrate your ability to apply HCI principles to design a software interface. A journal where you will record and reflect on your observations related to your studies in the course.

WEBD 325 - Mobile Programming (4)

This course covers the fundamentals of mobile app programming for mobile devices, including smartphones and tablets as well as providing a survey of current mobile platforms, mobile application development environments, and mobile device input and output methods. Students will design and build a variety of Apps throughout the course to reinforce learning and to develop real competency.

COMP 486 - Object-Oriented Analysis & Design (4)

This course studies the process of designing software systems both from the view of process and from the view of requirements, analysis and the synthesis of a viable software design. It builds on the concepts from the programming sequence to examine the aspects of good design practice.

COMP 471 - Software Testing (4)

In this course, we will review the traditional software testing techniques that are applicable to any software product, as well as learn techniques for the paradigm of test-driven development. Continuous delivery and its impact on testing will be discussed. We will also discover how innovative companies are able to build testing and quality into every stage of the development process and deliver a multitude of releases with a relatively small testing organization. We will practice test creation and testing techniques through assignments, individual projects, and group projects. Concepts covered include: test cycles testing objectives testing in the software development process types of software errors reporting and analyzing software errors problem tracking systems test case design testing tools test planning test documentation managing a test group test-driven development principles continuous delivery principles and their impact on testing

OR

Software Development Security:

MIS 310 - Info Systems Architecture & Technology (4)

This course provides a conceptual survey of general systems theory followed by a conceptual and technological survey of the structure of distributed information systems architectures, operating systems, network operating systems, peripheral technology and user interfaces. Interoperability between these architectural components will be explored and current technology and trends in each architectural element will be reviewed. This course will de-emphasize, although not ignore, mainframe architectures in favor of information architectures more applicable to client/server computing. The various interacting categories of client/server computing as well as the benefits and implications of such a system will be fully explored.

COMP 471 - Software Testing (4)

In this course, we will review the traditional software testing techniques that are applicable to any software product, as well as learn techniques for the paradigm of test-driven development. Continuous delivery and its impact on testing will be discussed. We will also discover how innovative companies are able to build testing and quality into every stage of the development process and deliver a multitude of releases with a relatively small testing organization. We will practice test creation and testing techniques through assignments, individual projects, and group projects. Concepts covered include: test cycles testing objectives testing in the software development process types of software errors reporting and analyzing software errors problem tracking systems test case design testing tools test planning test documentation managing a test group test-driven development principles continuous delivery principles and their impact on testing

CYSC 300 - Information Assurance (4)

In a highly connected, data intensive, and cost-focused business environment, the practice of information security is not a business advantage; it is a customer requirement. Malware and exploits including ransomware, viruses, trojans, denial of service attacks, phishing, and even Wiki leaks have become headline news. Failure to insure the confidentiality, integrity, and availability of data costs companies millions, if not billions of dollars in legal settlements, lost business, and trade secrets. In this course, you will get an overview of information security principles and practices, including security models, risk management, access controls, intrusion detection and prevention (IDS/IPS), cryptography, software vulnerabilities, and ethical issues. Subsequent courses expand on this foundational material in much greater depth. Note, this course has proctored exam(s).

CYSC 400 - Application Security (4)

Software vulnerabilities, especially those that compromise personal or financial data, are appallingly common. Nearly every major software company has dealt with the fallout of a major incident due to vulnerabilities in their products. Developing correct - let alone secure - software is very difficult. Yet users and executives expect it. In this course, you will learn about the typical development mistakes that lead to application-level security issues as well as how to defend against each.. Students will explore the Open Web Application Security Project (OWASP) top 10 security vulnerabilities. Topics include unchecked user input, injection, fuzzing, CSRF, XSS, cryptography, CAPTCHA, configuration errors, authentication, and authorization. Note, this course has proctored exam(s).

Additional Requirements

All students are required to pass College Writing (ENG 120), and either Basic Learning Strategies (PF 121) or Learning Strategies (PF 321) prior to enrolling in any course at the 200 level or above. Students who enroll at Franklin with 30 or fewer hours of transfer credit are required to pass PF 121 Basic Learning Strategies in place of PF 321 Learning Strategies. Interpersonal Communication (COMM 150) or Speech Communication (SPCH 100) must be taken prior to enrolling in any course at the 300 level or above. Students must also meet the University algebra competency requirement.

Academic Minors

Personalize your degree with a minor. Explore available minors, learn how minors can benefit you, and find out what requirements you must meet to earn a minor.

Learn More

Microcredentials Align with Job Essentials

In today's dynamic work environments, adaptive professionals thrive. A microcredential - either as a stand-alone course or integrated into your degree program - is a short, skill-specific recognition that enables you to demonstrate your competency in a distinct area. Like Franklin's degree programs, microcredentials are aligned with market and industry demand to ensure what you learn can be put to use right away. Microcredentials are easily shared via digital badges and can be stacked to create a unique portfolio of in-demand skills.

B.S. in Computer Science Program Details

Request Free Information!

Want to learn more about Franklin University? Complete the simple form - it just takes a minute!

  • Invest in yourself by finishing your degree.

  • Take advantage of flexible courses that fit your busy schedule.

  • Finish faster. Save more. Franklin fits your life.

  • Get in-demand knowledge that helps Franklin grads stand out with top employers.

Request Information

Step 1 of 3
Get Started >< BackNext >Submit
In submitting my contact information, I understand that I will receive phone calls, text messages and email about attending Franklin University. I may opt out of these communications at any time.

Your privacy is important to us. Privacy Policy
Loading...

Employment Outlook

16%

From 2022-2032, jobs in Computer Science are expected to increase by 16%

Occupation Median Salary (2022) Job Postings (2022) Projected Growth (2022-2032)
Occupation
Computer and Information Systems Managers $164,070 58,225 22%
Computer and Information Systems Managers
Median Salary: $164,070
Job Postings: 58,225
Projected Growth: 22%
Occupation
Job Titles
Skills
Industry
Description

Computer and Information Systems Managers plan, direct, or coordinate activities in such fields as electronic data processing, information systems, systems analysis, and computer programming. Excludes Computer Occupations (15-1211 through 15-1299).

Projected Growth
Job TitleJob Postings% of Job Postings
Directors of Information Technology16,51828%
Directors of Software Engineering9,67117%
Directors of Technology4,6208%
Technical Directors3,3256%
Chief Technology Officers2,6145%
Show More
SkillJob Postings% of Total Postings
Computer Science16,82633%
Project Management15,25730%
Agile Methodology11,68823%
Software Engineering8,54317%
Software Development7,98115%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services22%
Management of Companies and Enterprises9%
Software Publishers6%
Management, Scientific, and Technical Consulting Services4%
Data Processing, Hosting, and Related Services4%
Insurance Carriers4%
Other51%
Computer and Information Research Scientists $136,635 22,371 28%
Computer and Information Research Scientists
Median Salary: $136,635
Job Postings: 22,371
Projected Growth: 28%
Occupation
Job Titles
Skills
Industry
Description

Computer and Information Research Scientists conduct research into fundamental computer and information science as theorists, designers, or inventors. Develop solutions to problems in the field of computer hardware and software.

Projected Growth
Job TitleJob Postings% of Job Postings
Computer Scientists3,28515%
Machine Learning Scientists3,21514%
Staff Scientists2,96913%
Computational Scientists2,18210%
Research Engineers2,19910%
Show More
SkillJob Postings% of Total Postings
Computer Science6,74442%
Python (Programming Language)6,55841%
Machine Learning5,94237%
Algorithms4,18526%
Data Analysis3,91225%
Show More
 
Industry% of Occupation in Industry
Federal Government, Civilian31%
Computer Systems Design and Related Services29%
Scientific Research and Development Services17%
Education and Hospitals (State Government)4%
Web Search Portals, Libraries, Archives, and Other Information Services4%
Software Publishers3%
Other12%
Computer Network Architects $126,901 137,439 10%
Computer Network Architects
Median Salary: $126,901
Job Postings: 137,439
Projected Growth: 10%
Occupation
Job Titles
Skills
Industry
Description

Computer Network Architects design and implement computer and information networks, such as local area networks (LAN), wide area networks (WAN), intranets, extranets, and other data communications networks. Perform network modeling, analysis, and planning, including analysis of capacity needs for network infrastructures. May also design network and computer security measures. May research and recommend network and data communications hardware and software.

Projected Growth
Job TitleJob Postings% of Job Postings
Network Engineers73,51654%
Automation Engineers7,4145%
Network Architects5,6174%
Telecommunications Engineers5,0524%
Reliability Engineers3,8383%
Show More
SkillJob Postings% of Total Postings
Network Engineering43,26436%
Computer Science29,43824%
Firewall27,32123%
Wide Area Networks25,32421%
Network Switches24,43620%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services27%
Wired and Wireless Telecommunications (except Satellite)10%
Management of Companies and Enterprises9%
Employment Services5%
Data Processing, Hosting, and Related Services4%
Management, Scientific, and Technical Consulting Services4%
Other42%
Information Security Analysts $112,008 168,966 35%
Information Security Analysts
Median Salary: $112,008
Job Postings: 168,966
Projected Growth: 35%
Occupation
Job Titles
Skills
Industry
Description

Information Security Analysts plan, implement, upgrade, or monitor security measures for the protection of computer networks and information. Assess system vulnerabilities for security risks and propose and implement risk mitigation strategies. May ensure appropriate security controls are in place that will safeguard digital files and vital electronic infrastructure. May respond to computer security breaches and viruses.

Projected Growth
Job TitleJob Postings% of Job Postings
Security Engineers23,11914%
Cybersecurity Engineers15,96810%
Information Security Analysts15,1379%
Security Analysts10,6546%
Cybersecurity Analysts11,9697%
Show More
SkillJob Postings% of Total Postings
Cyber Security83,61042%
Computer Science59,68130%
Auditing54,08827%
Vulnerability53,83827%
Risk Analysis38,27219%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services24%
Management of Companies and Enterprises9%
Depository Credit Intermediation6%
Management, Scientific, and Technical Consulting Services6%
Accounting, Tax Preparation, Bookkeeping, and Payroll Services4%
Federal Government, Military4%
Other47%
Computer Systems Analysts $102,232 196,709 16%
Computer Systems Analysts
Median Salary: $102,232
Job Postings: 196,709
Projected Growth: 16%
Occupation
Job Titles
Skills
Industry
Description

Computer Systems Analysts analyze science, engineering, business, and other data processing problems to develop and implement solutions to complex applications problems, system administration issues, or network concerns. Perform systems management and integration functions, improve existing computer systems, and review computer system capabilities, workflow, and schedule limitations. May analyze or recommend commercially available software.

Projected Growth
Job TitleJob Postings% of Job Postings
Business Systems Analysts58,14430%
Systems Analysts29,47215%
IT Business Analysts17,4069%
Technical Business Analysts8,5174%
Implementation Consultants9,6395%
Show More
SkillJob Postings% of Total Postings
Computer Science72,80724%
Project Management70,11223%
Business Process63,00720%
Agile Methodology59,80819%
Business Requirements59,73019%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services25%
Management of Companies and Enterprises11%
Insurance Carriers5%
Local Government, Excluding Education and Hospitals4%
Employment Services4%
Depository Credit Intermediation3%
Other49%
Occupation
Job Titles
Skills
Industry
Description

Statisticians develop or apply mathematical or statistical theory and methods to collect, organize, interpret, and summarize numerical data to provide usable information. May specialize in fields such as biostatistics, agricultural statistics, business statistics, or economic statistics. Includes mathematical and survey statisticians.

Projected Growth
Job TitleJob Postings% of Job Postings
Biostatisticians13,37426%
Statistical Programmers9,45319%
Principal Biostatisticians4,0168%
Bioinformatics Scientists4,93510%
Statisticians3,2506%
Show More
SkillJob Postings% of Total Postings
SAS (Software)17,00951%
Clinical Trials12,86839%
Data Analysis12,62538%
Biostatistics12,13337%
Statistical Analysis12,04736%
Show More
 
Industry% of Occupation in Industry
Scientific Research and Development Services18%
Federal Government, Civilian18%
Education and Hospitals (State Government)8%
State Government, Excluding Education and Hospitals7%
Computer Systems Design and Related Services6%
Management of Companies and Enterprises5%
Other38%
Occupation
Job Titles
Skills
Industry
Description

Computer Programmers create, modify, and test the code and scripts that allow computer applications to run. Work from specifications drawn up by software and web developers or other individuals. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.

Projected Growth
Job TitleJob Postings% of Job Postings
Programmer Analysts18,74318%
Mobile Experts13,55913%
Programmers10,68410%
Computer Programmers44,02341%
Business Analysts/Programmers1,9452%
Show More
SkillJob Postings% of Total Postings
Computer Science17,26820%
SQL (Programming Language)15,65718%
Java (Programming Language)12,04014%
Agile Methodology11,96514%
Project Management11,18613%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services35%
Software Publishers6%
Education and Hospitals (State Government)5%
Scientific Research and Development Services4%
Management of Companies and Enterprises4%
State Government, Excluding Education and Hospitals4%
Other41%
Occupation
Job Titles
Skills
Industry
Description

Network and Computer Systems Administrators install, configure, and maintain an organization’s local area network (LAN), wide area network (WAN), data communications network, operating systems, and physical and virtual servers. Perform system monitoring and verify the integrity and availability of hardware, network, and server resources and systems. Review system and application logs and verify completion of scheduled jobs, including system backups. Analyze network and server resource consumption and control user access. Install and upgrade software and maintain software licenses. May assist in network modeling, analysis, planning, and coordination between network and data communications hardware and software.

Projected Growth
Job TitleJob Postings% of Job Postings
Systems Administrators80,19945%
Network Administrators19,17211%
Linux System Administrators11,1886%
Service Delivery Managers6,1153%
Windows Administrators7,2684%
Show More
SkillJob Postings% of Total Postings
Operating Systems40,20526%
Computer Science35,29723%
System Administration33,78822%
Linux32,17621%
Active Directory29,93520%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services17%
Management of Companies and Enterprises7%
Local Government, Excluding Education and Hospitals4%
Education and Hospitals (Local Government)4%
Education and Hospitals (State Government)4%
Employment Services3%
Other60%
Occupation
Job Titles
Skills
Industry
Description

Computer Network Support Specialists analyze, test, troubleshoot, and evaluate existing network systems, such as local area networks (LAN), wide area networks (WAN), cloud networks, servers, and other data communications networks. Perform network maintenance to ensure networks operate correctly with minimal interruption.

Projected Growth
Job TitleJob Postings% of Job Postings
Customer Engineers11,27724%
Network Technicians6,66214%
Systems Support Analysts3,1437%
Production Support Managers2,5626%
Systems Support Specialists1,8734%
Show More
SkillJob Postings% of Total Postings
Computer Science5,99017%
Technical Support5,59916%
Operating Systems5,10614%
Project Management4,19512%
Network Support3,80211%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services20%
Wired and Wireless Telecommunications (except Satellite)10%
Education and Hospitals (Local Government)6%
Management of Companies and Enterprises6%
Education and Hospitals (State Government)6%
Local Government, Excluding Education and Hospitals4%
Other49%
Occupation
Job Titles
Skills
Industry
Description

Computer User Support Specialists provide technical assistance to computer users. Answer questions or resolve computer problems for clients in person, via telephone, or electronically. May provide assistance concerning the use of computer hardware and software, including printing, installation, word processing, electronic mail, and operating systems.

Projected Growth
Job TitleJob Postings% of Job Postings
Desktop Support Technicians32,9678%
Help Desk Analysts31,8038%
Help Desk Technicians40,64610%
IT Support Specialists30,5448%
IT Specialists37,2479%
Show More
SkillJob Postings% of Total Postings
Technical Support129,67431%
Help Desk Support126,23330%
Operating Systems86,26920%
Active Directory67,73016%
Desktop Support61,57315%
Show More
 
Industry% of Occupation in Industry
Computer Systems Design and Related Services22%
Employment Services6%
Education and Hospitals (Local Government)5%
Management of Companies and Enterprises5%
Software Publishers4%
Education and Hospitals (State Government)4%
Other53%
Show More

Computer Science Knowledge & Skillsets

Gain in-demand skills sought by employers with curriculum that teaches you:

Get Credit For Certifications + Training

The certificates and training listed below are relevant to this degree program. Search our database to view pre-evaluated credentials and see how a license, certification or professional training saves you time and money toward your degree.

Computer Science Bachelor's Frequently Asked Questions

Back to College Blog

Related Programs