yk2950: Yukti Khurana
cc4799: Chiao Fen Chan
ml4272: Muhan Liang
ia2422: Isabelle Arevalo
https://ensure-price.herokuapp.com/
- Different healthcare insurance companies have different websites and many different policies under each one of their umbrellas. It is very
hard for an individual to decipher what each policy means
, let alone to know transparently how much their potential upcoming doctor’s visit would cost. - This leaves a hole in the market and gives us an opportunity to help healthcare insurance policy holders have peace of mind before going into their doctor’s appointment - knowing how much they will end up paying.
- Our SAAS Platform solved this problem by providing our users unbiased and
transparent cost information
about their upcoming consultation so that they don't have to spend hours on phone or internet to understand their health insurance and benefits. - Further, it is hard to find solid reviews of various doctors online and users usually need to do a lot of research to find the doctors that accept their current insurance and suit their needs. To provide a single-click solution to this, our application not only
lets users find doctors based on various filters
but alsoleave anonymous reviews for them
! These reviews can be edited or deleted as per user convenience. Therefore, our app aims to provide more transparency to the healthcare system in US. - Insurance can be very confusing especially for students, therefore we have created an
EnsureAsk Forum
/Insurance FAQ
where people can post their questions about Health insurance or various plans and get answers from other users and therfore build aclose-knit community to decode health insurance complexities together
. You can alsoupvote your favourite answers
to show support! - Currently our application targets users in
New York, US
. We are aiming to expand our database to other parts of US in the future. - Our product is currently providing top plan and insurance policies from companies:
Aetna
,Oscar
,UnitedHealthCare
,Cigna
andEmpire
. We aim to add more companies and expand our database to include more plans in the future.
- Login to our ESaaS application using your email and password. If you don't have an account, you can create one!
- On Home Page, click on the
Estimate Code
button to find out the cost of your doctor's visit by answering some easy questions. - You can click on the
Find Doctors
button to look for doctors based on your needs. - Our app allows you to filter the doctors based on insurance plan, speciality and designation.
- Confused about Insurance? Participate in our
EnsureAsk
Community by clickingInsurance FAQ
button. - Our platform provides users an easy way to leave
anonymous reviews for doctors
! You can also read reviews for each doctor to make an informed decision. - You can also view your previously given reviews,
edit them as well as delete
them by going to their profile page. - Further, users can ask and answer questions related to
Health insurance
. You can alsoupvote the best answers
to help your fellow members.
Disclaimer: Since the medical cost depends on a variety of factors which can differ on the case-to-case basis and the kind of treatment, our app in no way provides the exact cost of visit. Instead, our aim is to provide users with how much benefit they might receive with their current insurance plan, based on the visit. Therefore, we endeavour to demystify their health insurance.
Signup
to our platform using your name, email and a password.Login
to the application using your email and password.- View your
Profile
. Edit your Profile
to change your name, email, and profile photo.Estimate doctor visits costs
by selecting your insurance, type of visit and doctor.Find various doctors
using filters like insurance provider, specialty and designation.- `View more information about each doctor like their gender, national provider identifier, location/address, phone number and more.
Leave reviews about a doctor
so that users can take an informed decision. We value your privacy, so the reviews would be completely anonymous.- If something changes along the way, you can always
view
your previously given reviews on your profile,edit
them and evendelete
them! - To help educate people about health insurance, our platform provides an
Insurance FAQ
where people canpost questions, answers and upvote
their favourite ones. - The about page in our app gives
detailed information on how to utilize it
along with some great tips to help you understand your insurance better. We are working to regularly update it to add more such information. `
Disclaimer: If the page that shows all the doctors take a few seconds to load, it is completely normal since we are using a large database with more than 5500 doctors.
To achieve this objective, we have created four tables - Health Insurance Plans
, Doctors
, Users
, Doctor Reviews
.
It contains details of various insurance plans given by different companies and the cost benefits they provide for different types of visits like Office visit, Critical Care, Specialist Treatment and more. Even though such details are provided on the insurance cards by most companies, people rarely know what they exactly mean and how it affects their final price. Currently, we have collected and used a small part of the data available about various insurance policies from: https://nystateofhealth.ny.gov/
It contains details of doctors and which insurance providers are accepted by them so that the user can easily choose from the list of doctors that appears after they provide us their insurance provider. We have used the following database for doctors: https://health.data.ny.gov/Health/Individual-Provider-Network-Data-2019-Quarter-4/jizq-disf
It stores users' profile and login information.
It stores all the doctor reviews given by different users.
It stores all the Questions asked by users.
It stores all the answers given by users to various questions using question id and user id.
It stores information about the number of votes each answer got so the users can take an informed decision.
Note: The csv files containing above tables to seed data can be found at lib/seeds/doctors.csv
and lib/seeds/health_insurance.csv
The user stories of our SAAS application can be found at features
directory in features
for the most basic features in our product.
Following are our feature files:
- create_account.feature
- doctors_review.feature
- doctors.feature
- edit_account.feature
- estimate_visit_cost.feature
- login.feature
- navigation.feature
- no_login.feature
- faq.feature
- filter_user_answers.feature
The current cucumber test coverage is 100%.
We have thouroughly tested our application with a coverage of 100%. Our Rspec tests can be found at spec
directory. Further, we have used FactoryBot to create test fixtures for our software testing.
- doctor_reviews_controller_spec.rb
- doctors_controller_spec.rb
- ensureprices_controller_spec.rb
- sessions_controller_spec.rb
- static_pages_controller_spec.rb
- users_controller_spec.rb
- answers_controller_spec.rb
- questions_controller_spec.rb
- rating_helper_spec.rb
- doctors_spec.rb
- insurance_plans_spec.rb
- user_spec.rb
- price_spec.rb
- user_spec.rb
- visit_spec.rb
The rspec test coverage is 100%.
Following is the Heroku Deployment Link for our product.
https://ensure-price.herokuapp.com/
ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-darwin21]
MacOS
to correctly install the right bundler version:
gem uninstall bundler
gem install bundler --version '1.9'
master
Repository is public now.
We have invited the ESAAS Course TAs to join organization's repo, and each TA should have received an email from GitHub regarding this.
The invitation link is valid for 7 days, if the link is expired, please reach out to our team to grant access.
- bundle install --without production
- bundle exec rake db:migrate
- bundle exec rake db:setup
- bundle exec rake db:test:prepare
- bundle exec rails server
- bundle exec rake cucumber
- bundle exec rake spec
rails generate migration CreateInsurancePlans company_name:string insurance_plan_name:text individual_annual_deductible:text ov:text er:text uc:text spc:text ho:text
rails generate migration CreateDoctors last_name:string first_name:string national_provider_identifier:text medicaid_provider:text site_name:string room_or_suite:string street_address:string town_city:string state:string county:string zip_code:string phone_number:text provider_type:string gender:string commercial_provider_indicator:string plan_name:text insurance_plan:string specialty:string designation:string doctor_name:string location:text
If seed doesn't work: run the command for seed file to work
gem install csv
You should get results on typing the following on Rails Console
InsurancePlans.find_by(insurance_plan_name:"MTRO GT 7000/100 EPO HSA 23 BRONZE NS INN DEP 25 DP FP")
Doctors.where(insurance_plan:"Oscar")
solution to the Heroku deployment problem:
- run the following two:
heroku run rake db:migrate
heroku run rake db:seed
- change
gem 'pg'
togem 'pg', '~> 0.15'
in Gemfile then dobundle install
, which will generate new Gemfile.lock file - make sure you have
bin/
directory with files. if not, runrake rails:update:bin