Program of Study
Computer Science is basically the study of problem-solving on computers. We utilize the power of computers in the problem-solving process while dealing with the constraints of computers. We offer to the undergraduate and graduate student a rich mix of modern computer science courses. Common to these offerings are the power, beauty, and utility of computational thought.
Applications of Computer Science knowledge include almost every field from business to education, from humanities to social sciences, or from natural sciences to engineering. Therefore, the study of Computer Science contains many fields such as computer architecture, programming languages, computer networking, database systems, information management, artificial intelligence and numerical analysis.
The California State University San Marcos undergraduate study in Computer Science emphasizes both theoretical foundations and practical applications. Students will learn algorithms, data structures, software design, the concepts of programming languages, computer organization, and computer architecture. The program stresses analysis and design experiences with substantial laboratory work, including software development. The Computer Science major prepares students for careers in applications programming, systems analysis, and software engineering, as well as for entrance into graduate and professional schools. The Computer Information Systems Option prepares students for positions of responsibility in the commercial environment by combining the appropriate computer courses with substantial coursework in the foundations of business. The Computer Information Systems option emphasizes data processing and programming to solve business-related problems. Being housed in the Computer Science Department, this option emphasizes solid technical knowledge of software and hardware.
Student Learning Outcomes
Students completing the Computer Science Option will be able to:
- Analyze the effects of different choices of algorithms and data structures.
- Choose the right programming language and/or hardware system for the task at hand.
- Design, implement and test systems to meet the requirements specified by the requester.
- Design, implement and document software in a way that facilitates software maintenance activities.
- Independently acquire new computer-related skills based on previous knowledge.
Students completing the Computer Information Systems Option will be able to:
- Identify, integrate, apply knowledge to design and build a system of reasonable complexity that solves a loosely specified business problem.
- Demonstrate effective oral and written communications in business.
- Write technical documents such as specifications, design and user-manuals in appropriate formats.
- Apply necessary principles and practices of business to complete projects and perform services to meet business objectives.
- Demonstrate project management skills in group settings.
Hundreds of job advertisements looking for Computer Science professionals appear in newspapers, professional magazines and newsletters. Due to the enormous demand, degree holders in Computer Science have multiple paths to reach their career goals. They can easily find jobs with excellent pay in many businesses and industries in positions such as: programmers, system analyst/engineer/managers, software analyst/engineer/managers, database managers, network/telecommunications administrators, customer service representative/managers, computer instructors, technical trainers, technical support, management information system managers, and sales representatives.
High school students are encouraged to take four years of English, four years of mathematics including trigonometry, one year of biological science, and one year of physical science. Courses in calculus, physics, and computer programming are recommended. Experience in clear, concise, and careful writing is valuable for success in all courses.
A maximum of thirty-two (32) lower-division units including courses in Computer Science, mathematics, and physics may be applied toward the preparation for the major requirements. Of the thirty-two (32) units, twelve (12) units must appropriately match the description for CS 111 , CS 211 , and CS 231 (depending on the articulation agreement between Cal State San Marcos and other institutions; transfer students are also advised to consult with their articulation officer to determine if they need to take CS 112, 212, and 232); twelve (12) units must appropriately match the description for MATH 160 *, MATH 162 , and MATH 264 ; and eight (8) units must appropriately match the description for PHYS 201 * and PHYS 202 for the Computer Science Option.
*Six (6) units of the above-transferred courses, MATH 160 and PHYS 201 , will count toward the lower-division General Education requirements in Area B. Students are encouraged to consult their faculty advisor to learn about courses that fulfill the General Education requirements.
Special Conditions for the Bachelor of Science in Computer Science
All courses counted toward the major, including Preparation for the Major courses, must be completed with a grade of C (2.0) or better. No more than a total of three (3) units of either CS 498 or CS 499 may be applied to the major. A minimum of fifteen (15) upper-division units counted toward the major must be completed at Cal State San Marcos.
Preparation for the Major (42 Units)
Lower-Division (12 Units)
Non-Computer Science Supporting Courses (30 Units)
Choose One of the Following Courses: (3 Units)
Choose One of the Following Courses: (3 Units)
*Six (6) lower-division General Education units in Area B (Math and Science) are automatically satisfied by courses taken in Preparation for the Major.
Major Requirements (30 Units)
Computer Science Electives (9 Units)
Chosen from CS/CIS courses numbered 400 or higher, MATH 464 and MATH 480 .
Minimum Total (120 Units)
Students must take a sufficient number of elective units to bring the total number of units to a minimum of 120