BS Computer Science (Metro)
The programs in computer science provide a theoretically based education in computer science, coupled with practical objectives. Students are exposed to a broad range of fundamental concepts in such areas as software engineering, computer organization, database systems, management information systems and operating systems, as well as to a wide variety of computer applications. The core curriculum of required courses can be supplemented by a concentration of courses in a specialized area.
The program requires the successful completion of at least 120 credits of coursework. Graduates of the program, many of whom enter the industry, are prepared to function well in most computing environments. They are familiar with a spectrum of fundamental principles and have been encouraged to approach problems with creativity.
Prerequisites: elementary and intermediate algebra, plane geometry, trigonometry and two units of science.
The program will produce graduates who:
- Utilize a varied and balanced educational experience with an appropriate combination of theoretical knowledge and practical skills that enable entrance into and advancement in the profession of computer science.
- Build on educational knowledge and experience to continue formal education and obtain advanced degrees in the fields of computer science, management information systems, business administration, or computer engineering.
- Continue to develop as responsible professionals and global citizens who are mindful of ethical issues, societal needs, and problems inherent in the computing field.
The B.S. Computer Science program has adopted the Student Outcomes of the Computing Accreditation Commission (CAC) of ABET as its own learning outcomes, which define the attributes, skills, and knowledge that the graduates are expected to possess upon or before graduation. Each computer science graduate will have an ability to:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions. [CS]
Computer science requirements, 39 credits
- CSCI1201 Computer Programming I
- CSCI1202 Computer Programming II
- CSCI2215 Introduction to Computer Science
- CSCI2232 Data Structures
- CSCI2247 Assembly Language Programming
- CSCI3249 Computer Organization
- CSCI3251 Design of Software Systems
- CSCI3255 Mathematical Foundations of Computer Science
- CSCI3268 Database Systems
- CSCI3278 Operating Systems
- CSCI3240 Computer Networks
- CSCI4384 Prep for Comp Sci Senior Project
- CSCI4386 Computer Science Senior Project
- ENGR2286 Digital System Design
Mathematics requirements, 17 credits
- MATH1201 Calculus I
- MATH2202 Calculus II
- MATH2255 Discrete Structures
- MATH3220 Linear Algebra
- MATH3237 Probability and Statistics I
Science requirements, 8 credits
- PHYS2201 Physics Laboratory I
- PHYS2203 University Physics I
- PHYS2202 Physics Laboratory II
- PHYS2204 University Physics II
Liberal Arts/Humanities /Social Science requirements, 18 credits
- WRIT1002 Composition I: Rhetoric & Inquiry
- WRIT1003 Composition II: Research & Argument
- ENGR2210 Technical Communications
- ENGR4210 Managerial & Eng’g Economic Analysis
- ENGR3000 Modern Technologies: Principles, Applications, and Impacts
- UNIV1001 Transitioning to University Life, 1 credit
- UNIV1002 Preparing for Professional Life, 1 credit
- UNIV2001 Cross-cultural Perspectives
- UNIV2002 Global Issues
- Humanities Elective: Three credits of any course that has the prefix ENGL (except developmental ENGL), HIST, HUMN, LANG, PHIL, or RELI, or the following ART courses: ART1103, 1107, 1108, 1120, 1131, 1133, 1135, 1136, 1137, 2137, and 2238.
Free electives, 15 credits
- CS Elective: Three credits of coursework
- Technical Elective (9 credits)
- Elective (3 credits)
Concentration requirements, 15 credits
Students must complete any one of three concentration areas: Cybersecurity and Information Assurance, Big Data and Analytics, Mobile and Game Application Development. Each concentration requires the successful completion of five courses (15 credits). Students completing the BS in Computer Science with a concentration in the Cybersecurity and Information Assurance concentration are eligible to receive a Certificate of Completion of a NSA & DHS designated CAE-CDE program of study from FDU’s Center for Cybersecurity and Information Assurance (CCIA). Students pursuing a concentration in Game and Mobile Application Development are recommended to take two computer animation courses from the School of Art and Media Studies as a Free Elective and a Technical Elective in the B.S. Computer Science curriculum.
Cybersecurity and Information Assurance
- CSCI3274 Linux System Administration
- CSCI3410 Foundations of Cybersecurity
- CSCI3420 Cryptography
- CSCI3345 Firewalls and Intrusion Detection Systems
- CSCI3783 Information Security
The B.S. Computer Science graduates with a concentration in cybersecurity & information assurance will additionally have an ability to:
- Apply security principles and practices to the environment, hardware, software, and human aspects of a system. [CY]
- Analyze and evaluate systems with respect to maintaining operations in the presence of risks and threats. [CY]
Big Data Analytics
- CSCI3331 Advanced Database
- CSCI3318 Cloud Computing
- CSCI3387 Machine Learning
- CSCI3460 Data Warehouse and Data Mining
- CSCI3485 Big Data Analytics with Hadoop & R
Game and Mobile Application Development
- CSCI3314 Mobile Application Development
- CSCI3317 Computer Game Programming
- CSCI3444 Programming for the Internet
- CSCI3385 Artificial Intelligence
- CSCI4380 Systems Development with Java