Project Ideas - CIS 400/401

Additional project proposals will be posted here as they become available:


IDEA: CS-oriented Amateur Radio

CONTACT: Jonathan Smith (jms@cis.upenn)

DESCRIPTION: Amateur Radio, sometimes called "Ham Radio", continues to thrive as a creative, community-based activity worldwide. In the US, the Federal Communications Commission (FCC) provides radio spectrum for the express use of Hams, who are (based on license class) able to to use the spectrum for a variety of interesting protocols and applications. The availability of software defined radio technologies such as GNU Radio has created a renewed interest in experimenting with radio.

SEAS has a roof-mounted antenna on Moore GRW that is intended to be connected into space in Moore 316. There are a variety of interesting senior designs that might be done:

(1) Secure remote operation of a transceiver located in Moore. The idea here would be to set up an access-controlled service that would allow remote control of a radio transceiver that was attached to the antenna. The remote access would permit remote access appropriate for the license class, e.g., allowable bands. This could be done with a Web Server API, an ssh-like access to an application running on a computer directly attached to the radio in Moore, or some scheme of yourdesign. A working artifact would have considerable impact, and if open-sourced, could attract a lot of attention!

(2) Remote-controlled software radio. Here, rather than the conventional transceiver, we would use a GNU Radio system to interface to the antenna. In this version of remote operation, a Universal Software Radio Peripheral (USRP) is connected to the antenna. The USRP is attached to a Linux box with GigE, and most of the "radio" actually consists of Python code running on the Linux box. Again, secure remote access and management (particularly of the USRP, which can be given a "personality" with Field Programmable Gate Array technology) is particularly important, and there is a huge user community.

These projects would result in tangible outcomes, great demonstrations, and would benefit from available resources that include hardware as required and "wetware" in the form of an active alumni network of Ham Radio operators.



IDEA: Energy and Sustainability Projects

CONTACT: Andrew Huemmler (huemmler@seas.upenn)

DESCRIPTION: Multiple projects have been suggested that deal with energy and sustainability in the UPenn and Philadelphia communities. These separate ideas are described in PDF files linked below. We hope these ideas serve as inspiration for students, but remind that selected projects must meet the CIS400 requirements and have a novel, *computer science* focus:



IDEA: Software Defined Networking -- Virtual Network Migration

CONTACT: Eric Keller (kellere@seas.upenn)

FACULTY SPONSOR: Boon Thau Loo (boonloo@cis.upenn)

DESCRIPTION: Is it easier to write a python program or configure a Cisco router? What if the Cisco router cannot do exactly what you need? VMWare changed the way servers are managed, why don't we have similar types of capabilities in the network equipment? With software-defined networking, we get software programmability in the network -- making it easier to create custom functionality, introduce technology like virtualization, and scale the network. And this isn't just an idea in a research lab -- OpenFlow switches are being built by major vendors (HP, NEC), being used by major web companies (Facebook, Google), and have multiple start-ups working on the software layers (Big Switch Networks, Nicira). At the same time, there is much room for research.

This project can follow a wide range of directions, but one interesting and unexplored possibility is to support live migration in such a software-defined networking environment. Live migration is a capability commonly found in virtualized servers where a virtual machine can be moved between physical servers while it is running. Applying this idea to networks, this functionality could be used together with server migration to migrate an entire infrastructure (e.g., between data centers), merge a new service into a production network, consolidate an acquired company's network into the acquiring company's network, or in many ways not thought of yet.

In this project, the student will first need to learn how to program in the OpenFlow and NOX environment. See http://www.norexpo.org (the controller framework) and http://www.openflow.org (the switch) for more information and for a nice overview of Software Defined Networking. Then, the student will write a custom controller program to perform some functionality -- the controller does not need to be novel, but can be a recreation of a simple application. The student will run this controller inside of a virtual machine and add functionality into the controller to support migration of the state on the switches -- the state of the controller can be handled by virtual machine migration. If the project will not focus on migration but instead on an application, the student will need to explore potential applications and implement a custom controller program and evaluate it.

PRE-REQS: Python or C++. Ability to work in an environment with little documentation or available tutorials and quickly ramp up on a new design environment. An interest in virtualization and networking.



IDEA: Privacy Leakage in Link Posting

CONTACT: Andrew G. West (westand@cis.upenn) and Adam Aviv (aviv@cis.upenn)

FACULTY SPONSOR: Insup Lee (lee@cis.upenn) and Matt Blaze (blaze@cis.upenn)

DESCRIPTION: When you post a link online, it has the standard url structure; such as, "www.google.com". But, links may also have a lot more information embedded within them as arguments. For example: "www.google.com?uid=12415" The "uid" may provide some private information about the person posting the link, and if we see a link with that "uid" posted elsewhere, we may be able to determine that they were posted by the same person. This could be a method to deanonymize individuals on public forums.

In this project, you will be provided a corpus of Twitter status updates and Wikipedia edits, many of which contain links. You will take these links and investigate them for potential privacy leaks. Additionally, you will develop a web crawler to analyze varied web boards, such as Craigslist and other forums. Finally, you will use the data you've collected to try and cross identify individuals based on the links they post.

PRE-REQS: Python, Java, and MySQL. Basic statistics background is expected, but not required. This work is expected to lead to publication(s), so committed students should apply.



IDEA: Predictive Tendencies in Micro Blogging

CONTACT: Adam Aviv (aviv@cis.upenn)

FACULTY SPONSOR: Matt Blaze (blaze@cis.upenn)

DESCRIPTION: How unique are individuals on twitter? And what makes you unique? Howeasily can you hide in plain sight? Can we predict future tweets based on passed interactions?

In this project you will answer these questions and more. You will be provided a corpus of over 5 million location relevant tweets from the last 9 months, and you will complete the following tasks:

(1) Uniqueness: You will examine the uniqueness of individuals in terms of their language sturture, friend relationships, and location properties of their tweets.

(2) Identifiability: You will use the properties you studied in the first part to attempt to deanonymize individuals. That is, you split the data set in half, train on half, and identify individuals on the other half. You'll report on the affectiveness of your deanonymization techniques.

(3) Avoidance: Given your results in the above sections, you will develop techniques to avoid hyper uniquens and deanonymization. Can you produce a system that allows an individual to hide in plain site?

Additionally, you may be involved in collected new data sets to aid this project by interfacing with public APIs.

PRE-REQS: Python, Java, and MySQL. Basic statistics background is expected, but not required. This work is expected to lead to publication(s), so committed students should apply.



IDEA: Location Information in Micro Blogging

CONTACT: Adam Aviv (aviv@cis.upenn)

FACULTY SPONSOR: Matt Blaze (blaze@cis.upenn)

DESCRIPTION: Researchers in mobile delay tolerant research are often hamstrung by a lack of good mobility data. This is to be expected: movement data is highly sensitive. Yet, people willing post location information every second on twitter and on other social media web sites. In this research project you will study the privacy implications of posting location information, as well as its applicability to conducting research with mobile networking. You will be provided a corpus of over 5 million location relevant tweets from the past 9 months, and you will investigate three questions:

(1) How sensitive is location information? You will perform a quantitative measure of location privacy using geo tagged twitter updates.

(2) Is micro blogged location information useful in movement studies? You will generate mobility traces from location information and apply previously published work to determine it's applicability

(3) Can we generate synthetic traces using micro blogging location information? You will look at the statistical properties of geo-tagging tweets and the mobility traces that result and investigating if we can use this information to generate synthetic traces and tweets.

Additionally, you may be involved in collecting new micro blogging updates by interfacing with public API's.

PRE-REQS: Python, Java, and MySQL. Basic statistics background is expected, but not required. This work is expected to lead to publication(s), so committed students should apply.



IDEA: Validation of a Smart Alarm Algorithm

CONTACT: Margaret Mullen-Fortino, MSN, RN, Operations Director, Penn e-lert eICU (Margaret.Fortino-Mullen@uphs.upenn)

DESCRIPTION: Patients in the intensive care unit are continuously monitored by systems whose alarms are set individually using parameter thresholds. Each vital sign data element that falls outside of the pre-set parameters triggers an alarm. For example, the heart rate may decrease by one below the set parameter and trigger an alarm even if all other parameters are in normal range. Clinical decisions are not made on one data point but instead by observing the interplay of each of the vital signs. The lack of clinical relevancy in physiologic monitoring alarms produces an inefficient healthcare system, where nurses habitually ignore low level alarms due to their overabundance. In an effort to improve the validity of alarms, a UPENN SEAS senior design team created an algorithm that uses the input of four vital signs from and employs a Fuzzy Expert System to mimic the decision processes of nurses. This solution constructs a new, three level alarm priority system that more efficiently communicates the clinical severity of the problem based on the needs and requests of current healthcare practitioners. Testing of the algorithm using PhysioNet data from 32 patients and 87061 minutes demonstrated a 53% decrease in umber of alarms, and no change in false negative or missed alarms. This algorithm now needs to be tested in clinical situations. The goal of this senior design project is to develop a system to validate the algorithm and ensure patient safety. Developing a system where the algorithm could be tested in tandem with the existing monitoring system would and allow the team to safely determine the reliability and validity of the new algorithm. This project would require Institutional Review Board approval.



IDEA: Establishing interoperability between a simulated mannequin and a physiologic monitor

CONTACT: Margaret Mullen-Fortino, MSN, RN, Operations Director, Penn e-lert eICU (Margaret.Fortino-Mullen@uphs.upenn)

DESCRIPTION: Sim-man is a computer operated total body simulator used to teach a variety of skills to health care professionals. Included with the mannequin is a configurable monitor that mimics vital sign (heart rate, heart rhythm, blood pressure, respiratory rate and pulse oximetry) waveforms. The problem is that only the heart rate and rhythm display onto a Philips physiologic monitor; blood pressure, respiratory rate and pulse oximetry waveforms only display with the screen monitor provided with sim-man. The purpose of this project is to have all of the sim-man waveforms display directly to a Philips physiologic monitor. A group of biomedical anesthesiologists from the University of Utah were able to develop an interface between a Meti mannequin and the Philips monitor. This group installed two VueLink Open Interface modules with RS232 adapter cables on an IntelliVue MP50 monitor, and connected both modules to a Macintosh laptop via USB-to-serial adapters. They developed custom software for the laptop that (1) interfaced with the METI ECS software to retrieve vital signs numerics and waveforms from the simulated patient in real-time, and (2) transformed the data into the format required by the VueLink Open Interface protocol. The University of Pennsylvania does not use the Meti-model for many reasons including its inability to move easily from site to site and its cost of $200,000 per mannequin. To date, no one has successfully established interoperability between sim-man and the Philips monitor. This feature will allow us to safely test a number of innovative health care technologies. One such project includes the testing of a smart alarm algorithm developed by a group of seniors at UPENN SEAS. The algorithm takes the input of four vital signs from three monitors and employs a Fuzzy Expert System to mimic the decision processes of nurses. This solution constructs a new, three level alarm priority system that more efficiently communicates the clinical severity of the problem based on the needs and requests of current healthcare practitioners. As a result, this multivariate approach decreases clinical false alarms. Testing the utility and safety of this algorithm would be simplified with established interoperability between sim-man and the Philips monitor.



IDEA: Searching, Creating and Sharing Scientific Workflows

FACULTY SPONSORS: Susan B. Davidson (susan@cis.upenn) and Julia Stoyanovich (jstoy@cis.upenn)

DESCRIPTION: Scientific workflows have emerged as an attractive paradigm for designing in-silico experiments in bioinformatics. Because of the collaborative nature of the bioinformatics workflow community, workflows are increasingly being shared and developed collaboratively online (c.f. myExperiment.org). This project will advance the state of the art in collaborative workflow development by supporting sophisticated yet user-friendly techniques for searching workflow repositories, creating new workflows by reusing portions of existing workflows, and sharing new workflows within defined user groups (e.g. collaborators but not competitors).

Deliverables of the project will include: 1) Download and understand the Taverna workflow system so as to be able to generate new scientific workflows; 2) Take an existing (small) repository of Taverna workflows extracted from myExperiment.org design efficient storage techniques; 3) Design a sophisticated, user-friendly, web-enabled search interface to the repository; 4) Implement different user-groups and privileges for search; 5) Visualize the search results. A successful project might have as its outcome adoption of the developed techniques into the Taverna open-source platform and/or into the web-based myExperiment.org platform.

PRE-REQS: The project is for a group of no more than four students. The team should include students with expertise in web design, database design and data-driven application development, and ideally someone with a background in bioinformatics or biology.



IDEA: Children's Health Initiative Design Project: Website and Database Design

CONTACTS: Susan Davidson (susan@cis.upenn) and Jeffrey Anderson (jande@mail.med.upenn, Perelman Class of Medicine 2014)

DESCRIPTION: Children's Health Initiative is a non-profit organization dedicated to improving the health of children in developing and under-developed countries by establishing healthcare facilities, recruiting healthcare professionals, educating families, and promoting general awareness about sanitation, nutrition, immunization, and other health issues pertaining to children. We are looking to have an experienced Computer & Information Sciences major aid us in the development of our website and various automated databases to help us run our non-profit organization efficiently. While we intend to provide guidance to the student with regard to what we are looking for, we will purposely leave some leeway on each of the projects so that the student can have an innovative and integral role in the design process. Outlined below are our expectations for the semester as well as a general description of the projects that we would expect the student to complete.

Our goal is to spend at least two hours per week meeting with the student discussing the progress of the project at hand. These discussions will be tailored to discussing any questions or concerns that he or she may have regarding the project as well as an overview of what is to be completed in the upcoming week. In addition, these discussions are meant to foster an innovative atmosphere where the student can work with us to improve the design and development of the non-profit organization from a computer science perspective. Included in this would be the opportunity for the student to use us as a sounding board for his or her ideas for improving the project design.

We expect the student to complete four different projects over the course of the year. However, because this is somewhat of a dynamic process, this number is not firmly set in stone. A description of each project can be found below:

  • Website Development
  • Automated Social Networking
  • Database Design
  • Independent Project

Overall, we are looking to spend the year working on developing the more technical aspects of our non-profit organization, Children's Health Initiative. The project is meant to give students an opportunity to gain valuable technical and business experience through a real world application that combines teamwork and ingenuity to solve pertinent problems.

PRE-REQS: The project is intended for a team of no more than two students, at least one who has database design experience (e.g., via taking CIS330 or CIS550). Students should contact Prof. Susan Davidson to discuss details.



IDEA: CourseFlow - Demographic Data about Undergraduate Students

FACULTY SPONSOR: Steve Zdancewic (stevez@cis.upenn)

DESCRIPTION: Penn's course enrollment database contains a lot of potentially useful data that is hard to access. Even getting simple statistics, like the number of students in a course in each major, is currently done by hand. This project is to develop a data analysis and visualization tool that would let Penn faculty and administrators easily ask questions about course demographics. The goal would be to create a system capable of answering questions like: How many students who took CIS 120 went on to take CIS 121? How has the number of CSCI majors as a percentage of the class changed over the years? When do curriculum defered students declare their major?

This CourseFlow tool would help the CIS department (and others) improve the quality of the undergraduate curriculum by allowing them to better understand the students' progress through the program.

PRE-REQS: Knowledge of SQL (e.g., CIS 330).



IDEA: Logic Puzzle Game

FACULTY SPONSOR: Steve Zdancewic (stevez@cis.upenn)

DESCRIPTION: You've probably seen logic puzzle like the following:

Alice, Bob, and Charlie are each wearing a hat, a T-shirt, and a pair of shorts. No two hats are the same color; no two T-shirts are the same color; and no two pairs of shorts are the same color. Every article of clothing is either red, blue, or green. The person wearing the red hat is also wearing a red T-shirt. Bob's T-shirt is the same color as Charlie's hat. Charlie's T-shirt and shorts are both blue. What outfit is each person wearing?

In textual form, these puzzles are a bit dry, but given the right user interface and graphics, I think they could make a fun game (mostly aimed at kids). This project would be to create such a game -- one interesting challenge is how to *automatically* generate these puzzles with varying levels of difficulty. Another challenge is how to present the constraints in a user-friendly way. With cute graphics and a clever user interface, this could make a pretty neat iPhone or Android app.

PRE-REQS: Interest in logic, artistic talent, mobile device programming



IDEA: LLVM Code Verification

FACULTY SPONSOR: Steve Zdancewic (stevez@cis.upenn)

DESCRIPTION: As part of a larger research project, we have developed a formal semantics for the LLVM (Low-level virtual machine) and are using it to prove properties of program transformations related to improving software security. One potential use for this formal development is to verify the correctness of various algorithms and data structures implemented in LLVM's intermediate representation. This open-ended project would explore that possibility.

Students interested in working on this project should be familiar with low-level programming, and interested in learning how to use the Coq interactive theorem prover. There are significant open research problems in this domain, but lots of good starting points: Hoare logic, separation logic, and axiomatic program semantics.

PRE-REQS: Desire to learn about interactive theorem proving, low-level LLVM programs, and program verification



IDEA: The PRESIDE Study: Parent-Rated Evaluations as Sentinels of Inpatient Deterioration Events

FACULTY SPONSOR: Chris Bonafide, MD, MSCE -- University of Pennsylvania School of Medicine -- The Children's Hospital of Philadelphia Division of General Pediatrics (bonafide@email.chop.edu)

ADDL. CONTACT: Jeff Pennington, The Children's Hospital of Philadelphia Center for Biomedical Informatics (penningtonj@email.chop.edu)

DESCRIPTION: In January 2001, an 18 month-old girl named Josie King died suddenly, unexpectedly, and unnecessarily at one of the best hospitals in America only hours after her parents expressed persistent concern about her condition. Despite miraculous advances in modern medicine, hospitals remain a dangerous place for patients, where medical errors, oversights, and miscommunications can have devastating consequences.

The PRESIDE study proposes to develop a mobile phone-based platform to determine if escalating family concerns are sentinel signals for life-threatening conditions in hospitalized children.

The team selecting this project will develop a system to allow parents to assess and report the severity of their child's illness at regular intervals. The project will involve a formal evaluation of available technologies (e.g., text messaging, web-based platform, iOS/Android apps), determining the appropriate method to reach the population of families in the hospital, and implementing a pilot system to securely route the parent assessments to CHOP's instance of REDCap, a clinical trial electronic data capture system. Consideration should be given to the future goal of making these assessments readily available to physicians in the electronic health record, and determining whether or not these assessments predict life-threatening conditions.



IDEA: GTFS Schedule Search Algorithms to Solve Real-World Transit Problems

CONTACT: Nikhil Ramchandani (nikran_temp1@hotmail.com)

FACULTY SPONSOR: Insup Lee (lee@cis.upenn)

DESCRIPTION: The General Transit Feed Specification (GTFS) is a relatively new data specification which allows transit agencies to provide route / schedule information in a uniform format. The specification was originally created by Google and became popular as a way for transit agencies to make their rides searchable via Google Transit. GTFS has been widely adopted by major agencies, but is not yet reached its full potential of utilization by the depth or breadth of agencies. Depth (density of utilization) might include D1) a significant proportion of the nation's smaller bus companies, D2) private transit companies, and D3) taxis. Breadth might include B1) regional transit agencies (e.g. Amtrak, "Chinatown Buses," etc.) and B2) airplanes.

Provided 1) a "GTFS Data Store" database serving as a proxy for a universal (e.g. "broad" and "deep") to serve as input and 2) a GTFS-compliant web-based search tool (such as CommutePlan.com) to provide the output, this project 1) creates a library of cutting-edge and extremely valuable schedule / route search algorithms that run efficiently and address key issues with similar tools today. The students must properly vet the inputs, identify existing industry problems, determine success criteria, and design and implement the algorithms library.

PRE-REQS:

  • Strong understanding of complex data structures and algorithms (particularly maps, trees, and search algorithms such as Djikstras)
  • Comfort with SQL / data structures
  • Comfort with HTTP, Sessions, etc. (preferred)
  • Comfort with web-technologies such as PHP and MySQL (would be helpful, but not necessary)


IDEA: Penn Physical Science and Engineering Libraries Subscriptions Database

CONTACT: Doug McGee (dmcgee@seas.upenn), Judith Currano (currano@pobox.upenn), Lauren Gala (milaur@pobox.upenn)

DESCRIPTION: One of the key challenges to a library budget is managing annual subscriptions, which regularly increase in price each year. This is particularly vital in science and technology libraries where typically 90-95% of information budgets go toward resources of this nature. Scitech journals and databases are much more expensive than those of other disciplines; so careful fiscal maintenance is necessary to remain within budget, while still providing access to resources critical to researchers.

To anticipate future subscription costs, the Physical Science and Engineering Libraries at Penn practice zero-based budgeting, meaning that they attempt to project the exact cost of serials based on historic pricing. To aid them in this endeavor, these libraries desire a database to help manage their ongoing subscriptions and project annual expenses. In addition, the libraries' collections focus on active research, rather than attempting to archive all information on the subjects on which they focus. Therefore, it is important to log use statistics and cost per use data to make decisions about whether or not to retain subscriptions.

The database should track the following things:

  • Maintain a repository of all serials titles held (currently and possibly historically) by the Science and Engineering Libraries.
  • Record current and historic title and publisher information, which occasionally changes.
  • Track annual prices.
  • Track the method in which Penn orders the title (part of a package, individual order)
  • For electronic titles, track number of downloads or searches.
  • For print titles, track the number of reshelvings and the shelf space that the title takes.

The database should be able to perform the following types of tasks:

  • Incorporate a user-friendly interface for data entry
  • Generate reports incorporating fields requested by the user.
  • Export data to various other applications (Excel, Access, Word, etc.)
  • Interact and draw information from other library systems (circulation, acquisitions, statistical repositories, etc.)
  • From archived data, automatically compute various values, such as price per use, annual percentage increase, etc.
  • Allow users to perform searches on any of the data input fields, incorporating truncation for text fields and inequalities/value range searching for numeric fields.

This project would offer the following challenges:

  • Working with an actual customer, who would provide non-technical specifications.
  • Produce a database ready for customer use by the end of the year.
  • Use standard programming language and well-documented code, so that the product could be updated and fixed in the future.

The project would offer the following opportunities:

  • Creating a marketable product by the end of the project term.
  • Get real-life experience working autonomously from basic specifications to final product.
  • Offers entrepreneurial possibilities, as other libraries may be interested in such a product.


IDEA: Monitoring, Aggregating, and Relating Investment News

CONTACT: Dmitry Koltunov at Novus Partners (dkoltunov@novus.com)

DESCRIPTION: What is relevant news for an investor? If I own Apple, I may care about news about the stock, the Company, the management, their products, or their industry. I may also source that news from multiple places such as industry emails, newspapers, twitter, blog posts. This information is available real time, but how do we aggregate it, relate it, navigate it, and monitor it? This project will create an infrastructure to do all of the above.

Understanding the news gives investors an edge and allows them to make informed decisions. This project aims to build an intelligent news aggregator linking in with various distribution methodologies. Once the news is collected, it needs to be related to an investment. Determining this relationship is a complex problem, since news is not always related to just a stock. In reality a stock represents a company which is an entity having relationships with other entities (management, products) and news on any of those entities is relevant as well. Collecting all relevant news, determining how important it is, and what it means is a fairly complex problem.

News aggregation gets complicated when investors own a Portfolio of Stocks, making the search for news intractable. There needs to be a more comprehensive way to monitor the news, find the most important stories based upon relevance and highlight them. This project will require architecting and implementing the foundation of a generic News Monitor that will achieve the following:

  • The programmatic collection of news
  • Creating Entity relationships to represent a company beyond a stock ticker
  • Associating news to investments in a portfolio by relating to these entities
  • Algorithms to determine importance and relevance
  • Digest of the news based on constraints, potentially a UI to search the news

The project will offer an opportunity to collaborate with some of the visionary technologists at Novus Partners, a fast growing NYC Startup in Financial Services. We will offer guidance on the project focus and provide industry context.

PRE-REQS: Scala, Interest in Open Source Projects, Mongo DB, Distributed Computing, NLP


IDEA: Automated RFID chip Application for MarchingOrder

CONTACT: Normal Badler (badler@seas.upenn) or Jackie Caliman (jackie@cis.upenn)

DESCRIPTION: MarchingOrder administers graduation ceremonies at universities around the country. These ceremonies often use RFID chips on cards to organize graduates' information. Currently, it's necessary to manually put the stickers on each card, then to program all the stickers. MarchingOrder would very much like to automate that process since it can be very cumbersome to do by hand, especially when the ceremony has a very large number of grads. The project would entail design and creation of an automated system to do the following:

  • A user would load a stack of pre-printed grad cards, which include a barcode on the front.
  • One card at a time would be taken from the stack, and an RFID chip would be affixed to the back of the card in a consistent location. The RFID chips come on a roll which can be spooled out to allow for a continuous process.
  • Something would need to check to make sure the chip is valid before application. There is a black mark on invalid chips so it could either be scanned optically for the black box or by using an RFID reader to see if it is recognized. Invalid chips should be skipped.
  • The card would then be passed (probably by a moving belt) through the IR field of a barcode scanner, which would read the barcode number on the front, and then over an RFID reader, which would program the chip. They currently have a functional piece of software that will accomplish the programming aspect when running on a PC (usually laptop) that is connected to the two pieces of hardware by USB.
  • A check would then be done to ensure the chip was programmed accurately (and the correct name will show during the ceremony). This would be done by reading the RFID chip and then reading the barcode again, most likely on a new set of equipment. If they match the card should end up in a "completed" stack, and if not something should kick the card into another area to be reprogrammed. This software does not yet exist.