Office of Distance Learning

You are here

Computer Science, BS

For More Information

Dr. Stephen Leach
Associate Dean
sleach@pc.fsu.edu
(850) 770-2243

Betty Stanton
stanton@cs.fsu.edu
(850) 645-0056

Learn more from the
Computer Science web site.

Distance students can earn the same bachelor's degrees as on-campus students, following the same curriculum. The curriculum is specifically designed for a student preparing for a fulfilling lifetime career as a computer professional.

This major provides a broad-based background sufficient for entry to a career in computing. It provides a systems view of computing, emphasizing the interdependence of design, object orientation, and distributed systems and networks, from basic software through systems design.

This major develops core competencies in programming, database structure, computer organization, and operating systems. It allows opportunities to study a range of other aspects of computer and information science, such as information security, data communication/ networks, computer and network systems administration, theoretical computer science, and software engineering. Every student can expect to become proficient at programming in C, C++, and Assembly Language. Additionally, students will be exposed to other languages such as Java, C#, Ada, Lisp, Scheme, Prolog, Perl, and HTML.

The coursework required for this major includes an embedded collateral minor in mathematics and physical sciences. It is ABET/CAC accredited and is intended to be sufficient for entry to a graduate program in computer science. Students that apply for the Fall or Spring semesters may have limited options in building a schedule, unless they have taken a course equivalent to COP3014 prior to admission to FSU.

Accreditation

Southern Association of Colleges and Schools, Computer Accreditation Commission of the Accreditation Board for Engineering and Technology

Method of Delivery

Internet

Time to Completion

Assuming that the student has completed the equivalent of an AA degree and the required prerequisites, the degree can be completed in 2 years by full-time students (4 years by part-time students)

Core Courses

These courses may not be offered every semester.

  • CDA3100 Computer Organization I (3)
    This is a core course intended for computer science majors with previous C/C++ background. The course introduces fundamental concepts in computer organization and digital logic design.
  • CDA3101 Computer Organization II (3)
    This course explores the fundamental concepts in processor design, including data path and control, pipelining, memory hierarchies, and I/O.
  • CEN4020 Software Engineering I (3)
    This course is the first of a two-semester software-engineering sequence, and integrates theory and practice through a project. Topics include theory, tools, requirements elicitation, software-requirements specification, requirement review, software development, ethics, software-development life cycle, teams, and project management. Oral presentation required.
  • CEN4021 Software Engineering II - Design & Implementation (3)
    This course is the second semester of a two-semester software engineering sequence with focus on software project systems development.
  • CGS4092 Ethical Issues in Computer Science (2)
    This theory and skills course is intended for students with a basic knowledge of computer science principles and programming languages. The course introduces fundamental concepts and analytical methods in ethics, along with ethical, legal, and social issues and questions in computer science that call for ethical analysis.
  • COP3014 Programming I (3)
    This course covers fundamental concepts and skills of programming in a high-level language. Flow of control: sequence, selection, iteration, subprograms. Data structures: arrays, strings, structs, ADT lists and tables. Algorithms using selection and iteration (decision making, finding maxima and minima, basic searching and sorting, simulation, etc.). Good program design using a procedural paradigm, structure and style are emphasized. Interactive and file I/O. Testing and debugging techniques. Intended primarily for computer science or computer engineering majors, or anyone who is required to take COP 3330.
  • COP3252 Internet Applications Programming with Java (3)
    This course covers the applications of the Java language to education, electronic commerce, scientific research, and distributed systems in general.
  • COP3330 Object Oriented Programming (3)
    This course focuses on object-oriented programming in a modern programming language; classes, objects, inheritance, and polymorphism; introduction to data structures and container classes.
  • COP3353 Introduction to UNIX (1)
    This course for majors and non-majors offers an introduction to the UNIX operating system. Topics include: UNIX history, requesting UNIX accounts, logging into a UNIX system, basic operating system concepts and file structure, basic commands, text editor(s), (to include emacs,vi, and pico), printing, mail, and online help. The goals of this course are to enable students to log in to their UNIX accounts from any type of computer and to have a basic understanding of the commands and utilities.
  • COP4020 Programming Languages (3)
    This course covers the principles of programming languages, including language constructs, syntactic and semantic specification methods, runtime structures, implementation techniques, and alternative programming paradigms. The course involves programming assignments in a variety of languages and individual investigations accompanied by a required written report and oral presentation.
  • COP4530 Data Structure (3)
    Definition, use and implementation of generic data structures using a modern programming language; reusable program components.
  • COP4531 Complexity and Analysis of Data Structures and Algorithms (3)
    This course is an analysis of the complexity of algorithms, including sorting, searching, and graph algorithms; use and implementation of graphs.
  • COP4610 Operating Systems and Concurrent Programming (3)
    Design principles of batch, multiprogramming, and time-sharing operating systems.
  • COP4710 Theory and Structure of Databases (3)
    This course examines the theory of relational and object-oriented databases; relational database management systems and SQL; design, development, and implementation issues in database systems.
  • COT4420 Theory of Computation (3)
    This course is an introduction to the theory of computation, including models of computation such as Turing machines; theory of programming languages, including grammars, parsing, syntax and semantics.
  • MAD2104 Discrete Mathematics I (3)
    This course covers techniques of definition and logical argument, sets and functions, propositional logic, introduction to graphs and relations, and applications. Mathematics majors should take MGF 3301 instead of MAD 2104.
  • MAD3105 Discrete Mathematics II (3)
    Techniques of definition and logical argument as applied in several areas of discrete mathematics.
  • STA3032 Applied Statistics for Engineers and Scientists (3 to 5)
    This course will cover calculus-based probability, discrete and continuous random variables, joint distributions, sampling distributions and the central limit theorem. Topics include descriptive statistics, interval estimates and hypothesis tests, ANOVA, correlation, simple and multiple regression, analysis of categorical data, and statistical quality control.

Total Credit Hours

120

Prerequisites

Pre-requisite coursework includes the following:

  1. COP XXXX (3 credit hours)
    Introductory Programming in C, C++, JAVA or equivalent language (C++ preferred)
  2. MAC X311 (4 credit hours) and MAC X312 (4 credit hours)
    Calculus I and Calculus II
  3. One of the following series:
    a. PHY X048C (4-5 credit hours) General Physics A (or equivalent with lab) and PHY X049C (4-5 credit hours) General Physics B (or equivalent with lab)
    b. BSC X010 (3 credit hours), BSC 2011 (3 credit hours) and CHM X045C (4 credit hours)*
  4. One additional science course (2-4 credit hours) for science majors (contact department for a list of acceptable courses)
* Students selecting this option will satisfy the "one science course" requirement by completing BSC 2010L and BSC 2011L.

Students must meet the requirements of the College of Arts and Sciences, including the language requirement of proficiency beyond that required for University admission.

Program Requirements

The coursework required for this major includes an embedded collateral minor in mathematics and physical sciences. At least 45 credit hours need to be at the 3000/4000 level. At least half the courses for the major have to be taken at FSU and the last 30 hours have to be taken at FSU, either on-campus or online.

Fees

The cost of this program is equal to tuition and fees for the Academic Year 2014-15 as stated on the Student Financial Services website, plus a $90.00 per credit hour distance learning fee. Contact the department for more specific fee information relative to student status and location.

Summer 2014 Course Offerings

  • CDA3101 Computer Organization II (3)
    Prerequisite: CDA3100.
    This course explores the fundamental concepts in processor design, including data path and control, pipelining, memory hierarchies, and I/O.
  • COP3014 Programming I (3)
    Prerequisite: MAC1140.
    This course covers fundamental concepts and skills of programming in a high-level language. Flow of control: sequence, selection, iteration, subprograms. Data structures: arrays, strings, structs, ADT lists and tables. Algorithms using selection and iteration (decision making, finding maxima and minima, basic searching and sorting, simulation, etc.). Good program design using a procedural paradigm, structure and style are emphasized. Interactive and file I/O. Testing and debugging techniques. Intended primarily for computer science or computer engineering majors, or anyone who is required to take COP 3330.
  • COP3353 Introduction to UNIX (1)
    This course for majors and non-majors offers an introduction to the UNIX operating system. Topics include: UNIX history, requesting UNIX accounts, logging into a UNIX system, basic operating system concepts and file structure, basic commands, text editor(s), (to include emacs,vi, and pico), printing, mail, and online help. The goals of this course are to enable students to log in to their UNIX accounts from any type of computer and to have a basic understanding of the commands and utilities.
  • COP4656 Mobile Programming (3)
    Prerequisite: COP4530 .
    This course teaches students how to program mobile devices. Students use event-based models to write and deploy a content-based application using a mobile computing software framework.
  • COP4710 Theory and Structure of Databases (3)
    Prerequisite: COP3330. MAD2104.
    This course examines the theory of relational and object-oriented databases; relational database management systems and SQL; design, development, and implementation issues in database systems.
  • MAD2104 Discrete Mathematics I (3)
    Prerequisite: MAC2311 and COP3014.
    This course covers techniques of definition and logical argument, sets and functions, propositional logic, introduction to graphs and relations, and applications. Mathematics majors should take MGF 3301 instead of MAD 2104.

Fall 2014 Course Offerings

  • CDA4150 Computer Architecture (3)
    Prerequisite: CDA3101.
    This course explores high performance architecture design and analysis, including memory-system design, pipelining, vector computers, and multiprocessors.
  • CEN4020 Software Engineering I (3)
    Prerequisite or Corequisite: COP4530.
    This course is the first of a two-semester software-engineering sequence, and integrates theory and practice through a project. Topics include theory, tools, requirements elicitation, software-requirements specification, requirement review, software development, ethics, software-development life cycle, teams, and project management. Oral presentation required.
  • CGS4092 Ethical Issues in Computer Science (2)
    This theory and skills course is intended for students with a basic knowledge of computer science principles and programming languages. The course introduces fundamental concepts and analytical methods in ethics, along with ethical, legal, and social issues and questions in computer science that call for ethical analysis.
  • COP3014 Programming I (3)
    Prerequisite: MAC1140.
    This course covers fundamental concepts and skills of programming in a high-level language. Flow of control: sequence, selection, iteration, subprograms. Data structures: arrays, strings, structs, ADT lists and tables. Algorithms using selection and iteration (decision making, finding maxima and minima, basic searching and sorting, simulation, etc.). Good program design using a procedural paradigm, structure and style are emphasized. Interactive and file I/O. Testing and debugging techniques. Intended primarily for computer science or computer engineering majors, or anyone who is required to take COP 3330.
  • COP3330 Object Oriented Programming (3)
    Prerequisite: COP3014 or a comparable course in C or C++ programming.
    Prerequisite or Corequisite: COP3353.
    This course focuses on object-oriented programming in a modern programming language; classes, objects, inheritance, and polymorphism; introduction to data structures and container classes.
  • COP3353 Introduction to UNIX (1)
    This course for majors and non-majors offers an introduction to the UNIX operating system. Topics include: UNIX history, requesting UNIX accounts, logging into a UNIX system, basic operating system concepts and file structure, basic commands, text editor(s), (to include emacs,vi, and pico), printing, mail, and online help. The goals of this course are to enable students to log in to their UNIX accounts from any type of computer and to have a basic understanding of the commands and utilities.
  • COP4020 Programming Languages (3)
    Corequisite: COP4530.
    This course covers the principles of programming languages, including language constructs, syntactic and semantic specification methods, runtime structures, implementation techniques, and alternative programming paradigms. The course involves programming assignments in a variety of languages and individual investigations accompanied by a required written report and oral presentation.
  • COP4531 Complexity and Analysis of Data Structures and Algorithms (3)
    Prerequisite: COP4530. MAD3105.
    Corequisite: STA3032, STA4321 or STA4442.
    This course is an analysis of the complexity of algorithms, including sorting, searching, and graph algorithms; use and implementation of graphs.
  • MAD2104 Discrete Mathematics I (3)
    Prerequisite: MAC2311 and COP3014.
    This course covers techniques of definition and logical argument, sets and functions, propositional logic, introduction to graphs and relations, and applications. Mathematics majors should take MGF 3301 instead of MAD 2104.
  • STA3032 Applied Statistics for Engineers and Scientists (3 to 5)
    Prerequisite: MAC2312.
    This course will cover calculus-based probability, discrete and continuous random variables, joint distributions, sampling distributions and the central limit theorem. Topics include descriptive statistics, interval estimates and hypothesis tests, ANOVA, correlation, simple and multiple regression, analysis of categorical data, and statistical quality control.