Subscribe to our Newsletter

Helpful articles and useful tips for adults considering a college degree.

Thank you for signing up for our newsletter!

You will soon receive an email
confirming your request.

Online Computer Science Degree Program

Program OverviewProgram DetailsWhy Choose Franklin
Back To Program Details

Major Area Course Descriptions

COMP 111 - INTRODUCTION TO COMPUTER SCIENCE & OBJECT-ORIENTED PROGRAMMING

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 str

COMP 121 - OBJECT-ORIENTED DATA STRUCTURES & ALGORITHMS I

This course continues the object-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/

COMP 201 - PRINCIPLES OF COMPUTER ORGANIZATION

This course is one 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

COMP 204 - PRINCIPLES OF COMPUTER NETWORKS

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.

COMP 215 - PROGRAMMING LANGUAGES: PRNCPLS/PRACTICE

This course conveys a high-level vision of programming language theory. It begins with the principles and methodologies of computer programming language such as syntax, semantics, grammar, and parsing. An assortment of programming paradigms is introduced to cover both the traditional imperative and some alternative approaches to program development. These paradigms are presented by the rudiments o

COMP 281 - DATABASE MANAGEMENT SYSTEMS

This course covers 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

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 311 - OBJECT-ORIENTED DATA STRUCTURES & ALGORITHMS II

This course is the third of four courses using the object-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. Im

COMP 321 - APPLICATION SERVER PROGRAMMING

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, design patterns, and web frameworks. To support the concepts and principles of server-based software construction, the student will design, code, test, debug, and document programs using the

COMP 323 - FUNDAMENTALS OF OPERATING SYSTEMS

This course introduces the major topics of operating systems such as file systems, IO, virtual memory, and scheduling. The application of operating systems is shown in mobile and personal devices as well as in servers and large scale processing systems. In addition, the student is given an introduction to multi-process and threaded applications and the resultant need to apply synchronization to av

COMP 325 - HUMAN COMPUTER INTERACTION

This course covers a broad range of important topics within human computer interaction (HCI) 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 inter

COMP 394 - COMPUTER SCIENCE PRACTICUM II

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

COMP 461 - ENTERPRISE SOFTWARE ARCHITECTURE

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 emergin

COMP 486 - OBJECT-ORIENTED ANALYSIS AND DESIGN

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 495 - COMPUTER SCIENCE PRACTICUM III/CAPSTONE

This is the third practicum course in the Computer Science program. It, like the first two practicum experiences, is an on-going software development project. A student at this level will be given an assignment at the most senior level, requiring planning and overall coordination tasks. Design tasks of extreme complication are also candidates for these students. In addition to the project work, th

ISEC 300 - PRINCIPLES OF INFORMATION SECURITY

In a highly connected, data intensive, and cost-focused business environment, the practice of information security not a business advantage; it is a customer requirement. Viruses, malware, 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 o

MATH 170 - DISCRETE MATHEMATICS

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

MIS 310 - INFORMATION SYSTEMS ARCHITECTURE & TECHNOLOGY

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 architectura

MIS 320 - TECHNICAL COMMUNICATION

This course will prepare students for the bi-directional technical communication demands specific to computer and information systems. Topics include technical research methods and approaches, critical analysis of technical documents, synthesis of data, information and knowledge gained through research and critical analysis, creation of accurate technical documents, and effective delivery of techn

The above list of courses only represents a portion of the courses required for a bachelor's degree. View the bachelor's degree full curriculum.

Similar Majors

Not the program you were looking for?

Check out these other popular, related majors and find your best degree program fit at Franklin.

View All Majors

Franklin is for you. Find out why.

Learn about our flexible class
scheduling, affordable tuition, and
history educating adult learners.

Learn More About Franklin