Use Case & User Stories: Admin: User Listing & Search¶
| Use Case ID: | UC-05 |
| Use Case Name: | Find and View System Users |
| Feature: | Admin: User Listing & Search |
| Actors: | System Administrator (Primary) |
1. Use Case Description¶
This use case describes how a System Administrator uses the central "User Management" interface to view, search, and filter the list of all users in the application. This functionality is the primary entry point for all user administration tasks, enabling administrators to efficiently locate specific user accounts for support, auditing, or management purposes. Access to this feature is restricted to authorized administrators only.
2. User Stories¶
-
US-17: View a List of All Users > As a System Administrator, > I want to see a clear, paginated list of all users sorted alphabetically, > so that I can get a comprehensive overview of the user base and navigate it efficiently.
-
US-18: Search for a Specific User > As a System Administrator, > I want to perform a case-insensitive search for a user by their name or email address, > so that I can quickly find a specific user's account to assist them or manage their profile.
-
US-19: Filter Users by Status > As a System Administrator, > I want to filter the user list to show only "Active" or "Inactive" users, > so that I can easily audit accounts, for example, to review all recently deactivated employees.
-
US-20: Filter Users by Group Membership > As a System Administrator, > I want to filter the user list by a specific group, > so that I can see all the members of a particular team, like the "Marketing Department".
-
US-21: Restricted Access to User List > As an IT Security Officer, > I want the User Listing page to be accessible only to users with the
user:view:listpermission, > so that sensitive user information is protected from unauthorized employees.
3. Preconditions¶
- The user is an administrator who has successfully authenticated (UC-01).
- The user's effective permissions (UC-04) include the
user:view:listpermission.
4. Postconditions¶
- The system displays a list of users matching the administrator's search and filter criteria.
- The administrator can navigate through pages of results if the list is long.
5. Main Success Scenario (Happy Path)¶
| Step | User Action | System Response |
|---|---|---|
| 1 | Navigates to the "User Management" section. | The system validates that the user has the user:view:list permission. |
| 2 | The page loads and displays a table with the first 25 users, sorted alphabetically by last name. | |
| 3 | The table displays columns for "Full Name," "Email Address," "Status," and "Groups" for each user. | |
| 4 | Pagination controls ("Next," "Previous," page numbers) are visible at the bottom of the list. |
6. Alternative & Exception Flows¶
-
Scenario A: Admin Searches for a User
- 2a. Admin types "Carol" into the search bar and presses Enter.
- System Response: The user list refreshes to show only users whose name or email contains the string "Carol". The search is case-insensitive.
-
Scenario B: Admin Filters the User List
- 2a. Admin selects "Inactive" from the "Status" filter dropdown.
- System Response: The user list refreshes to show only users with an "Inactive" status.
- 2b. While the "Inactive" filter is active, the admin selects "Marketing Department" from the "Group" filter dropdown.
- System Response: The user list updates again to show users that meet both criteria: they are in the "Marketing Department" group AND have an "Inactive" status.
-
Exception Flow: Unauthorized Access Attempt
- 1a. A non-administrative user (without
user:view:listpermission) obtains the direct URL for the User Management page and tries to navigate to it. - System Response: The system checks the user's permissions, finds
user:view:listis missing, and immediately redirects the user to the "Access Denied" page.
- 1a. A non-administrative user (without