Glossary
Service test: A small extension to the test runner which tests a specific network service. Bucket: A separate program which receives test results.
Framework Requirements
Functional Requirements
- The system should be easily extensible.
- The system should be easily configurable.
- The system should allow the user to define specific network services which the system should monitor.
- The system should allow the user to define service tests for the monitored services.
- The system should be able to monitor multiple services on multiple servers.
- The system should allow buckets to subscribe to test results.
- The system should send test results to the subscribed buckets.
- The test results should follow a pre-defined format.
Quality Requirements
- The system should be able to dynamically add new service tests to the system, without having to be restarted.
- The system should be able to use an updated configuration without having to be restarted.
- The system should be a distributed service, such that parts of the system can run on different machines.
- The system should use a protocol to communicate between the parts of the system.
- The system should continue to run even if a service test causes exceptions or fails, when running a test.
Future Improvements
These requirements depend on technological advances in third-party software.
- The system should optionally filter test results before sending them to the subscribed buckets.
- The system should preserve test results if the connection to a subscribed bucket suddenly fails.
- The system may preserve a maximum amount of test results.
Service Test Requirements
Functional Requirements
- The service test should be able to interact with services to verify they are working correctly.
- The results of the service test should follow the pre-defined format for test results.
- The results of a service test should be discernible from the results of a different service test.
Bucket Requirements
- The bucket should subscribe to the Kinti Framework when it wants to receive test results.
- The bucket should unsubscribe from the Framework when it wants to stop receiving test results.
Future Improvements
These requirements depend on technological advances in third-party software.
- The bucket may provide a test result filter to be run by the Framework.