MFRM Desktop User Guide — Windows & macOS
日本語ガイド · Project Overview · Why MFRM? · Get & Open · Sample Walkthrough · Prepare Your CSV · Choose an Analysis · Interpret Every Plot · Save & Reopen · Troubleshooting
Why Use MFRM? Start with a Concrete Example
Suppose you are analyzing university essay ratings (or L2 speaking interviews, music juries, or clinical OSCE stations) for a thesis or departmental assessment. Four trained raters (R1–R4) score 30 students across two writing prompts (Task1, Task2) and four rubric criteria (Content, Organization, Language, Mechanics) on a 0–5 scale.
In realistic testing programs, you rarely want to rely on raw score averages alone:
- The "severe rater / hard prompt" trap: Suppose Student A writes
Task2(an abstract policy argument) and is graded byR4(the most severe rater), earning a raw average of 3.2 / 5.0. Student B writesTask1(a familiar personal topic) forR1(the most lenient rater) and averages 3.6 / 5.0. Raw averages make Student B look stronger—even if Student A actually demonstrated higher ability under tougher conditions. - Why correlation or Kappa isn't enough: Even if
R1andR4correlate atr = 0.90,R4might consistently award scores one point lower thanR1. High rank-order agreement does not remove a constant severity gap. - Why rubric steps need checking: Writing
"0 = Emerging … 5 = Exemplary"on a rubric sheet does not guarantee raters actually use all six categories cleanly or treat Content and Mechanics with equal severity.
What MFRM & G/D Studies Give You Instead
- One shared "logit" ruler (
MFRM): MFRM converts ordinal rubric scores into a common log-odds (logit) scale centered at0.00for non-person facets:- Examinees (
Person): Higher logits = higher ability (adjusted for the raters, tasks, and criteria involved). - Raters (
Rater): Higher logits = greater severity; lower (negative) logits = greater leniency. - Tasks & Criteria (
Task,Criterion): Higher logits = harder to earn high scores on; lower logits = easier.
- Examinees (
- Quality diagnostics (
Fit,Category Curves,Bias): Checks whether a severe rater is predictably severe (Infit MnSq ≈ 1.00) vs. erratic (Infit >> 1.00), whether every rubric score (0–5) has its own clear zone, and whether specific pairs (likeR1 × Content) behave unusually. - Practical assessment design (
G/D Study): Uses observed scores to show how reliability (Gfor relative ranking,Phifor pass/fail cutoffs) changes if you assign 2 vs. 3 raters or 2 vs. 4 tasks.
All of these run offline in one three-step desktop window (Data → Settings → Results), with an instant English / 日本語 switch in the top bar.
1. Get and Open the App
Why macOS & Windows show an "unverified" notice — and how to open in 3 steps
MFRM Desktop is distributed 100% free of charge as open-source academic software without paid commercial Apple Developer Program notarization or commercial Windows code-signing subscriptions. Because no commercial signing certificate is attached, macOS Gatekeeper ("MFRM-Desktop" Not Opened — Apple could not verify "MFRM-Desktop" is free of malware) and Microsoft Defender SmartScreen (Windows protected your PC) display a standard first-launch confirmation—not because malicious code was detected, but because the archive is unnotarized / unsigned.
Three transparent safeguards protect your work:
- 100% open source: Every line of estimation and GUI code is publicly auditable in the GitHub repository.
- 100% offline analysis (zero data upload or telemetry): All CSV reading, estimation, plotting, and
.mfrm/.html/.csvsaving run locally on your machine—you can turn off Wi-Fi before launching and run every analysis workflow offline (only clicking Help → Web theory and help opens online documentation in your browser, without uploading desktop data). - Official GitHub Releases & build provenance: Both ZIP archives are hosted directly on GitHub Releases ( TOK0 ) with verified SHA-256 digests and GitHub Actions Sigstore provenance on Windows.
macOS (Apple Silicon, M1 or Later) — Standalone Preview ZIP
MFRM Desktop uses the Data → Settings → Results interface on Apple Silicon Macs (arm64, bundled libraries targeting macOS 14.0+; Python is bundled inside MFRM-Desktop.app, while Intel Macs can run from Python source):
- Download TOK0 (release notes).
- Double-click the ZIP in Finder to expand
MFRM-Desktop.app, and move it to a writable folder such asApplications. - Double-click
MFRM-Desktop.appand complete the one-time Apple TOK1 approval (macOS Sequoia 15+ / Sonoma 14+):- When "MFRM-Desktop" Not Opened appears, click
Done— do NOT click the blueMove to Trashbutton. - Open System Settings → Privacy & Security and scroll down to the Security section.
- Next to "MFRM-Desktop" was blocked to protect your Mac, click
Open Anywayand authenticate with Touch ID or your Mac password (needed once only; opens normally every time after that).
- When "MFRM-Desktop" Not Opened appears, click
Keep macOS protections enabled: Only use Open Anyway if your institution's Mac policy permits it. Never disable Gatekeeper globally, never strip quarantine attributes in Terminal, and investigate rather than override any damaged-app warning.
Windows 11 (x64) — Standalone Preview ZIP
Python is bundled inside the download—no Python, R, FACETS, or ConQuest installation is needed.
- Download TOK0 (release notes & sample projects).
- In File Explorer, right-click
MFRM-Desktop-Windows-x64.zipand select Extract All. KeepMFRM-Desktop.exeand the entire_internalfolder together in the same folder (never run the EXE from inside the unextracted ZIP or move the EXE alone). - Double-click
MFRM-Desktop.exe. If Microsoft Defender SmartScreen (Windows protected your PC) appears, clickMore info→Run anyway(needed once only; if institutional policy blocks execution, record the exact message for support).
Keep Windows protections enabled: Never turn off Microsoft Defender or Windows security settings to open the preview. Windows on ARM and other Windows editions are not verified, and this preview (0.2.19-beta) is not certified across every Windows configuration.
Optional: Verify SHA-256 checksum or GitHub build provenance before first launch
GitHub automatically displays the verified `sha256` digest next to each file on [`desktop-20261031`](https://github.com/Ryuya-dot-com/MFRM_Python_Application/releases/tag/desktop-20261031) alongside `SHA256SUMS.txt`. To verify locally: - **macOS Terminal:** `shasum -a 256 "$HOME/Downloads/MFRM-Desktop-macOS-arm64.zip"` - **Windows PowerShell:** `Get-FileHash "$HOME\Downloads\MFRM-Desktop-Windows-x64.zip" -Algorithm SHA256` - **Windows SLSA Provenance (GitHub CLI):** `gh attestation verify "$HOME/Downloads/MFRM-Desktop-Windows-x64.zip" --repo Ryuya-dot-com/MFRM_Python_Application`Want to try in a browser first?
Open the Web App with synthetic or properly de-identified data.
2. Try the Sample — Walkthrough with Actual Numbers
Let's run the built-in synthetic essay dataset (30 examinees × 4 raters × 2 tasks × 4 criteria = 960 ratings) and read the exact numbers that appear on screen:
- In Data, click Sample (
Writing sample (synthetic data)), inspect the 10-row preview, and click Next. - In Settings → Columns / rubric, confirm the pre-filled values (
Person=Person,Score=Score, Facets =Rater,Task,Criterion, Minimum / Maximum =0/5). Leave Model / estimation on the defaults (RSMandJMLE). - Click Analyze (and confirm the 960-row prompt). Within seconds, Results opens.
Check what you just discovered in Table → Measures and Fit
Switch to Table and look at the non-person rows of Measures and Fit:
| Facet | Level | Estimate (logits) | Infit MnSq | Plain-language takeaway from this sample |
|---|---|---|---|---|
Rater | R1 | -0.726 | 1.006 | Most lenient rater (0.73 logits below the rater mean), and very consistent (Infit ≈ 1.01). |
Rater | R2 | -0.093 | 0.980 | Close to average severity, consistent fit. |
Rater | R3 | +0.352 | 0.950 | Moderately severe, consistent fit. |
Rater | R4 | +0.467 | 1.052 | Most severe rater—1.19 logits more severe than R1, yet still consistent (Infit ≈ 1.05)! |
Task | Task1 / Task2 | -0.311 / +0.311 | 1.043 / 0.951 | Task2 is 0.62 logits harder than Task1. |
Criterion | Content → Mechanics | -0.556 → +0.283 | 1.065 → 0.943 | Raters award high marks most readily on Content (-0.56) and score Mechanics (+0.28) and Language (+0.23) more severely. |
(Note: In JMLE, the table's Conditional SE / SD and bounds hold other fitted parameters fixed as screening approximations—always read the note directly below each table!)
Now switch to Observed Category Use: all six rubric categories (0 through 5) are well populated—from 72 ratings (7.5%) at score 0 and 96 (10.0%) at score 5 up to 230 (24.0%) at score 2 and 225 (23.4%) at score 3. Finally, try Save project (.mfrm) and Save report (.html).
3. Prepare and Import Your Own CSV
Reshape wide spreadsheets into "one row = one rating"
Spreadsheets exported from gradebooks often put raters side by side (wide format). Before importing into MFRM Desktop, stack them so every row is one single rating event:
❌ Wide format (do NOT import directly):
Student, Task, Criterion, Rater1_Score, Rater2_Score
E01, T1, Content, 4, 5
✅ Long format (ready for MFRM Desktop):
Person,Rater,Task,Criterion,Score
E01,R1,T1,Content,4
E01,R2,T1,Content,5