Skip to content

BSIS is a system to monitor blood inventory from collection to transfusion. Started as a collaboration between the Computing For Good (C4G) program at Georgia Tech and the Centers for Diseases Control and Prevention (CDC), the application is now maintained, developed and managed by Jembi Health Systems (JHS), in partnership with Safe Blood for A…

License

dannounisalma/bsis

Repository files navigation

Build Status

BSIS

BSIS (Blood Safety Information System) was a project started at Georgia Institute of Technology as part of the Computing For Good (C4G) Program at Georgia Tech, under the name V2V (Vein to Vein). The project is now maintained by Jembi Health Systems in South Africa.

Background

BSIS is a software to manage blood related information from the point of donation through testing, storage to its eventual usage in a hospital or a clinic. Handling of blood is a sensitive operation and record of movement of blood as it goes through the following chain is critical to the effective functioning of blood processing centers. This solution is primary targeted for deployment in the developing countries of Africa where much of the blood inventory tracking is done on paper.

![Lifecycle of Donated Blood] (https://raw.github.com/jembi/bsis/master/lifecycle_blood.png)

The software was developed at Georgia Tech as part of the C4G program in collaboration with Centers for Disease Control and Prevention (CDC), Safe Blood for Africa (SBFA) and the participating countries of Africa, and is now developed and maintained by Jembi Health Systems (JHS) in South Africa.

[Video Introduction to BSIS] (http://www.youtube.com/watch?v=O_zIIXepPHc)

Problems related to blood supply in Africa

  • Unsafe blood can lead to disease transmissions
  • Insufficient supply of Safe Blood in hospitals point-of-care
  • Higher number of individuals living with HIV in Africa
  • Shortage of blood
  • Many countries of Africa depend on paper based systems to track the movement of blood through the blood processing chain

[This factsheet] (http://www.who.int/mediacentre/factsheets/fs279/en/index.html) from WHO discusses the problems related to blood safety and availability specifically the developing countries of Africa in greater detail.

Challenges

  • Transitioning from a paper based system to a computer based system can take time and experience
  • Varying blood processing practices across different countries
  • Unreliable Internet connectivity
  • Developing intuitive and easy-to-use admin. Cannot depend on an onsite admin to configure databases.

Solution

The challenges listed above have influenced the design of BSIS and the following design features have resulted.

  • Develop a browser based but locally deployable solution to avoid dependence on Internet
  • Smaller upgrade package size to allow
  • Make features configurable so that blood processing centers can turn them on/off based on their current practice
  • A single installer which installs and configures all dependencies like Java, MySQL, Apache Tomcat etc. to make first time configuration simple.

Many other design decisions in the future will be influenced by the same parameters.

Development Environment

  1. This repository contains some Eclipse specific configuration. If you are comfortable using Eclipse then setting up your development environment will be relatively easier. You may use another IDE if you wish to.
  2. You will also need to setup a MySQL database and specify this configuration in the following files:
    • BSIS/src/database.properties should contain your database connection information. Please note this should be an untracked file.
    • BSIS/war/WEB-INF/classes/META-INF/persistence.xml should contain your database connection information
    • BSIS/war/BSIS.properties Should contain the path of your MySQL binaries and database connection information, used to create backup programmatically from inside the webapp
    • You may use the script BSIS/resetDatabase.sh to setup your database intially. Note this script will work only a linux system. If you are developing on Windows then you may have to write a new batch script. The file ddl_mysql.sql is autogenerated using the class BSIS/src/datagenerator/SchemaGenerator.

Important Coding Conventions

  • Use spaces instead of tabs for formatting. You may configure your IDE to use spaces instead of tabs for all files Java, XML, HTML, JS. To setup Eclipse to do this for you by default you may read [this] (http://stackoverflow.com/questions/3460994/inserting-spaces-instead-of-tabs-in-all-files). This will ensure uniform rendering of files across editors.
  • Use 2 spaces to indent your code. Java code tends to have long variable names and hence it is easier to read code with smaller indentation.

About

BSIS is a system to monitor blood inventory from collection to transfusion. Started as a collaboration between the Computing For Good (C4G) program at Georgia Tech and the Centers for Diseases Control and Prevention (CDC), the application is now maintained, developed and managed by Jembi Health Systems (JHS), in partnership with Safe Blood for A…

Resources

License

Stars

Watchers

Forks

Packages

No packages published