Code Monkey home page Code Monkey logo

cosc-499-fdb's Introduction

FDB Prescriber API

An API that uses the First Databank database to find the following things:

  • Query drugs
  • Query Allergies
  • Harmful interactions that could occur with a drug

Dependencies

This API uses the following technologies

  • Gradle
  • JDBC SQL Server Driver for SQL Server 2017
  • Testng

Install Steps

  • Install SQL Server 2017 or SQL Server 2019
  • Clone this repository into a folder: https://github.com/rosarobert/COSC-499-FDB
  • Create a file databaseConnectionConfig.txt in src/main/resources and put your JDBC connection string to the FDB database
    • You will need a SDK of FDB, or a FDB backup file to do this
    • The backup file we used can be found here
    • Ours was something similar to jdbc:sqlserver://localhost;database=FDB;user=[your username];password=[your password]; Usually, username = 'sa' and password is your system admin password for your computer.
  • Run the code

Organization of Code

There are 4 main components to our project:

  • The API
    • This can be found in the folder `src/main/java/Prescriber
    • You use the API by calling one of the static factories in the Prescriber interface, but preferable just FdbPrescriber to get all the optimizations we did
  • Container Objects
    • Found in the folder src/main/java/Prescriber
    • These are objects used by the API to contain info about patients, drugs, and drug interactions
  • UI
    • Found in src/main/java/Apps
    • Consists of the CLI and the GUI
    • Both are not neccessary for using this API. They were only created to show our COSC 499 class
    • There is also a ConnectionConguration file here, and this is used to create the JDBC connection based on your config file
  • Tests
    • Found in src/test
    • As said below, do not include any real good tests
    • These would need to be improved before using in production

Implementation Milestones

  • Query drugs based on a keyword
  • Query drugs based on a keyword, page, and page size
  • Find all harmful interactions between a drug and a list of prescribed drugs
  • Find all harmful interactions between a drug and a list of patient allergies
  • Find all harmful food interactions that could occur when prescribed a drug
  • Query allergies

Testing

  • Tests are in the folder src/test
  • The tests are based on what we think is the correct way to query the FDB database. Once we found what we think is a correct query for a function, we looked at all possible drugs and took that as the correct result
  • Our test coverage is over 80%
  • There are no tests based on another implementation of this interface
  • We do not see any other way to test this without input from doctors or another implementation to test against

cosc-499-fdb's People

Contributors

rosarobert avatar jenlabossiere avatar lindstrum avatar sam19977 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.