Acceptance Criteria — My Accidents (MA)¶
User Story¶
As a logged-in user who has reported or started reporting a vehicle accident I want to view, resume, review and delete my accident records from a dedicated "My Accidents" page So that I can track the status of every accident I've reported and pick up unfinished reports where I left off
Scenario-based AC — Given / When / Then¶
| AC ID | Scenario | Jira | Type | Criticality | Given (context) | When (action / trigger) | Then (expected outcome) | Linked TCs | Status |
|---|---|---|---|---|---|---|---|---|---|
| AC-MA-01 | Logged-in user opens the Activities menu | RC-111 | Happy | 🔴 Critical | User is logged in | User taps Activities | The Activities page displays And it lists the menu items: My accidents, Digital cost estimates, Car rental cost estimates (each with its description line) |
TC-MA-001 |
Draft |
| AC-MA-02 | Guest user is blocked from the Activities / My Accidents pages | RC-111 | Permission | 🔴 Critical | User is not logged in (guest) | User attempts to open Activities or My Accidents | Access is denied And the user is prompted to log in before the page is shown |
TC-MA-002 |
Draft |
| AC-MA-03 | Back button on Activities menu returns to Home | RC-111 | Happy | 🟡 Medium | User is on the Activities menu page | User taps the Back button in the top app bar | The user is returned to the Home page | TC-MA-003 |
Draft |
| AC-MA-04 | Reported-accidents tab shows the empty state | RC-111 | Happy | 🔴 Critical | Logged-in user is on the My Accidents page And has zero reported accidents |
User opens the Gemeldete Unfälle (Reported accidents) tab | A centered car icon and the text "No Accidents reported" (DE: "Keine Unfälle gemeldet") are displayed | TC-MA-004 |
Draft |
| AC-MA-05 | Reported accident is shown as a completed card | RC-111 | Happy | 🔴 Critical | Logged-in user is on the Reported accidents tab And has ≥1 reported accident |
User views the tab | Each reported accident is shown as a card with a "COMPLETED" (DE: "ABGESCHLOSSEN") status badge, the vehicle's brand/model/year, and a 3-dot context-menu icon | TC-MA-005 |
Draft |
| AC-MA-06 | 3-dot menu opens the reported-accident action sheet | RC-111 | Happy | 🟠 High | A reported-accident card is visible | User taps the card's 3-dot icon | A bottom sheet opens with options "View accident", "Delete accident" (styled in red), and "Cancel" | TC-MA-006 |
Draft |
| AC-MA-07 | Viewing a reported accident opens the final submission screen | RC-111 | Happy | 🔴 Critical | A reported-accident card (COMPLETED) is visible | User taps the card row, or selects View accident from its action sheet | The "Thank you, All steps are now completed" screen for that accident is displayed, with "4 OF 4 STEPS COMPLETED" and all 4 steps checked | TC-MA-007 |
Draft |
| AC-MA-08 | Deleting a reported accident succeeds | RC-111 | Happy | 🔴 Critical | A reported-accident card's action sheet is open | User taps Delete accident | The accident is removed from the Reported accidents list And the message "Delete accident successfully" (DE: "Unfall erfolgreich gelöscht") is shown |
TC-MA-008 |
Draft |
| AC-MA-09 | Deleting a reported accident fails | RC-111 | Negative | 🟠 High | A reported-accident card's action sheet is open And the delete operation cannot be completed (system/server error) |
User taps Delete accident | The accident remains in the Reported accidents list And the message "Can't delete this accident." (DE: "Dieser Unfall konnte nicht gelöscht werden.") is shown |
TC-MA-016 |
Draft |
| AC-MA-10 | Cancel dismisses the reported-accident action sheet without changes | RC-111 | Alternate | 🟡 Medium | A reported-accident card's action sheet is open | User taps Cancel | The bottom sheet closes And the accident is unchanged in the list |
TC-MA-009 |
Draft |
| AC-MA-11 | Saved (draft) accident is shown as a collapsed card | RC-111 | Happy | 🔴 Critical | Logged-in user is on the Gespeicherte Unfälle (Saved accidents) tab And has ≥1 saved accident |
User views the tab | Each saved accident is shown as a card with a "NEW" or "PENDING" status badge (DE: "NEU" / "AUSSTEHEND"), the vehicle's brand/model/year, an expand chevron, and a 3-dot context-menu icon | TC-MA-010 |
Draft |
| AC-MA-12 | Expanding a saved-accident card reveals the progress timeline | RC-111 | Happy | 🟠 High | A saved-accident card is collapsed | User taps the card's expand chevron | The card expands to show a vertical timeline of the 4 reporting steps: Accident details, Accident Photos, Vehicle part details, Capture vehicle doc. | TC-MA-011 |
Draft |
| AC-MA-13 | Completed vs. pending steps are visually distinguished in the timeline | RC-111 | Happy | 🟡 Medium | A saved-accident card is expanded | User views the progress timeline | Each completed step shows a green checkmark and its completion timestamp And each pending step is shown in a disabled/gray state |
TC-MA-012 |
Draft |
| AC-MA-14 | Continue report resumes the flow at the next incomplete step | RC-111 | Happy | 🔴 Critical | A saved-accident card is expanded And at least one step is still pending |
User taps Continue report inside the expanded card | The report-accident flow resumes at the next incomplete step for that accident | TC-MA-013 |
Draft |
| AC-MA-15 | 3-dot menu opens the saved-accident action sheet | RC-111 | Happy | 🟠 High | A saved-accident card is visible | User taps the card's 3-dot icon | A bottom sheet opens with options "Continue report", "Delete saved accident" (styled in red), and "Cancel" | TC-MA-014 |
Draft |
| AC-MA-16 | Deleting a saved accident succeeds | RC-111 | Happy | 🔴 Critical | A saved-accident card's action sheet is open | User taps Delete saved accident | The draft is removed from the Saved accidents list And the message "Delete accident successfully" (DE: "Unfall erfolgreich gelöscht") is shown |
TC-MA-015 |
Draft |
| AC-MA-17 | Deleting a saved accident fails | RC-111 | Negative | 🟠 High | A saved-accident card's action sheet is open And the delete operation cannot be completed (system/server error) |
User taps Delete saved accident | The draft remains in the Saved accidents list And the message "Can't delete this accident." (DE: "Dieser Unfall konnte nicht gelöscht werden.") is shown |
TC-MA-017 |
Draft |
| AC-MA-18 | Final submission screen displays on completion of all 4 steps | RC-111 | Happy | 🔴 Critical | User has completed all 4 reporting steps for an accident | User opens that accident (via its arrow / "View accident") | The screen shows the title "Thank you, All steps are now completed", a "4 OF 4 STEPS COMPLETED" progress indicator, and all 4 steps marked with a green checkmark | TC-MA-018 |
Draft |
| AC-MA-19 | Each completed step can be opened for review from the final screen | RC-111 | Happy | 🟡 Medium | User is on the final submission screen for a completed accident | User taps one of the 4 step rows | That step's captured details open for review | TC-MA-019 |
Draft |
| AC-MA-20 | Send report requires the privacy policy to be accepted and ≥1 email | RC-111 | Negative | 🔴 Critical | User is on the final submission screen And the Privacy Policy checkbox is unchecked, or no email has been added |
User attempts to tap Send report | The report is not submitted And Send report is unavailable/blocked until both conditions are met |
TC-MA-023, TC-MA-024, TC-MA-025 |
Draft |
| AC-MA-21 | Send report succeeds once required conditions are met | RC-111 | Happy | 🔴 Critical | User is on the final submission screen And the Privacy Policy checkbox is checked And at least one email chip has been added |
User taps Send report | The report submission succeeds | TC-MA-026 |
Draft |
| AC-MA-22 | Added emails appear as removable chips | RC-111 | Happy | 🟡 Medium | User is on the final submission screen with the email input focused | User enters an email address and taps Add | The email appears as a chip below the input, with an 'x' control to remove it | TC-MA-020, TC-MA-022 |
Draft |
| AC-MA-23 | Removing the only email chip re-blocks Send report | RC-111 | Edge | 🟡 Medium | User is on the final submission screen with exactly one email chip added and the privacy checkbox checked | User taps the 'x' on that email chip | The email chip is removed And Send report becomes unavailable again (zero emails) |
TC-MA-021 |
Draft |
Business Rules (rule-based AC)¶
| Rule ID | Business Rule | Jira | Rationale / Source | Criticality | Linked TCs | Status |
|---|---|---|---|---|---|---|
| BR-MA-01 | Login is required to access the Activities menu and the My Accidents page. | RC-111 | Ticket: "Login required: User has to log in to access my activities page and my accident page." | 🔴 Critical | TC-MA-002 |
Draft |
| BR-MA-02 | Deleting a reported or saved accident performs a soft delete only — the record must never be permanently removed from storage. | RC-111 | Ticket: "Perform a soft delete only; do not delete permanently." | 🔴 Critical | TC-MA-027 |
Draft |
| BR-MA-03 | Delete outcome messaging is fixed: success = "Delete accident successfully" (DE: "Unfall erfolgreich gelöscht"); failure = "Can't delete this accident." (DE: "Dieser Unfall konnte nicht gelöscht werden."). | RC-111 | Ticket: "Delete Accident" section | 🟠 High | TC-MA-008, TC-MA-015, TC-MA-016, TC-MA-017 |
Draft |
| BR-MA-04 | The Final Submission ("Thank you") screen must show only a "Send report" action — the "Save it for later" button is removed. | RC-111 | Ticket comment (Ann, 2026-07-31): "Note: Remove button Save for later" — supersedes the original ticket description; confirmed by the latest Figma screenshot showing no secondary button | 🔴 Critical | TC-MA-028 |
Draft |
| BR-MA-05 | The PDF report is not sent to entered emails yet — this is a future enhancement; "Send report" only performs the in-scope submission behavior. | RC-111 | Ticket: "Note: we don't send PDF now, will implement later" | 🟡 Medium | TC-MA-029 |
Draft |
Column Guide¶
| Column | Description | Values / Format |
|---|---|---|
| AC ID | Unique scenario id — TCs trace back to this | AC-MA-NN |
| Rule ID | Unique business-rule id — TCs trace back to this | BR-MA-NN |
| Scenario | Short title of the behaviour, start with an action verb | Plain text |
| Jira | The ticket this AC came from | [RC-111](url) |
| Type | Class of scenario | Happy / Alternate / Negative / Edge / Permission |
| Criticality | Impact if this AC fails — drives the verifying TC's priority | 🔴 Critical / 🟠 High / 🟡 Medium / ⚪ Low |
| Given | Precondition / context true before the action | One state per clause; <br>And … to compound |
| When | The single action or event that triggers behaviour | One trigger |
| Then | Observable, verifiable outcome — pass/fail must be objective | Include error code / message / state where relevant |
| Linked TCs | TCs in 01_Features/accident/wa_my_accident/wa_my_accident_tc.md that verify this AC |
TC-MA-NNN, comma-separated |
| Status | Review state of the criterion | Draft / Reviewed / Approved |
Traceability¶
Jira ticket ──▶ AC-MA-NN / BR-MA-NN ──▶ TC-MA-NNN
(the why) (the what — this file) (the how to verify)
- Upward: header
SRS ref+ each row'sJiracolumn link the AC to its source. - Downward: the
Linked TCscolumn lists the test cases that verify each AC. - Coverage rule: every
CriticalandHighAC and every business rule must have ≥1 Linked TC. Flag any such AC with zero TCs as a coverage gap. Conversely, every TC must name theACit verifies — no orphan TCs.