Introduction

Our "Bye-O-Film" software represents a comprehensive solution designed to address the challenge of detecting and treating biofilm infections on prosthetic joints. In this section, we will delve into the key architectural features of our software, explaining why these features are crucial in delivering an effective tool for both patients and medical professionals.

Software Architecture / Design

Our "Bye-O-Film" software is a multifaceted solution that comprises three distinct components. A comprehensive representation of the entire architecture is also depicted in Figure 1 below.

1. Arduino/Sensor Code (Acting as the Medical Device):

Architectural Significance:

The foundation of our software begins with the Arduino-based sensor code. This critical component is responsible for collecting data from the sensor and transmitting it securely to our cloud infrastructure. The significance of this component lies in its role as the data acquisition layer, ensuring the accurate and timely capture of biofilm formation data. It is written in C++. 

Real Time Data Acquisition:

The Arduino code reads and sends the data to our database in real-time. This enables patients to proactively detect infections as they begin to form. This early detection is vital in biofilm infection management, providing patients with a critical advantage in their healthcare journey. 

2. Google Cloud Platform (GCP) Cloud Functions + MongoDB (Acting as the Backend):

Architectural Significance:

The GCP Cloud Functions serve as the backbone of our software, acting as the backend that interacts with our MongoDB database. This component is responsible for data ingestion, storage, and retrieval. Its architectural significance lies in its ability to provide a robust and scalable infrastructure for data management.

Database Design / Choice:

MongoDB plays a pivotal role in our software's architecture as the database solution of choice. Its selection is driven by several key considerations:

  • Flexibility: MongoDB is a NoSQL database known for its flexibility, which makes it suitable for handling diverse data structures and formats. This flexibility is invaluable when dealing with the complex and evolving nature of biofilm formation data.
  • Scalability: MongoDB's horizontal scalability allows us to expand our data storage capabilities as needed. This is crucial in a medical context where data volumes can grow rapidly.
  • Efficient Querying: MongoDB's query language and indexing capabilities enable efficient data retrieval, which is vital for medical specialists and researchers when accessing historical biofilm data for analysis and treatment optimization.
  • Real-Time Data: MongoDB supports real-time data updates, ensuring that biofilm data is always up-to-date and accessible in real-time for medical professionals. This real-time aspect is critical for timely interventions and patient care.

Scalability and Reliability:

Our choice of Google Cloud Platform (GCP) Cloud Functions ensures the scalability and reliability of the backend infrastructure. It can seamlessly handle varying levels of data traffic, accommodating the demands of a medical application with real-time data requirements.

Python-Powered Functionality:

The Cloud Functions are written in Python, a versatile and widely-used programming language. This choice of language enables the seamless execution of critical functions, such as data storage, retrieval, and communication with the frontend. Python's readability and extensive library support contribute to the maintainability and extensibility of the backend.

Cost-Efficient Prototyping:

Our backend stack of GCP Cloud Functions and MongoDB offers a budget-friendly solution for prototyping. Both of these services offer free-tier/trial usages during the initial stages of software development and deployment, when traffic isn’t substantial. This affordability makes prototyping more accessible, enabling us to iterate and refine our software without any financial constraints.

3. Phone/Web App (Acting as the Frontend):

Architectural Significance:

The frontend of our software is the user-facing component, comprising both a mobile phone application and a web application. This component plays a pivotal role in delivering biofilm data to medical specialists and patients in an accessible and intuitive manner.

Cross-Platform Accessibility:

Our architectural approach ensures cross-platform accessibility, allowing users to access the software from their preferred devices, be it smartphones or web browsers. This adaptability is achieved through the use of React, a JavaScript library for building user interfaces. We chose React for its capability to create responsive and dynamic web and mobile applications efficiently. This choice aligns with our commitment to user-friendliness.

Real-Time Data Visualization:

The frontend component offers real-time data visualization, enabling users to monitor biofilm formation dynamics as they occur. This feature empowers patients and medical specialists with timely insights into biofilm formations, fostering informed decision-making and precise treatment strategies.


Figure 1: High-level overview of the software architecture

Features

One of the critical elements within the Bye-O-Film project centers around its user interface. Our primary objective was to craft a platform capable of meticulously processing the data acquired by the electronic device and subsequently generating insightful summaries and forecasts regarding the biofilm formation surrounding the implant. Our overarching concern has always been the welfare of the patient, and as such, we were determined to provide users with a seamless experience that ensures constant control and peace of mind. Consequently, we prioritized the development of the application with these user-centric features as its foundational building blocks. 

With the application, biofilm formation is supervised at all times, on a time frame spanning months. In addition to that, the output of the electronic device involves real-time light-density data, constantly translated to the user. With the patients having access to this information, they are always aware of their implant’s status and are ready to act in case there is an issue.

Moreover, the app offers tips and guidelines for general well-being and for improving the immune system. This way, our app also offers preventive care, further tackling the challenges of infection. We want our users to feel secure wherever they are, which is why we’ve also included a location-based feature, that determines the nearest medical facilities. In a broader sense of security and peace of mind, we also want our users to be able to reach out to the community and share their experiences and doubts. As such, the app has a community access feature. One last aspect that protects the user is the password-protected interface of our app, which maintains the privacy of the user’s data.

Process and Programs

The research focused on identifying crucial functions and enhancing the user experience, drawing inspiration from apps like Apple Health, running apps, and diet platforms. Although we initially planned to balance text and images, time constraints led us to prioritize simplicity and comprehensiveness. Our primary goal was to provide users with detailed insights into their implant's status, with tracking records and graphs taking precedence. We also incorporated a "criticality bar" for biofilm assessment. Despite these complexities, we maintained an intuitive and user-friendly interface. In the end, we successfully developed a seamless product compatible with the PHAGER-M13 electronic device. Our process for developing the interface is presented below, so that it can be followed by future iGEM teams.

  1. Ideate and plan: Consider the purpose of the app and build around it. Determine the needs of the user and customize the interface with those needs in mind. To have an app that is as convenient and efficient as possible, keep the design simple.
  2. Create a mood board: Draw inspiration from different sources and be creative. Sketch out a base for the interface and compare/adjust it in reference to similar apps (Figure 2). By checking existing apps you can integrate easy, already existing solutions into your own design.
  3. Figure 2: First sketches and idea collection.

  4. Compose a color palette: It is important to consider the color scheme of the interface and to make sure it aligns with the overall scope of the project. In our case, we followed the colors implemented in the Bye-O-Film design.
  5. Create a first prototype: Use available tools to design an initial app interface (Figure 3). For this, you can use programs like Figma or what we used in our case, an iPad app called Mockup.

Figure 3: First detailed visualization of the interface, using Mockup.

Final product

Taking the initial considerations into account, the final design of the web app was established. The final product can be found at: https://byeofilm.netlify.app, or figure 4. The web app is also downloadable as an Android app. For Android the app can be retrieved from: https://drive.google.com/file/d/1eZaAkOLQ1g3FwBbUJoVsj8Y27iPxk6zW/view?usp=sharing. While retrieving, a warning sign is displayed as the repository from which the app is downloaded is not recognized. It is also possible to make it run for iOS but this costs money to compile.

Figure 4: Final product impression of the Bye-O-Film app.

Conclusion

In conclusion, the "Bye-O-Film" software is a meticulously designed solution comprising three distinct components: the Arduino sensor code, the GCP Cloud Functions + MongoDB backend, and the user-facing frontend (phone app and web app). Each component serves a vital role in the overall architecture, collectively providing a comprehensive platform for the detection and treatment of biofilm infections. The synergy between these components underscores our commitment to advancing medical technology and improving patient outcomes. 

Likewise, in alignment with our and iGEM’s open-source philosophy, all components of the code are made available on our public GitLab repository. This transparency invites collaboration and innovation within the community. To facilitate ease of use, documentation is provided.

Back to Home