A Computer Science major at Villanova studies a broad spectrum of computing technologies and concepts.



Fall 2021 Special Topics

CSC 5930: Software Studio
Kristin Obermyer, MS

This hands-on course is for students who like to be elbow-deep in code! Through targeted lectures, expert guidance and a studio-like environment, we will explore the art and science of creating reliable and maintainable code. Come discover this unique opportunity to acquire and refine skills used daily by professional software engineers.

Topics will include:

  • test-driven development
  • distributed version control
  • continuous integration
  • code coverage
  • code quality metrics
  • cultivating an expressive coding style
  • professional tools
  • code reviews
  • software craftsmanship
  • debugging
  • refactoring
  • defensive programming
  • risk-conscious maintenance
  • pair programming
  • software experimentation and myth-busting

CSC 5930: Computer Vision
Jason Grant, PhD

Computer vision enables computers and systems to extract and derive meaningful information from digital images, videos, and other visual inputs. The goal of computer vision is much the same as human vision, enabling computers to see, observe and understand. In the course, students will implement, test and evaluate several classical algorithms and techniques such as filtering, feature detection and matching, object recognition, stereo imaging, image alignment and stitching, and motion estimation.  We will also cover newer, machine-learning based computer vision.

CSC 5930: IoT Security
James Solderitsch, PhD

Industrial Control System Security, Cyber-Physical System Security and Security within the Internet of Things (IoT) are all concerned with making our interactions with devices in the physical world safe and reliable. Medical devices, fitness devices, smart-home devices and our instrumented cars are beneficial to modern life but are also subject to compromise and have the potential to harm us. In this course, we will be taking a hands-on approach to the IoT by using real devices that employ sensors and actuators at the edge, are connected through a local gateway, and communicate to a cloud backend. Devices from Texas Instruments will be paired with a Raspberry Pi computer and students will use these devices at their own locations for labs and exercises. Cloud providers like Amazon Web Services (AWS), the IBM cloud and others will be connected to the class devices to provide an edge to cloud experience that is realistic and indicative of the commercial world of IoT. All along this experiential journey, we will be looking at how to make these kinds of devices and connections secure and what malicious actors can do to affect security and privacy.

Objective 1

Graduates will display a thorough understanding of the key principles and practices of computing.


  1. Students will demonstrate understanding of the core areas of algorithms, theory of computation, operating systems, linguistics of programming languages, and architecture.
  2. Students will have the ability to analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions.
  3. Students will have the ability to design, implement and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program's discipline.
  4. Students will have the ability to apply computer science theory and software development fundamentals to produce computing-based solutions. 

Objective 2

Graduates will demonstrate a firm foundation in the scientific, mathematical, and engineering principles that support the computing disciplines, and in communication.


  1. Students will have the ability to communicate effectively in a variety of professional contexts.
  2. Students will have the ability to function effectively as a member or leader of a team engaged in activities appropriate to the program's discipline.
  3. Students will successfully develop a major project.
  4. Students will understand and have the ability to apply concepts of discrete and continuous mathematics.
  5. Students will understand and have the ability to apply the scientific method.

Objective 3

Graduates will exhibit intellectual curiosity, mature judgment, and work for the betterment of society.


  1. Students will obtain familiarity with basic ideas and contemporary issues in the social sciences and humanities.
  2. Students will recognize professional responsibilities and make informed judgements in computing practice based on legal and ethical principles.

Objective 4

Graduates will contribute to the computing profession.


  1. Graduates will be prepared for employment in technology companies that utilize their computing education.
  2. Strong graduates from the program will be prepared for good graduate programs in computing.
  3. Students will be prepared for self-directed continuing learning and staying current with technological developments.

Dept of Computing Sciences
161 Mendel Science Center
Villanova University
800 Lancaster Avenue
Villanova, PA 19085-1699



The interdisciplinary Center for Excellence in Enterprise Technology is dedicated to distinction in the discovery, dissemination and application of knowledge and solutions to contemporary software challenges. Home to the University’s CAVE—an immersive, virtual reality facility—the Center promotes interactive learning across the University and through external academic and industry partnerships.