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.

Computer Science Degree Online Program

Program OverviewProgram DetailsWhy Choose Franklin
Back To Program Details

Major Area Course Descriptions

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. 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. Please note: A book fee will be included in your tuition charges for required course materials. Please see http://www.franklin.edu/financial-aid/tuition-fees /e-textbooks for specific charges.

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 Java programming language. Swing-based GUI clients, XHTML clients, XML, JDBC, Java Server Pages and Java Servlets, are used as the implementation mechanisms for Model 1 and Model 2 Web architectures.

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 avoid deadlock.

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 the project.

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, the student will be given introspective assignments to help crystallize his or her overall experience of the program.

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 science. Please note: A book fee will be included in your tuition charges for required course materials. Please see http://www.franklin.edu/financial-aid/tuition-fees /e-textbooks for specific charges.

Major Electives Course Descriptions

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 interactive systems and human-computer interfaces. The course will cover the current literature and the knowns and unknowns about HCI and design. The design process is centered on the user and is based on a multidisciplinary approach through a synthesis of computer science, cognitive science, and psychology. HCI designers also use analytical and empirical techniques to assess, predict, and evaluate whether a design meets user requirements.

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 emerging topics related to Web enterprise applications.

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.

INFA 300 - INTRODUCTION TO ANALYTICS

This course leads students through the foundational concepts, methods and concerns related to the practice of information / data analysis from the posing of questions needing answers to gathering the data, generating statistics, analyzing the results, formulating answers to the questions, and reporting those answers. Course topics include defining clear, accurate and actionable research questions and the answers, selecting data and methods; generating relevant statistics and reporting the story the data tells regarding the questions and the sought-after answers using basic tools such as those intrinsic to spreadsheet software such as Microsoft Excel.

ISEC 300 - INFORMATION ASSURANCE

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 of dollars in legal settlements, lost business, and trade secrets. In this breadth-based course, you will get an overview of information security principles and practices, including security models, risk management, access controls, intrusion detection and prevention, cryptography, software vulnerabilities, and ethical issues. Subsequent courses expand on this foundational material in much greater depth. Please note: A book fee will be included in your tuition charges for required course materials. Please see http://www.franklin.edu/financial-aid/tuition-fees /e-textbooks for specific charges.

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 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

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.

Considering Computer Science?

Learn more about our program without any pressure to enroll.
Get in touch with us today!

Request Information

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