System use case specification maintain financial transactions - ESG-Project/documentation GitHub Wiki
← Home / Requirements / System Use Cases / System Use Cases Specification
| Identification | UC18 |
| Use case | Maintain financial transactions |
| Actors | Finance Manager |
| Stakeholders and interests | Consulting company: Ability to record and manage financial transactions such as receivables, received payments, and expenses. |
| Pre-conditions | User is logged into the system as a finance manager; System has access to relevant financial data storage. |
| Minimum guarantees | System prevents invalid financial entries. |
| Success guarantees | User successfully manages financial transactions in the system. |
Main Success Scenario
| User Action | System Response |
|---|---|
| 1. This use case begins when the user navigates to the financial transactions management section | 2. The system displays a list of current financial transactions |
| 3. The user selects to create a new financial transaction | 4. The system displays the transaction registration form |
| 5. The user enters the financial transaction details (amount, date, type of transaction) | 6. The system validates the input |
| 7. The user saves the transaction | 8. The system validates all information and saves the transaction details in the database |
| 9. The system confirms the transaction has been saved successfully |
Alternative Flows
3a Edit transaction
| User Action | System Response |
|---|---|
| 1. The user selects to edit an existing transaction | 2. The system displays the transaction information in an editable form |
| 3. The user modifies the transaction details | 4. The system validates the changes |
| 5. The user saves the changes | 6. The system validates all information and updates the transaction data |
| 7. The system confirms the successful update of the transaction |
3b Delete transaction
| User Action | System Response |
|---|---|
| 1. The user selects to delete a transaction | 2. The system displays a confirmation dialog |
| 3. The user confirms the deletion | 4. The system verifies if the transaction can be deleted |
| 5. The system removes the transaction data | |
| 6. The system confirms the successful deletion of the transaction |
3b.4a Transaction cannot be deleted
| User Action | System Response |
|---|---|
| 1. The system detects that the transaction has associated records (receipts, invoices) | |
| 2. The system displays an error message explaining why the transaction cannot be deleted | |
| 3. The system returns to the transactions list |
3c User cancels the action
| User Action | System Response |
|---|---|
| 1. The user cancels the action | 2. The system returns to the transactions list without making any changes |
5a Invalid financial transaction details
| User Action | System Response |
|---|---|
| 1. The system detects invalid or missing information | |
| 2. The system displays an error message to the user | |
| 3. The user corrects the information and resubmits | 4. The system validates the corrected information and returns to step 6 of the Main Success Scenario |
Special Requirements
- Transaction Types: The system must support different types of transactions (receivables, received payments, expenses).
- Data Validation: All financial transaction details must be validated according to business rules.
- Access Control: Only finance managers can modify financial transaction information.
- Audit Trail: The system must maintain a detailed history of all changes made to financial records.
- Soft Delete: When a transaction is deleted, its information should be archived rather than permanently removed.
- Search Functionality: The system must provide advanced search and filter capabilities for the transactions list.
- Status Management: The system must support different transaction statuses (Pending, Completed, Cancelled).
- Tax Calculation: The system must automatically calculate applicable taxes based on transaction type.
- Receipt Generation: The system must support generating receipts for transactions.
- Invoice Integration: The system must integrate with invoice management.
- Bank Reconciliation: The system must support bank statement reconciliation.
- Budget Tracking: The system must track transactions against budget allocations.
- Payment Methods: The system must support various payment methods (cash, bank transfer, credit card).
- Document Management: The system must support attaching and managing related financial documents.
- Notification System: The system must notify relevant users about important financial transactions.