Computer Science

The Computer Science curriculum is targeted to students with an interest in the fundamentals of computing: the mathematical and theoretical aspects of system and application software design and development. Our Computer Science programs include traditional computer science concepts such as data structures, information processing techniques, algorithms, computer architecture, operating systems, discrete math, computer theory, applied and statistics, and software engineering. These studies are applied in many areas of computing including programming languages, computer graphics, computer vision, artificial intelligence, machine learning, robotics, game programming, high performance computing, distributed systems, cloud computing, networks, wireless and sensor networks, network and information security, mobile and web programming, bioinformatics, and database technologies.


Our graduates have a variety of careers doing innovative research and product development, working for the government, academia, or industry. They hold jobs in systems and applications development, systems analysis, network/systems administration, research, and consulting. They are also prepared for graduate study and research in Computer and Information Sciences. Some of our graduates become independent consultants or start their own technology companies.

Program Goals

The goal of our Computer Science programs is to prepare our students for employment or for further study in a graduate Computer Science Program. By the completion of their degree, our Computer Science majors will be able to:
  • design, write and test efficient software algorithms
  • apply knowledge of computer hardware and system software to design reliable & efficient software systems
  • apply math concepts to problem solving
  • learn, evaluate and apply new problem solving techniques & tools
  • learn new problem solving strategies and transfer them from one problem domain to another
  • communicate with and lead teams
  • excel in industry or research
  • have a sense of ethical behavior and respect for diversity

Learning Objectives

After completing this program, students should:
  • have effective programming, program debugging, and program testing skills
  • be proficient in at least two programming languages and be able to select the best language for a particular problem
  • be proficient in the use of at least one modern software development environment and modern tools for software design
  • have mastered a variety of different kinds of algorithms and their relative performance
  • be knowledgeable in common data structures and their relative efficiencies
  • be proficient in both implementing data structures and the use of standard libraries of data structures
  • know the discrete mathematical foundations of Computer Science
  • be proficient in applying mathematics concepts from calculus and probability and statistics to software system development and Computer Science research
  • have an understanding of systems programming, operating systems, and system architectures, including networks and distributed systems
  • know applications and systems, including databases, networks and Web technologies
  • be able to generalize, synthesize and analyze ideas and communicate in writing clearly and effectively
  • be able to handle unfamiliar concepts and situations and apply disciplined thinking techniques to new settings
  • be able to analyze and model real world problems and to suggest solutions
  • be able to work on projects in teams

B.S. versus B.A. Degree

Temple provides two undergraduate Computer Science programs (Bachelor of Arts and Bachelor of Science) so that students have the flexibility to explore their interests.
  • With the CS Bachelor of Science (B.S.) program, students learn about specialties within Computer Science (they select 14 credits from a list of approved Computer Science elective courses).
  • With the CS Bachelor of Arts (B.A.) program, students have more general elective credits so that they can learn more about other field(s) to which they can apply their Computer Science knowlege.

Related Links


Sally Kyvernitis, Faculty Adviser for CS Programs
Department of Computer & Information Sciences
Room 330 SERC, 215-204-2030 (preferred contact method)