Projects / Portfolio
SETB Electronic Test Bench Data Analysis System
EL2311 course project · C# WinForms
A test data management system for industrial electronics. Imports XML data in batches, detects faults and generates reports. Operators run daily tests; administrators can perform custom read-only queries.
- User roles
- 2
- Fault and warning rules
- 8
- SQL validation layers
- 2
- Attempts before lockout
- 5
- Font zoom levels
- 5
Why I built it
Manual recording and analysis do not scale well to batches of industrial electronic test data. This system covers import, parsing, storage, fault detection and reporting to reduce manual analysis work.
Role-based access
The application defines separate operator and administrator accounts and opens the appropriate interface after login. Five consecutive failed login attempts trigger a 30-second lockout. The lockout is saved locally and read at startup, so restarting the application does not bypass it.
Import and error handling
XML files are validated before import. Null-coalescing handles missing fields, preventing a missing node from crashing the full parser. Individual invalid records are skipped and counted without blocking the remaining data. Parsed records are batch-inserted into SQLite within a transaction for consistency and efficiency.
Fault diagnosis
A static configuration class centralises six fault rules and two warning rules. Read-only model properties encapsulate the checks, avoiding duplicated business logic. Threshold changes only require editing the configuration class.
Concurrent states and safe queries
The system handles transitions such as normal → high-temperature warning → simultaneous overheating and power failure → normal within one day, distinguishing faults from warnings on the timeline. Custom administrator SQL is checked twice: the interface blocks modification keywords such as DELETE, DROP and UPDATE, and the database layer validates the query again. Only read-only queries are permitted.
Architecture
The application separates presentation, services, data models and utilities. The core class diagram documents responsibilities and inheritance, composition and dependency relationships.
Core workflows
Sequence diagrams cover three core scenarios: login and authorisation, operator data import and report generation, and administrator read-only queries.
Additional details
A consistent dark theme is applied recursively across forms, detecting control types and styling them without individual configuration. Reports and data tables support five font zoom levels to improve accessibility.
Threshold rationale
Thresholds reflect the device’s physical characteristics: a safe voltage range of 3.0–5.5V; current faults above 2.0A; temperature warnings at 70–80°C and faults above 80°C; power warnings above 5.0W; a fault at 0% battery; and communication faults above a 0.15 error rate. These values reference common MCU logic levels and semiconductor junction-temperature limits.