Choosing an Advisor

Your faculty advisor will play an important role in your senior project, so it’s important to choose early. Each project below is offered by a faculty advisor; decide the general area in which you’d like to work, and then choose an advisor who is knowledgeable in that area and will be able to help you succeed. Feel free to talk with a number of faculty members about potential projects and appropriate advisors.

Some projects involve advisors outside of the Department of Computer Science. This is acceptable, but you’ll need one official advisor from the department as well. This advisor will serve as your administrative liaison to the department.

You should plan on meeting with your advisor regularly throughout your final two semesters. Generally speaking, meeting once per week has proven to be sufficient, with more or less frequency as the situation requires.

Below is the list of projects offered for the coming academic year. Projects are generally done in teams. Browse the list, then contact the advisor for any project that interests you to work out the details for spring advising. Note that CS/DATA 396/398 is a two-semester, typically Fall-Spring course; see the Schedule page for details.

Available Projects

Projects are generally chosen from the list given below. However, if you have another idea, feel free to discuss it with an appropriate faculty member. The department may need to open and/or close projects in order to distribute students evenly across projects and faculty members.

✓ active marks a project that has been taken up by a 2026–27 team.

Title Description Advisor
CIT Projects ✓ active Calvin's IT Department may have some software development and/or data science projects that could be scoped for a senior project.

If you're interested, please email Prof Arnold with what electives you've taken (or are currently taking) and what experience, if any, you've had working on software projects for clients.
K. Arnold
Matristics: LLMs and Early Church Women. ✓ active This project aims to evaluate different Agentic Models regarding their understanding of not so well documented female figures from the early church. Students will spend time learning about these women and collecting data and evaluating the results through a defined rubric. E. Araújo
Computational Modeling Projects ✓ active

Professor Araújo studies how individual behaviors give rise to emergent patterns in communities — from political movements to religious shifts. If you're fascinated by the complex forces shaping societies around the world (especially in the Global South), this might be the research home for you.

Working as a computational modeler means sitting at the intersection of disciplines: you'll draw on sociology, history, and psychology just as much as on mathematics and algorithms. Students who thrive here enjoy reading broadly, thinking abstractly, and translating real-world phenomena into equations and simulations.

Current projects include:

  • Modeling political polarization in Brazil, with attention to religious identity and political friction
  • Modeling church communities in the United States and examining how political polarization strains their social fabric
  • Implementing and testing classical sociological theories in computational environments

Methods used include data collection and agent-based modeling (ABM). No prior experience with ABM is required — just curiosity and a willingness to learn.

E. Araújo
AI Tools for Thought and Understanding We are looking for 1 or 2 teams to work on the following projects:
  • Thoughtful AI software development (continuation) Continue work on developing and deploying the Thoughtful AI add-in for MS Word. Build and test interactive tools that help writers using LLM APIs. Specific sub-projects include: merging in research prototype code, improving UX, extending the add-in to work in other applications (Google Docs, Outlook, PowerPoint, etc.), and deploying the add-in to broader audiences.
  • Research (continuation): Design and execute studies on how writers (and other people) use AI tools for thought, aiming for academic publications.
  • AI for Education: Prof Arnold has prototyped interactions with AI to provide students personalized feedback and in-the-moment instruction with the goal of collecting evidence of learning. A student team would flesh out these prototypes and potentially study their use in education.
  • AI for Translation ✓ active: Prof Arnold has also prototyped various interactive tools for helping people understand each other, especially in church contexts. For example, a careful translation workflow.
  • AI for Reflection: Flesh out one of the projects listed in my blog post on AI in reflective mode.
I also have various Calvin-centric web development projects if a team is interested (see projects list here), including Moodle add-ins and replacing the Calvin course catalog.
K. Arnold
Calvin EMR ✓ active
(continuation)
This project will continue work on the Calvin Electronic Medical Record project, developed for the Nursing department for use with their students in nursing simulations. This is a web development project that utilizes HTML, CSS, Angular, and Typescript, as well as a significant testing infrastructure.

Team members should have taken or be taking CS336 or have significant experience with web development.

V. Norman
S. VanderWal (Calvin Nursing)
Pro-Minimalism App ✓ active This project will continue the development and productization of an app to allow a community of individuals to share their material belongings with each other. For example, one individual may have a powerwasher she is willing to loan to others to use. By using this app, the community benefits because people do not have to buy items that they need, but rarely use.

The app will allow participants to upload pictures and descriptions of items they are willing to share. It will then help participants track the items, with schedules, locations, etc.

This project was begun by Bryn Lamppa, Rose Campbell, and others as a CS262 project.

V. Norman
Community-Owned Platforms as Alternatives to Big Tech ✓ active We want you students to have some experience with development, deployment and management of digital platforms under ideals of cooperativism and distributed governance - instead of the centralized/big-tech paradigms we usually find today.

See, for example, projects like The Fediverse, social media like Mastodon, video sharing like PeerTube, workspace management like NextCloud and even newer AI-focused projects like Ollama.

You will practice some hands-on Linux server administration, DNS configuration, SSL certificates, containerization with Docker, and service orchestration, and beyond deployment, maybe even design a cooperative governance framework — defining how the community makes decisions about data, access, moderation, and the use of AI — grounded in platform cooperativism literature and reflection on how Christian values and virtues would inform these decisions.

F. Pasquini Santos
Generative AI for scaling and automating network data analysis: An empirical study ✓ active Generative AI shows promise for automating and accelerating data science workflows. However, whether it can effectively scale data analysis to large, real-world datasets remains an open empirical question. In this project, we use a network data analysis problem as a case study to empirically evaluate how well generative AI can scale data analysis and automate the analytical workflow. There are three main milestones:
  1. Use generative AI to replicate a small-scale network data analysis problem. We will investigate whether generative AI can identify additional or previously overlooked patterns and insights.
  2. Scale the same network data analysis to increasingly large network measurement datasets using generative AI, and evaluate how analysis time, computational cost, analytical coverage, and quality of findings change with data volume.
  3. Develop an agentic AI system that automates the major stages of the workflow—including data acquisition, preprocessing, analysis, and visualization—with minimal human intervention. This step can be done in parallel with (2) or as a new project.
R. Chang
CAIDA UC SanDiego
Darknet vs Greynet: A Measurement-based Comparison Study ✓ active This is a new senior project in the cybersecuity domain and is also a NSF funded project awarded to CAIDA at the UCSD. CAIDA has been hosting the world's largest network telescope (UCSD-NT) to collect unsolicited Internet traffic using a large block of unused IPv4 addresses (>10.8M), aka darknet. This traffic is often generated by scanning from intrusion attempts from malwares. However, the size of UCSD-NT has been reduced for over 30%, because of an increased utilization of the address space. To tackle this challenge, a greynet is created to capture unsolicited traffic to the network and broadcast addresses of San Diego Supercomputer Center's production networks since Feburary 2025. The overarching research problem is: Do we observe from the greynet similar scanning behavior as in the darknet?
  • Why is this problem important? Studying darknet is important for gathering threat intelligence, understandng the attack behavior, measuring the amount of attack activities, and even preventing cyber attacks.
  • What specific tasks am I responsible for?According to the proposal, there are three major tasks. Tentatively, you will be involved in the development and testing of anomaly detection method for malicious traffic.
  • What skills do I need to have? Basic computer netwoking (esp. interdomain routing), pcap(ng) analysis of the network data, basic machine learning, working on Linux, data analysis, paying attention to details
  • What else do I need to know? This is a collaborative research project with CAIDA at UC San Diego. Therefore, this is not only your senior project. We must be able to deliver according to a research plan.
R. Chang
The project page UC SanDiego
IoT and Embedded Projects ✓ active I am open to supervising any nifty IoT projects based on the Raspberry Pi or some other comparable platform. Such a project would combine the use of sensors and/or actuators, machine-to-machine (M2M) communications, along with a database and webpage or app for control and monitoring. D. Schuurman
Course Schedulizer
(continuation)
This project will continue work on the 2020-2025 Course Schedulizer projects, which developed an application used by department chairs to create, modify, and report departmental course schedules at Calvin (Application & GitHub). Users are able to import schedules from past semesters, specify course assignments, check for scheduling conflicts, and export schedules in a format that can be used to populate the official course schedule. The application is written as a Web application using ReactJS and Typescript. Specific upgrades for next year’s project will be determined by the end of this year. K. VanderLinden,
R. Pruim
Library Projects The Hekman library has a project idea about tools that can help students with the research process. If you're interested, please email Prof Arnold and cc Brian Holda Brian Holda brian.holda@calvin.edu and Jeff Lash jeff.lash@calvin.edu. K. Arnold,
B. Holda
J. Lash
Assessing Performance in an AI Educational Environment: Group Oral Exams

Prof Mark Taylor in the Business Department proposed the following project for us:

AI has introduced challenges to accurate assessment, especially unproctored assessment occurring outside of the classroom. Out of a desire to meet these new challenges without continually squeezing ever more assignments into limited class periods, professors in the school of business are piloting a new assessment type: group oral exams (GOEs). So far, students have responded very positively to GOE; it gives them the opportunity to meet in teams to prepare together for the exam while still requiring each student to answer individually when the exam is in process.

There is an instructor-facing problem, however, in the logistics. Professors currently have to track three different grades for different pieces of the assignment (including a slightly complex shared grade component) and a randomized pool of exam questions with their own logic. This is a lot of work and there are many junctions in the workflow where grades are manually moved in ways that create opportunities for user-introduced errors. Automating this process with the right software app would save professors a great deal of time and increase reliability.

GOE Facilitator App

To this end, AI was used to vibe-code (python) a working prototype app that initially meets some of these needs, but there’s a need to productionize the code and further expand the feature set.

We are currently planning a research study for Spring 2027 to validate group oral exams and will need to bring on other teachers to run the assessment in their classrooms. It will be critical to this research effort to be able to hand our participants a trustworthy copy of the supporting app.

CS Student Collaboration Opportunity

We are looking to collaborate with CS students on this project and believe it would be a mutually beneficial experience. Although we have a working prototype, CS students have the expertise to forge the app into something professional, with polish, verified consistency, a few extra specific features, and CIT compliance so that it can be installed on Calvin-owned machines. We hope an initial update to the app could be tested by the end of the fall semester. If the app is successful, there may be an opportunity to open source or otherwise distribute the software to other academic institutions.

Software Improvements More specifically, improvements to the software that would be valuable include:
  • Cloud based question-pool sharing to replace the current system of manually sharing excel files.
  • Verified CIT compliance
  • Security hardening for grade data
  • An accessibility pass
  • User interface review and design improvements
  • Analysis and testing of the software for correctness, reliability, and software quality.
  • User documentation improvements
  • Any other improvements from students that we didn’t know to ask about.

With robust, scalable, secure, polished, and documented software, we’d be able to confidently disseminate the app to other teachers involved in our study, as well as other interested faculty here at Calvin or elsewhere.

[In case it is helpful, I asked Claude Code to generate the following technical description: “The program is a Windows desktop application written in Python 3.13, with a GUI built on PySide6 (the Qt 6 framework) and Excel import/export handled via openpyxl — it runs fully offline with no network access. The codebase is about 22,000 lines of Python across 17 source files, with an automated test suite and a PyInstaller-based packaging setup for building a standalone Windows installer.”]

M. Taylor