Quality Measure Engine
Calculating Quality Measures
Results of quality measures are represented by QME::QualityReport. This class provides ways to determine if a report has been calculated for a population in the database as well as ways to create jobs to run the calculations.
This project currently uses Ruby 1.9.3 and is built using Bundler. To get all of the dependencies for the project, first install bundler:
gem install bundler
Then run bundler to grab all of the necessary gems:
The Quality Measure engine relies on a MongoDB MongoDB running a minimum of version 2.2.* or higher. To get and install Mongo refer to:
You can also find information on Redis at the Resque homepage. Resque is used by this project to calculate quality measures in background jobs. We also use resque-status. Please consult the resque-status instructions for working with the resque-web application if you would like to use it to monitor status.
Running Resque Workers
QME::QualityReport will kick off background jobs with Resque. For these jobs to to actually get performed, you need to be running resque workers. This can be done with the following:
QUEUE=* bundle exec rake resque:work
This project uses minitest for testing. To run the suite, just enter the following:
bundle exec rake test
The coverage of the test suite is monitored with cover_me. You can see the code coverage by looking in the coverage directory after running the test suite
Please try to follow our Coding Style Guides. Additionally, we will be using git in a pattern similar to Vincent Driessen's workflow. While feature branches are encouraged, they are not required to work on the project.
Copyright 2012 The MITRE Corporation
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.