IQ-001: Installation Qualification
| Property |
Value |
| ID |
IQ-001 |
| Version |
1.0 |
| Verifies Against |
DS-001, DS-002 |
| Status |
Draft |
| Author |
|
| Approved By |
|
| Date |
|
Purpose
Verify that the Essert.MF standard product is installed correctly, all infrastructure components are operational, and the system is ready for operational qualification.
IQ Test Items
IQ-001.1: Solution Build
| Property |
Value |
| Objective |
Verify that the solution compiles without errors |
| Command |
dotnet build Essert.MF.sln |
| Pass Criteria |
Build succeeds with 0 errors |
| DS Reference |
DS-001 (Architecture) |
IQ-001.2: Database Connectivity
| Property |
Value |
| Objective |
Verify connectivity to all 8 databases |
| Command |
dotnet test --filter "FullyQualifiedName~Persistence.DbContext" |
| Pass Criteria |
All DbContext tests pass (7 contexts) |
| DS Reference |
DS-002 (Data Model) |
Databases verified:
| Database |
DbContext |
Expected |
| db_process |
ProcessDataDbContext |
Connected |
| db_statistics |
StatisticsDbContext |
Connected |
| db_changelogs |
ChangelogsDbContext |
Connected |
| db_essert |
EssertDbContext |
Connected |
| db_productparameter |
ProductParameterDbContext |
Connected |
| db_robots |
RobotsDbContext |
Connected |
| db_wpc |
WpcDbContext |
Connected |
IQ-001.3: Schema Alignment
| Property |
Value |
| Objective |
Verify EF entity configurations match actual database schemas |
| Command |
cd Essert.MF.SchemaAnalyzerTool && dotnet run (Option 3: Comparison Report) |
| Pass Criteria |
0 schema mismatches across all 123+ tables |
| DS Reference |
DS-002 (Data Model) |
IQ-001.4: REST API Startup
| Property |
Value |
| Objective |
Verify REST API starts and responds to health check |
| Command |
dotnet test --filter "FullyQualifiedName~HealthCheck" (in API.Rest.Tests) |
| Pass Criteria |
Health check endpoint returns 200 OK |
| DS Reference |
DS-001 (Architecture) |
IQ-001.5: OPC UA Server Startup
| Property |
Value |
| Objective |
Verify OPC UA server starts and accepts connections |
| Command |
dotnet test --filter "FullyQualifiedName~ServerLifecycle" (in API.OpcUa.Tests) |
| Pass Criteria |
Server starts on configured port, accepts client connection |
| DS Reference |
DS-001 (Architecture) |
IQ-001.6: GraphQL API Startup
| Property |
Value |
| Objective |
Verify GraphQL API starts and serves schema |
| Command |
dotnet test --filter "FullyQualifiedName~GraphQL" (in API.GraphQL.Tests) |
| Pass Criteria |
GraphQL endpoint responds, schema introspection succeeds |
| DS Reference |
DS-001 (Architecture) |
IQ-001.7: .NET Runtime Version
| Property |
Value |
| Objective |
Verify correct .NET runtime is installed |
| Command |
dotnet --version |
| Pass Criteria |
.NET 8.0 or .NET 9.0 |
| DS Reference |
DS-001 (TC-01 in arc42/02) |
IQ-001.8: Unified Host Service Installation
| Property |
Value |
| Objective |
Verify Essert.MF.Host installs as a Windows Service and all APIs respond |
| Command |
deploy\install.ps1 (as Administrator) |
| Pass Criteria |
Service created with auto-start, health check at http://localhost:5000/health returns 200 OK, REST (/api/v1/), GraphQL (/graphql), and OPC UA (opc.tcp://localhost:4840) endpoints respond |
| DS Reference |
DS-001 (Unified Host Deployment / FEAT-007) |
IQ Summary
| Item |
Description |
Pass Criteria |
Result |
| IQ-001.1 |
Solution build |
0 errors |
|
| IQ-001.2 |
Database connectivity |
8/8 databases connected |
|
| IQ-001.3 |
Schema alignment |
0 mismatches |
|
| IQ-001.4 |
REST API startup |
Health check 200 OK |
|
| IQ-001.5 |
OPC UA startup |
Server accepts connections |
|
| IQ-001.6 |
GraphQL startup |
Schema introspection succeeds |
|
| IQ-001.7 |
.NET runtime |
8.0 or 9.0 |
|
| IQ-001.8 |
Unified host service |
Service running, all APIs respond |
|