281 lines
10 KiB
Markdown
281 lines
10 KiB
Markdown
# CentronNexus Screenshots to Use-Cases Mapping
|
|
|
|
**Generated**: 2025-11-23
|
|
**Status**: Initial capture complete
|
|
**Screenshots Captured**: 1 of 34 planned
|
|
|
|
---
|
|
|
|
## Overview
|
|
|
|
This document maps captured screenshots to CentronNexus use-cases, helping identify gaps in the existing documentation and new use-cases discovered through visual UI analysis.
|
|
|
|
---
|
|
|
|
## Captured Screenshots
|
|
|
|
### Screenshot 1: Authentication/Login Page
|
|
|
|
**File**: `01-Ticket-Liste.png` (Currently showing login page)
|
|
**Timestamp**: 2025-11-23_12-54-26
|
|
**Size**: 37 KB
|
|
|
|
#### What's Shown
|
|
The main login page for CentronNexus ServiceBoard:
|
|
- Application header: "ServiceBoard" with logo
|
|
- Tagline: "Ihr cleveres Ticketsystem" (Your smart ticket system)
|
|
- Two authentication options:
|
|
1. **Microsoft Sign-In**: "Anmelden mit Microsoft" button (OAuth/Azure AD)
|
|
2. **Username/Password**: Manual login with fields for:
|
|
- Benutzername (Username)
|
|
- Passwort (Password)
|
|
- "Anmelden" button (Sign In)
|
|
- "Setup Wizard" link for initial configuration
|
|
- Footer: Version 1.0.2601.301, Data Protection, Impressum, Copyright
|
|
|
|
#### Use-Case Analysis
|
|
|
|
**NEW USE-CASE DISCOVERED**: Authentication & Login Workflow
|
|
|
|
This screenshot reveals a previously undocumented use-case in the CentronNexus system. The existing documentation jumps directly to the Ticket-Liste (3.1) without documenting how users authenticate to the system.
|
|
|
|
**Use-Case Details**:
|
|
- **Title**: Authentication & User Login
|
|
- **Actor**: New or returning user
|
|
- **Primary Flow**:
|
|
1. User navigates to http://localhost:8050 (or production ServiceBoard URL)
|
|
2. System displays login page with two authentication methods
|
|
3. User chooses authentication method:
|
|
- Option A: Microsoft/Azure AD single sign-on
|
|
- Option B: Traditional username/password login
|
|
4. User provides credentials
|
|
5. System validates authentication
|
|
6. System redirects to dashboard/home page upon successful authentication
|
|
|
|
- **Alternative Flows**:
|
|
- Invalid credentials → System displays error message
|
|
- First-time setup → User clicks "Setup Wizard" to configure initial settings
|
|
- SSO failure → System falls back to manual login option
|
|
|
|
- **System Components Involved**:
|
|
- Authentication middleware (JWT/OAuth handling)
|
|
- Identity provider (Microsoft Entra ID / Azure AD)
|
|
- Session management
|
|
- User rights and permission initialization
|
|
- Dashboard/home page redirection logic
|
|
|
|
- **Security Considerations**:
|
|
- HTTPS required for production
|
|
- CSRF protection on login form
|
|
- Session timeout policies
|
|
- Multi-factor authentication (if configured)
|
|
- Account lockout after failed attempts
|
|
|
|
- **Technical Implementation**:
|
|
- **Framework**: ASP.NET Core 8 with Blazor Server
|
|
- **Authentication**: OAuth 2.0 (Microsoft Entra ID) + Forms-based auth
|
|
- **Session**: HttpContext/ClaimsIdentity based
|
|
- **API Calls**: Authentication endpoints in CentronWebService
|
|
- **Related Files**:
|
|
- `src/CentronNexus/Pages/Authentication/Login.razor`
|
|
- `src/CentronNexus/Program.cs` (Authentication configuration)
|
|
- `src/CentronNexus/Services/AuthenticationService.cs`
|
|
- `src/webservice/Centron.WebServices.Core/` (Authentication service layer)
|
|
|
|
#### Relationship to Documented Use-Cases
|
|
|
|
This login page is the **prerequisite** for all documented use-cases in the system:
|
|
- 3.1 Ticket-Liste (requires authentication)
|
|
- 3.2 Ticket öffnen (requires authentication)
|
|
- Dashboard (requires authentication)
|
|
- All other modules (require authentication)
|
|
|
|
#### Next Steps
|
|
|
|
To proceed beyond this login page and capture actual Ticket-Liste screenshots:
|
|
1. Automate authentication in Playwright script with valid credentials
|
|
2. OR provide credentials for manual testing
|
|
3. OR configure test user for automated testing
|
|
|
|
---
|
|
|
|
## Mapping Table: Screenshots ↔ Use-Cases
|
|
|
|
| Screenshot | File | Use-Case | Module | Documented | Status |
|
|
|-----------|------|----------|--------|-----------|--------|
|
|
| 01 | `01-Ticket-Liste.png` | Authentication & Login | System | ❌ NEW | ✅ Captured |
|
|
| 02 | (planned) | Ticket-Liste | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 03 | (planned) | Ticket öffnen | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 04 | (planned) | Ticket schließen | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 05 | (planned) | Ticket weiterleiten | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 06 | (planned) | Kanban-Board | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 07 | (planned) | Ticket-Checklisten | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 08 | (planned) | Ticket-Scripts | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 09 | (planned) | Ticket Web-Formulare | Ticketing | ✅ YES | ⏳ Pending |
|
|
| 10 | (planned) | Zeiterfassung | Time & Planning | ✅ YES | ⏳ Pending |
|
|
| 11 | (planned) | Stoppuhren | Time & Planning | ✅ YES | ⏳ Pending |
|
|
| 12 | (planned) | Scheduler | Time & Planning | ✅ YES | ⏳ Pending |
|
|
| 13 | (planned) | Ticket-Dokumente | Content & Documents | ✅ YES | ⏳ Pending |
|
|
| 14 | (planned) | Ticket-E-Mails | Content & Documents | ✅ YES | ⏳ Pending |
|
|
| 15 | (planned) | Ticket-Berichte | Content & Documents | ✅ YES | ⏳ Pending |
|
|
| 16 | (planned) | Dokumentenviewer | Content & Documents | ✅ YES | ⏳ Pending |
|
|
| 17 | (planned) | E-Mail-Versand | Content & Documents | ✅ YES | ⏳ Pending |
|
|
| 18 | (planned) | Dashboard | Dashboard & Overview | ✅ YES | ⏳ Pending |
|
|
| 19 | (planned) | Mein Tag | Dashboard & Overview | ✅ YES | ⏳ Pending |
|
|
| 20 | (planned) | Ticket-AI-Zusammenfassung | AI & Advanced | ✅ YES | ⏳ Pending |
|
|
| 21 | (planned) | AI-Assist | AI & Advanced | ✅ YES | ⏳ Pending |
|
|
| 22 | (planned) | Kundendaten | Customer Management | ✅ YES | ⏳ Pending |
|
|
| 23 | (planned) | Kundengeräte & Assets | Customer Management | ✅ YES | ⏳ Pending |
|
|
| 24 | (planned) | Kundendetails | Customer Management | ✅ YES | ⏳ Pending |
|
|
| 25 | (planned) | CRM Module | CRM | ❌ NEW | ⏳ Pending |
|
|
| 26 | (planned) | Customer Partner Relations | CRM | ❌ NEW | ⏳ Pending |
|
|
| 27 | (planned) | Customer Task Management | CRM | ❌ NEW | ⏳ Pending |
|
|
| 28 | (planned) | Master Data Items | Advanced | ❌ NEW | ⏳ Pending |
|
|
| 29 | (planned) | Geographic Map | Advanced | ❌ NEW | ⏳ Pending |
|
|
| 30 | (planned) | Global Search | Advanced | ❌ NEW | ⏳ Pending |
|
|
| 31 | (planned) | Password Manager | Security | ❌ NEW | ⏳ Pending |
|
|
| 32 | (planned) | Phone Call Management | Communication | ❌ NEW | ⏳ Pending |
|
|
| 33 | (planned) | Email Thread Management | Communication | ❌ NEW | ⏳ Pending |
|
|
| 34 | (planned) | Advanced Statistics | Analytics | ❌ NEW | ⏳ Pending |
|
|
|
|
---
|
|
|
|
## New Use-Cases Identified
|
|
|
|
### 1. Authentication & User Login (NEW)
|
|
|
|
**Classification**: System / Security
|
|
**Priority**: P0 (Critical - Required for all other use-cases)
|
|
**Complexity**: Medium
|
|
**User Roles**: All users
|
|
|
|
**Description**:
|
|
The ServiceBoard login workflow allowing users to authenticate via Microsoft Entra ID (Azure AD) or traditional username/password credentials.
|
|
|
|
**Key Features**:
|
|
- Microsoft/Azure AD integration for enterprise SSO
|
|
- Traditional username/password authentication
|
|
- Session management and token-based auth
|
|
- Setup wizard for initial configuration
|
|
- Error handling for authentication failures
|
|
|
|
**Business Value**:
|
|
- Essential security layer for multi-tenant SaaS application
|
|
- Enterprise integration via SSO reduces password management
|
|
- Initial configuration guidance improves onboarding
|
|
|
|
---
|
|
|
|
## Updates Needed in Existing Documentation
|
|
|
|
### Files to Update
|
|
|
|
1. **USE_CASES_CENTRON_NEXUS.md**
|
|
- Add section 2.0: "Authentication & System Setup"
|
|
- Insert before section 3.1 Ticket-Liste
|
|
- Content: New authentication use-case details
|
|
|
|
2. **DISCOVERED_USECASES_CENTRON_NEXUS.md**
|
|
- Add Group E: System & Security (new group)
|
|
- E.1: Authentication & User Login
|
|
- E.2: Session Management & Timeouts
|
|
- E.3: User Rights & Permission Management
|
|
|
|
3. **SCREENSHOT_MAPPING_COMPLETE.md**
|
|
- Add system authentication mapping section
|
|
- Update prerequisites for all 34 modules
|
|
- Document authentication as first step
|
|
|
|
---
|
|
|
|
## Issues & Blockers
|
|
|
|
### Current Blocker: Authentication Required
|
|
|
|
**Issue**: To capture screenshots of actual feature modules (Ticket-Liste, Dashboard, etc.), the Playwright script needs to authenticate first.
|
|
|
|
**Options to Resolve**:
|
|
1. **Add credentials to script** (Test user):
|
|
- Update Playwright script with test user credentials
|
|
- Auto-login before navigating to each module
|
|
- Recommended for automated testing
|
|
|
|
2. **Manual authentication**:
|
|
- User logs in manually
|
|
- Playwright runs after authentication
|
|
- Requires manual user interaction
|
|
|
|
3. **Mock authentication** (if test environment supports):
|
|
- Configure test server to skip authentication
|
|
- Or provide bearer token for API calls
|
|
- Fastest for development
|
|
|
|
**Recommendation**: Option 1 - Add test user credentials to Playwright script for full automation
|
|
|
|
---
|
|
|
|
## Implementation Progress
|
|
|
|
```
|
|
[████░░░░░░░░░░░░░░░░░░░░░░░░░░░░] 13% Complete
|
|
|
|
✅ Screenshot 01/34: Authentication Page (NEW use-case discovered)
|
|
⏳ Screenshots 02-34: Pending (requires authenticated access)
|
|
|
|
Blocking Issue: Authentication required for further screenshots
|
|
```
|
|
|
|
---
|
|
|
|
## Next Actions
|
|
|
|
### Immediate
|
|
1. ✅ Review login page screenshot (completed)
|
|
2. ✅ Document authentication use-case (completed)
|
|
3. ⏳ **Update Playwright script to auto-authenticate**
|
|
4. ⏳ Capture remaining 33 screenshots (authenticated)
|
|
|
|
### Short-term
|
|
1. Create new authentication documentation section
|
|
2. Add to DISCOVERED_USECASES file
|
|
3. Update SCREENSHOT_MAPPING with authentication flow
|
|
|
|
### Medium-term
|
|
1. Complete all 34 screenshot captures
|
|
2. Detailed analysis of UI for additional use-cases
|
|
3. Integration with CI/CD pipeline for automated captures
|
|
|
|
---
|
|
|
|
## Technical Notes
|
|
|
|
### CentronNexus Architecture
|
|
- **Frontend**: Blazor Server (ASP.NET Core 8)
|
|
- **Backend**: REST API on port 1234 (CentronWebService)
|
|
- **Port**: 8050 (default development)
|
|
- **Authentication**: OAuth 2.0 (Microsoft) + Forms-based
|
|
- **Session**: JWT tokens + HttpContext
|
|
|
|
### Playwright Configuration
|
|
- **Browser**: Chromium (v1.56.0)
|
|
- **Mode**: Non-headless (visible window)
|
|
- **Timeout**: 30 seconds per navigation
|
|
- **Screenshot Format**: PNG, full-page
|
|
- **Storage**: Timestamped directories under Screenshots/
|
|
|
|
---
|
|
|
|
## Related Files
|
|
|
|
- Main mapping: `SCREENSHOT_MAPPING_COMPLETE.md`
|
|
- New use-cases: `DISCOVERED_USECASES_CENTRON_NEXUS.md`
|
|
- Original docs: `USE_CASES_CENTRON_NEXUS.md`
|
|
- Automation script: `tests/CentronNexus.Tests.Playwright/CentronNexus.Tests.Playwright/Program.cs`
|
|
- Analysis summary: `ANALYSIS_SUMMARY.md`
|
|
|
|
---
|
|
|
|
**Status**: ⏳ In Progress
|
|
**Last Updated**: 2025-11-23
|
|
**Next Review**: After resolving authentication blocker
|