A Comp Sc program is typically structured around a core curriculum that covers the fundamentals of computer science. This includes courses in programming languages, data structures, algorithms, and computer systems.
The curriculum also covers software engineering, computer architecture, and computer networks. These courses provide a solid foundation for students to build upon.
One key aspect of a Comp Sc program is the emphasis on problem-solving and critical thinking. Students learn to approach complex problems from multiple angles and develop creative solutions.
Hands-on experience is also a crucial part of a Comp Sc program, with many courses incorporating projects and lab work to reinforce theoretical concepts.
Admissions and Requirements
Admissions to the Computer Science program at Western Governors University (WGU) are unique and don't require ACT or SAT scores. You can demonstrate readiness through one of two options: completing college-level coursework with a minimum 2.75 GPA or higher, or achieving a high school GPA of 3.0 or higher with a B grade or better in an advanced mathematics course.
If you haven't completed a precalculus course, WGU offers an alternative through WGU Academy, which you can complete before matriculation. No prior precalculus course is required, and you can take it through WGU Academy if needed.
To get started, download the Enrollment Checklist to guide you through the step-by-step process of enrollment.
Requirements, 42 Credits
To get into the computer science program, you'll need to complete 42 credits of coursework. This includes a range of computer science courses that will give you a solid foundation in programming and computer science concepts.
One of the key requirements is completing the computer science core courses, which include CSCI1201 Computer Programming I and CSCI1202 Computer Programming II. These two courses will introduce you to the basics of programming and get you started on your journey to becoming a computer science major.
The computer science core courses also include CSCI2215 Introduction to Computer Science, which will give you an overview of the field and help you understand the different areas of computer science. Another important course is CSCI2234 Data Structures and Algorithms, which will teach you how to design and implement efficient algorithms and data structures.
In addition to the core courses, you'll also need to take courses in computer organization, software design, and database systems. CSCI3249 Computer Organization will teach you about the internal workings of computers, while CSCI3251 Design of Software Systems will show you how to design and develop software systems.
Here's a list of some of the other computer science courses you'll need to take:
- CSCI2235 Survey of Computing Security
- CSCI2247 Assembly Language Programming
- CSCI3260 Mathematical Foundations of Computer Science
- CSCI3268 Database Systems
- CSCI3278 Operating Systems
- CSCI3240 Computer Networks
- ENGR2286 Digital System Design
- CSCI4384 Prep for Comp Sci Senior Project
- CSCI4386 Computer Science Senior Project
These courses will give you a solid foundation in computer science and prepare you for your senior project, which is a capstone course that will allow you to apply your knowledge and skills to a real-world problem.
Pre-Introductory
Before diving into the Computer Science major curriculum, students have the option to take pre-introductory courses.
ENGI E1006 is a required course for all engineering students and serves as a general introduction to computing for STEM students.
COMS W1002 is a pre-introductory course for CS majors, primarily intended for humanities majors.
ENGI E1006 and COMS W1002 do not count towards the Computer Science major.
Pre-introductory courses help students prepare for the first course in the Computer Science major curriculum, COMS W1004.
Admissions Requirements
To get admitted to the computer science program, you need to meet some specific requirements. One of those requirements is to demonstrate readiness through completion of one of the following options.
You can either submit transcripts showing a minimum GPA of 2.75 or higher, along with a precalculus course from a WGU approved third-party provider with a grade of "C" or better. Alternatively, you can have a high school GPA of 3.0 or higher, and a B grade or better in a high school honors, IB, or AP level advanced mathematics course.
If you haven't completed a precalculus course by the time of application, you can take it through WGU Academy before matriculating.
Here are the specific requirements in a summary table:
You won't need to take the ACT or SAT to be admitted to this program.
Program Structure
Program Structure is the backbone of any computer science project. It's what keeps the code organized and easy to understand.
A good program structure starts with a clear and concise main function, which is often the entry point of the program. This main function should be responsible for calling other functions that perform specific tasks.
Breaking down a program into smaller functions makes it more manageable and easier to debug. As we discussed in the "Functions" section, each function should have a single responsibility and be reusable.
Pre-Intro Course (Optional, 3-4 Points)
If you're looking to get a head start on your program, you might want to consider taking a pre-intro course. This optional course is worth 3-4 points.
You can choose from a list of courses, but you'll need to select three. The courses are: ENGI E1006, COMS W1002, and COMS W4824 COMPUTER ARCHITECTURE.
Core (20-21 Points):
The Computer Science Core is a crucial part of the program, making up 20-21 points.
You'll need to complete a list of required courses, which include COMS W1004, COMS W3134, COMS W3157, COMS W3203, COMS W3261, and CSEE W3827.
The core courses are divided into three categories: First Year, Sophomore Year, and Junior and Senior Year.
Here's a breakdown of the required courses by year:
Some courses have restrictions on overlapping credits, so be sure to check those out. For example, you can only receive credit for one of the following courses: COMS W1004, COMS W1005, COMS W3134, COMS W3136, or COMS W3137.
Area Foundation (9-12 Points)
Area Foundation courses are a crucial part of your program, making up 9 to 12 points of your total credits.
You'll have the opportunity to take a variety of courses, including Introduction to Databases, Fundamentals of Large-Scale Distributed Systems, and Programming Languages and Translators.
Some of the courses you can take are listed below:
Electives and Specializations
You can choose from a variety of electives and specializations in computer science, depending on your interests and career goals.
One option is to take Computer Science Electives, which allow you to choose any three COMS courses or jointly offered computer science courses worth at least 3 points and at the 3000 level or above. This can include courses offered by Barnard CS.
Another option is to pursue a concentration in Game and Mobile Application Development, which requires courses like Mobile Application Development, Computer Game Programming, and Artificial Intelligence. This concentration will also give you the ability to apply multimedia data processing algorithms and develop applications on different platforms.
If you're interested in Information Science, you can choose from a variety of elective courses, including INTRODUCTION TO DATABASES, USER INTERFACE DESIGN, and ARTIFICIAL INTELLIGENCE. These courses must be chosen with a faculty adviser and will help you focus on the modeling and use of information within a disciplinary theme.
Cybersecurity
The Cybersecurity concentration is a great choice for those interested in protecting computer systems and networks from cyber threats. This concentration provides a solid foundation in security principles and practices.
You'll take courses like CSCI3274 Linux System Administration, which teaches you how to manage and secure Linux systems. You'll also learn about firewalls and intrusion detection systems in CSCI3345, and the foundations of cybersecurity in CSCI3410.
One of the key skills you'll develop is the ability to apply security principles and practices to maintain operations in the presence of risks and threats. This is essential in today's digital world where cyber threats are a constant concern.
To put this into practice, you'll study cryptography in CSCI3420 and information security in CSCI3783. These courses will help you assess vulnerabilities and protect data, ensuring the integrity and confidentiality of sensitive information.
Here's a summary of the courses you'll take in the Cybersecurity concentration:
- CSCI3274 Linux System Administration (3 credits)
- CSCI3345 Firewalls and Intrusion Detection Systems (3 credits)
- CSCI3410 Foundations of Cybersecurity (3 credits)
- CSCI3420 Cryptography (3 credits)
- CSCI3783 Information Security (3 credits)
Big Data Analytics
Big Data Analytics is a crucial aspect of computer science that involves extracting insights from large datasets. To gain expertise in this area, students can take courses like CSCI3331 Advanced Database, CSCI3318 Cloud Computing, and CSCI3387 Machine Learning.
These courses provide a solid foundation in handling and analyzing large datasets. By combining these courses, students can gain a comprehensive understanding of how to work with big data.
To specialize in big data analytics, students can take specific courses like CSCI3461 Data Mining and Applications and CSCI3485 Big Data Analytics. These courses focus on applying data and big data analytics methods to real-world projects and products.
Some key skills that students with a concentration in big data analytics will gain include analyzing data analytics algorithms and big data analytics frameworks, and applying data and big data analytics methods to projects and products.
Game and Mobile App Development
If you're interested in developing games and mobile applications, you'll want to take a closer look at the relevant courses. CSCI3314 Mobile Application Development and CSCI3317 Computer Game Programming are both 3-credit courses that will get you started.
With a concentration in game and mobile application development, you'll have the ability to apply multimedia data processing algorithms. This is a key skill for creating engaging and interactive experiences.
You'll also have the chance to develop applications on different platforms, which is essential for reaching a wider audience. This could be a great opportunity to create apps for both iOS and Android devices.
Here are some of the relevant courses you can expect to take:
Biomedical Engineering
Biomedical Engineering is a fascinating field that combines computer science with life sciences to analyze and understand complex biological data. This specialization requires a working knowledge of at least one programming language and some background in probability and statistics.
In this field, you'll learn computational techniques for analyzing genomic data, including DNA, RNA, protein, and gene expression data. Basic concepts in molecular biology are also essential for these analyses.
String-matching algorithms, dynamic programming, and hidden Markov models are some of the key techniques you'll study in Biomedical Engineering. These techniques are used to analyze and understand the structure and function of biological molecules.
Students with life sciences backgrounds who satisfy the prerequisites are encouraged to enroll in this specialization. They'll learn how to apply artificial intelligence and machine learning techniques to biological data, including neural networks, clustering algorithms, and support vector machines.
Minor
If you're interested in pursuing a minor in Computer Science, you'll need to take 6 courses. The first course is an intro to computer science and programming in Java, or an honors version of that course, which is 3 points.
You'll also need to take a data structures course, either the regular version or the honors version, which is 3 or 4 points. COMS W3261: Comp science theory is another required course, which is 3 points.
CSEE W3827: Fundamentals of computer systems is also required, which is 3 points. You'll need to take two more courses, one of which can be any 3000-level or 4000-level COMS/CSXX/XXCS course of at least 3 points.
Concentration
As you explore the various specializations within the Computer Science program, you'll notice that each concentration has its own unique set of courses and skills.
The Cybersecurity and Information Assurance concentration, for example, requires students to take courses like CSCI3274 Linux System Administration and CSCI3410 Foundations of Cybersecurity. This sets them up to apply security principles and practices to maintain operations in the presence of risks and threats.
Students in this concentration will also learn how to assess vulnerabilities of components, connections, and systems for data protection, privacy, and threat mitigation.
The Game and Mobile Application Development concentration, on the other hand, focuses on courses like CSCI3314 Mobile Application Development and CSCI3387 Machine Learning. This allows students to develop applications on different platforms and apply multimedia data processing algorithms.
Here's a comparison of the two concentrations:
Economy and Information
If you're interested in exploring the intersection of economy and information, you'll want to check out the course list for Information Science and the Economy.
Students may focus on understanding information modeling together with existing and emerging needs in economics and finance as well as algorithms and systems to address those needs.
The course list for this area of study includes ECON UN3412, Introduction to Econometrics, which covers the application of statistical methods to economic data.
ECON UN3025, Financial Economics, is another course that explores the relationship between financial markets and the economy.
If you're interested in learning more about money and banking, ECON UN3265 is a great choice.
Here's a list of some relevant courses:
- ECON UN3412: Introduction to Econometrics
- ECON UN3025: Financial Economics
- ECON UN3265: Money and Banking
These courses provide a solid foundation in the economic aspects of information science, and can help you develop a deeper understanding of the relationship between information and the economy.
Frequently Asked Questions
Is AP Comp Sci a easy?
AP Comp Sci is not hard, but rather challenging, with support available to help students learn and prepare for the exam. With proper support, students can master the Java programming language and excel in the course.
What is the criteria for BSCS?
To be eligible for the BSCS program, you need to have a minimum of 50% marks in your Intermediate or equivalent education with Mathematics, and an equivalency certificate from IBCC if your education is from a foreign country.
Is getting a computer science degree hard?
Getting a computer science degree requires dedication and effective time management, but with effort, most students can succeed and pursue rewarding careers in the field. With the right approach, the challenges of computer science can be overcome and a successful career can be achieved.
Sources
- ABET (abet.org)
- Computer Science < Columbia College (columbia.edu)
- Comp.sc. (thefreedictionary.com)
- ABET-accreditation (abet.org)
- https://www.abet.org/ (abet.org)
Featured Images: pexels.com