Requirement |
Description |
Basic Matrix Operations |
The library shall implement basic functions for matrix, such as addition, subtraction, multiplication and scalar multiplication. |
Advanced Matrix Operations |
The library shall provide advanced functions for matrix, such as calculating the determinant of a matrix or transposition. |
Matrix Validation and Checking Class |
The library shall include functions to check the compatibility of matrices for operations and multiple checks to determine the kind of matrix. |
File Operations Class |
The library shall provide functions to save matrices to a file and to load matrix file. |
Error Reporting |
The library shall provide clear error messages for failed operations, such as dimension mismatches or attempts to invert a singular matrix. |
Software Documentation |
The library shall include comprehensive software documentation with examples for each function. |
Requirement |
Description |
Programming Language |
The application shall be written in C++. |
Code Quality |
The library shall adhere to industry-standard coding practices, including proper indentation, naming conventions, and use of comments for clarity. |
Error Handling |
The library shall include robust error handling mechanisms to manage exceptions and unexpected inputs without crashing. |
Modular Design |
The library shall be developed with a modular design, allowing individual components to be updated or replaced without affecting the entire system. |
Testing Framework |
The library shall include a comprehensive test suite using a testing framework. |
Version Control |
The library shall be maintained using the Git version control system to track changes and manage versions. |