Commit graph

44 commits

Author SHA1 Message Date
Nelson Jovel
b2e866a895 perf: reduce number of queries by requesting grouped_responses once instead of for each measure 2024-01-12 13:39:20 -08:00
Nelson Jovel
61f861a4f7 chore: remove method that wasn't needed 2024-01-12 13:31:19 -08:00
rebuilt
46b5cbef2d perf: Reduce number of queries. Remove unneeded methods. Combine
subcategory and measure queries in controller
2023-06-19 20:51:54 -07:00
rebuilt
8a23296ca5 perf: Add another index to surveyitemresponses. Implement bullet suggestions. Memoize a function in measure.rb 2023-06-10 10:29:28 -07:00
rebuilt
f590bc9dd5 Add subcategory report 2023-05-22 16:40:39 -07:00
rebuilt
1a27b980d0 Round all averages to two decimal places 2023-05-12 13:13:20 -07:00
rebuilt
aa3a67406b Set a minimum threshold of 10 survey item responses to calculate scores per survey item 2023-04-17 15:18:10 -07:00
rebuilt
65b8599c6e Update logic for calculating student response rate. Remove references
to survey table.  We no longer check or keep track of the survey type.
Instead we look in the database to see if a survey item has at least 10
responses.  If it does, that survey item was presented to the respondent
and we count it, and all responses when calculating the response rate.

Remove response rate timestamp from caching logic because we no longer
add the response rate to the database. All response rates are calculated
on the fly

Update three_b_two scraper to use teacher only numbers

swap over to using https://profiles.doe.mass.edu/statereport/gradesubjectstaffing.aspx as the source of staffing information
2023-04-08 10:59:48 -07:00
rebuilt
72c90b8f47 Add selector for all data 2022-11-18 08:20:26 -08:00
rebuilt
89a7f27b88 Finishes #183092367. Adds ui and graphs to show grade level disaggregations 2022-10-16 22:03:25 -07:00
rebuilt
a4dbeb6718 Change logic on analyze page to include admin data when presenting insufficiency messages and enable/disable academic year checkboxes 2022-08-15 13:31:36 -07:00
rebuilt
105f30f220 Change race score calculations so the average bubbles up through survey_items
-> scales -> measure.
Precalculate averages for performance.
2022-08-10 09:58:11 -07:00
rebuilt
d44a5275b4 Address bug related to story #182855028 2022-07-29 16:04:43 -07:00
rebuilt
12e4e3f177 import students 2022-07-29 15:34:56 -07:00
rebuilt
e89358dacc implement suggestions from static code analysis tools 2022-07-12 19:15:54 -07:00
rebuilt
bb5f668497 Refactor code based on rubocop and reek suggestions 2022-07-11 16:46:30 -07:00
rebuilt
18b479b8b2 Refactor based on rubocop and reek suggestions 2022-07-08 19:07:23 -07:00
rebuilt
ea09fa06b7 Add popup message on admin data exclamation point indicators 2022-07-07 18:47:51 -07:00
rebuilt
deaf13c976 Modify behavior of insufficient data indicators for admin data items. Now we show indicators in line with the admin data item descriptions to indicate which items are missing data 2022-07-06 15:54:29 -07:00
rebuilt
01d4448fde Refactored score methods 2022-07-05 13:15:25 -07:00
rebuilt
a6ad132c81 Add counter caches 2022-06-16 16:14:03 -07:00
rebuilt
c03615cb43 Rename ResponseRate to ResponseRateCalculator. Create a new response
rate model.  Create a loader to refresh response rates for all
subcategories.

Use precalculated response rates in views

Wrap more elements in page caching

Calculate a response rate for a subcategory if one does not already
exist
2022-06-16 08:19:26 -07:00
rebuilt
d15e89f37c memoize all functions in measure 2022-06-14 15:26:41 -07:00
rebuilt
3778aeb1d6 alter logic for insufficiency so that a count of 0 survey item responses is enough to trigger insufficiency
Implement large speed improvements to score calculations.  Add page caching to all pages.  Small speed improvements to response rate by filtering out
survey items without responses with `none?` `method vs count == 0`.
2022-06-14 11:17:59 -07:00
rebuilt
ee80867609 memoize functions in measure.rb 2022-06-13 12:20:13 -07:00
rebuilt
50256cacce Create academic year checkbox selectors. Refresh page with years selected on
checkbox change.  Draw bar graphs for each academic year selected.
Center bar graphs in their column.  Color the columns to match the
sample colors on the checkboxes.  Add scores on beta to top of graph.
Automatically display the most recent year of data for the district.
Modify logic for the insufficient data message or the 'measure not based
on student/teacher surveys' message so it only shows if there are no
bars with data to display.
2022-06-08 15:42:54 -07:00
Nelson Jovel
3d7e62f21f Draw the teacher survey data bar. Finishes #182226823 2022-05-25 19:44:29 -07:00
Nelson Jovel
a134de3fdd Implement bullet suggestions and cache overview graph 2022-05-23 21:44:25 -07:00
Nelson Jovel
7a9830915b Create grouped bar chart on analyze page 2022-05-20 20:24:23 -07:00
Nelson Jovel
c475744939 Modify score calculations. Ignore any survey item scores of 0.
Never include zero when performing calculations for scores.
2022-04-20 13:49:27 -07:00
Nelson Jovel
9c954f97ec Update admin data collection rate numbers on browse page. Also, if all admin data has been collected, do not show 'insufficient data' indicator. Finishes #181754853 2022-04-13 20:14:25 -07:00
Nelson Jovel
9ecc501e24 Display measure scores. Finishes #181754978 2022-04-06 13:09:33 -07:00
rebuilt
2a2777745a Change the sufficiency threshold from a static number of minimum responses to a minimum response rate of 25 percent 2022-02-28 15:36:49 +01:00
rebuilt
d4df7cbc06 Add scales to framework. Change calculations to first group and then
average those groupings and the way up the framework.  Likert scores for
a survey_item are averaged.  Then all the survey_items in a scale are
averaged.  Then student scales in a measure are averaged.  And teacher
scales in a measure are averaged.  Then the average of those two
calculations becomes the score for a measure.  Then the measures in a
subcategory are averaged.
2022-02-24 14:53:06 +01:00
rebuilt
e69f850cc5 Add missing tests. Remove unused code. Filter out legacy specs from code coverage report 2022-02-01 19:33:24 +01:00
Nelson Jovel
3408ecd749 Show benchmark boundaries for subcategories that only include admin data 2022-01-03 13:14:22 +01:00
Nelson Jovel
ad03606d66 Add benchmarks to survey and admin data items. Remove them from measures. Modify seeder
Calculate benchmarks for measures based on a weighted average of survey
and admin data items

Added architectural records
2021-12-28 14:10:34 +01:00
Nelson Jovel
aeb6a45a45 Show partial data indicators on variance chart 2021-12-09 14:51:28 -05:00
Liam Morley
cf6e80ce6b Show modal when no measures for a school/year have meet their threshold 2021-11-10 15:46:49 -05:00
Alex Basson
228cf137ad Finishes #179904795. Adds prompts to measures section on browse page 2021-11-01 20:33:45 +01:00
Alex Basson
2abf2d352a Implement correct policy regarding whether there exist sufficient data for a measure 2021-10-22 16:02:03 -04:00
Alex Basson
10e70557bd Display insufficient data note. TODO: remove measures from variance chart 2021-10-21 21:30:55 -04:00
Liam Morley
25578a896f we have a gauge! next up, let's style the page 2021-10-01 13:32:10 -04:00
Alex Basson
12415861c1 Rename construct -> measure, seed with SqmCategories and Subcategories 2021-09-22 08:44:54 -04:00
Renamed from app/models/construct.rb (Browse further)