💧 Borehole Water Management
and Billing System

Software Requirements Specification (SRS)

📍 Site Location: Moyale

👤 Prepared For: Aila

✍️ Prepared By: Mark Soko (Software Engineer)

📅 Date: 27 March 2026  |  Version: 1.0

1. Introduction

This Software Requirements Specification (SRS) document provides a comprehensive description of the Borehole Water Management and Billing System, a purpose-built solution intended for deployment in Moyale. The system is designed to automate and streamline the critical operational workflows associated with borehole water sales, including billing, payment processing, financial reconciliation, expense management, and comprehensive reporting. The primary objective of this engagement is to replace manual or fragmented processes with a unified, transparent, and accountable digital platform that enhances operational efficiency and ensures rigorous financial oversight.

↑ Back to top

2. System Overview

The Borehole Water Management and Billing System is architected as a capacity-based billing platform. In this model, customer invoices are generated based on the registered capacity of the water truck utilized for each transaction. Meter readings captured at the borehole source serve a dual purpose: they function as a primary consumption record for operational verification and provide a critical mechanism for identifying and resolving load discrepancies between the invoiced capacity and the actual volume of water dispensed. This architecture ensures financial accuracy, deters revenue leakage, and provides a robust framework for managing the unique operational dynamics of water distribution in the Moyale region.

↑ Back to top

3. User Roles & Permissions

The system implements a role-based access control (RBAC) model to ensure that users are granted only the permissions necessary to perform their designated functions. The defined roles are as follows:

↑ Back to top

4. Functional Requirements

The system shall deliver the following functional capabilities to support the complete operational lifecycle:

↑ Back to top

5. Dashboard

Upon authentication, users shall be presented with a role-specific dashboard that consolidates key performance indicators and operational metrics into a single, at-a-glance interface. The dashboard shall display, at a minimum:

↑ Back to top

6. Audit Log

The system shall maintain an immutable and time-stamped audit log of all user activities. This log is a foundational element for accountability and forensic analysis. For every significant action, the audit log shall record:

↑ Back to top

7. Alerts & Notifications

The system shall incorporate a proactive alerting mechanism to notify designated users of predefined events that require attention. These alerts shall be surfaced on the dashboard and may be configured for delivery via SMS in low-connectivity scenarios. Alert triggers shall include:

↑ Back to top

8. Reporting

The system shall feature a robust reporting engine that enables users to generate, export, and print structured reports for operational and financial analysis. Required report types include:

↑ Back to top

9. Non-Functional Requirements

The system's operational effectiveness is governed by the following non-functional requirements:

↑ Back to top

10. System Flow

The operational logic of the system follows the defined sequence below, ensuring a consistent and auditable process from water dispensing to financial reporting:

  1. Meter Reading: Operator records the starting and ending meter readings for a water dispensing event.
  2. Transaction Calculation: System calculates the actual volume dispensed and applies billing logic based on registered truck capacity.
  3. Transaction Recording: System creates the transaction record, including any applied discounts or discrepancy flags.
  4. Payment Recording: Manager records the customer's payment (cash or M-Pesa) and reconciles it against the open transaction.
  5. Expense Recording: Manager records any associated operational expenses incurred.
  6. Remittance: Manager initiates a cash remittance transfer to Admin, which is tracked and confirmed within the system.
  7. Reporting: Data from all preceding steps is aggregated to populate dashboards and generate analytical reports.
↑ Back to top

11. Constraints

The development and operation of the system are subject to the following constraints:

↑ Back to top

12. Sample Data Fields

The following table provides illustrative examples of key data fields that will be captured within the system's primary entities. This list is not exhaustive but serves to clarify the required data model.

EntityField Examples
TransactionTransaction ID, Date/Time, Customer Name, Truck Registration, Registered Capacity (m³), Units (Jerricans), Start Meter Reading, End Meter Reading, Actual Volume Dispensed, Invoice Amount, Discount Applied, Net Amount, Payment Status, Payment Method, Operator Name, Remarks
PaymentPayment ID, Transaction ID, Date, Amount Paid, Payment Method (Cash/M-Pesa), M-Pesa Confirmation Code (if applicable), Received By
ExpenseExpense ID, Date, Category (e.g., Fuel, Maintenance), Amount, Description, Recorded By
CustomerCustomer ID, Name, Contact Information, Account Balance, Credit Limit, Default Status
VehicleVehicle ID, Registration Number, Registered Capacity (m³), Type
RemittanceRemittance ID, Initiation Date, Amount, Manager Initiator, Admin Confirmation Status, Confirmation Date
↑ Back to top

13. Pricing Structure

The following pricing structure outlines the total investment required for the development and deployment of the Borehole Water Management and Billing System. Two delivery options are available to accommodate varying operational urgency and budget considerations.

Delivery OptionDurationTotal Price (KES)Description
Option A: Tight Delivery1 Month39,000 KESAn accelerated development schedule suitable for scenarios requiring rapid deployment. This option prioritizes core feature delivery with compressed testing cycles. Recommended for immediate operational needs where time-to-value is the primary driver.
Option B: Eased Delivery2 Months33,000 KESA standard development schedule incorporating comprehensive testing, iterative feedback cycles, thorough documentation, and dedicated buffer periods for quality assurance. Recommended for production-ready deployments where reliability and long-term maintainability are prioritized.

Payment Terms (60% Deposit)

MilestonePercentageAmount (KES)Trigger
Deposit / Project Initiation60%19,800 - 23,400*Upon signing of the agreement and project kickoff
Milestone 1: Core Development Completion20%6,600 - 7,800*Upon completion of Phase 2 (Backend Development) and successful demonstration
Final Payment / Deployment20%6,600 - 7,800*Upon successful User Acceptance Testing (UAT) and production deployment
*Final amounts vary based on selected delivery option:
- Option A (1 Month): Total 39,000 KES → Deposit (60%): 23,400 KES | Milestone 1: 7,800 KES | Final: 7,800 KES
- Option B (2 Months): Total 33,000 KES → Deposit (60%): 19,800 KES | Milestone 1: 6,600 KES | Final: 6,600 KES

✅ Inclusions

  • Full software development as per the requirements outlined in this SRS document.
  • Database design and implementation.
  • Responsive web-based user interface.
  • Role-based access control (Admin, Manager, Operator).
  • Offline-capability implementation for low-connectivity environments.
  • Deployment to production environment.
  • User training and knowledge transfer session.
  • Comprehensive technical documentation.
  • One month of post-deployment support (bug fixes and minor adjustments).

🚫 Exclusions

  • Hosting infrastructure costs (cloud server, domain registration, or local server hardware).
  • Internet connectivity or networking equipment at the deployment site.
  • Third-party software licenses not explicitly listed as part of the technology stack.
  • Ongoing maintenance beyond the one-month post-deployment support period (a separate maintenance agreement can be arranged).
  • SMS gateway costs for alert delivery (pay-per-use or subscription fees apply if SMS functionality is activated).
↑ Back to top

14. Conclusion

This Software Requirements Specification outlines a comprehensive solution for the Borehole Water Management and Billing System. By automating key operational and financial workflows, implementing rigorous accountability through audit logging, and providing real-time visibility into performance metrics, the proposed system directly addresses the need for improved transparency, operational efficiency, and financial control in borehole water management. This document serves as the definitive agreement on the system's requirements and provides the foundation for the subsequent design, development, and implementation phases.

Upon your selection of the preferred delivery timeline and approval of this specification, development will commence in accordance with the agreed schedule.

↑ Back to top

📊 Project Timeline A: Tight Duration (1 Month) – 39,000 KES

The following Gantt chart outlines an aggressive four-week delivery schedule. This timeline requires focused daily execution, parallelized work streams, and minimal revision cycles.

Task IDTask NameWeek 1Week 2Week 3Week 4
Phase 1: Planning & Setup
1.1Requirements Finalization
1.2Database Schema Design██
1.3Environment & Repo Setup
Phase 2: Backend Development
2.1Authentication & RBAC██
2.2Meter & Transaction Engine███
2.3Billing & Discrepancy Logic██
2.4Payment & Expense Modules██
2.5Remittance Tracking
Phase 3: Frontend Development
3.1Dashboard UI██
3.2Transaction & Payment Interfaces███
3.3Reporting Module██
3.4Audit Log & Alerts UI
Phase 4: Integration & QA
4.1Offline-Capability Implementation██
4.2System Integration Testing██
4.3Bug Fixing & Stabilization██
Phase 5: Deployment
5.1User Acceptance Testing (UAT)
5.2Production Deployment
5.3Knowledge Transfer & Handover

Total Duration: 23 Days (Approximately 1 Month)
Total Price: 39,000 KES (Deposit 60%: 23,400 KES)

↑ Back to top

📅 Project Timeline B: Eased Duration (2 Months) – 33,000 KES

The following Gantt chart outlines a standard eight-week delivery schedule. This timeline incorporates dedicated buffer periods for each phase, allowing for thorough testing, iterative feedback cycles, and comprehensive documentation.

Task IDTask NameWeek 1-2Week 3-4Week 5-6Week 7-8
Phase 1: Planning & Setup
1.1-1.4Requirements, Architecture, Database, Environment████
Phase 2: Backend Development
2.1-2.5Auth, Transaction Engine, Billing, Payments, Remittance████████
Phase 3: Frontend Development
3.1-3.4Dashboard, Interfaces, Reports, Audit UI██████
Phase 4: Offline & Integration
4.1-4.3Offline Capability, Integration Testing, Optimization████
Phase 5: Quality Assurance
5.1-5.3Functional Testing, Bug Fixing, UAT████
Phase 6: Deployment
6.1-6.3Production Deployment, Documentation, Handover██

Total Duration: 56 Days (Approximately 2 Months)
Total Price: 33,000 KES (Deposit 60%: 19,800 KES)

↑ Back to top

⚖️ Timeline & Pricing Comparison Summary

ParameterOption A (Tight)Option B (Eased)
Total Duration23 Days (4 Weeks)56 Days (8 Weeks)
Total Price (KES)39,000 KES33,000 KES
Deposit (60%)23,400 KES19,800 KES
Development ApproachParallelized, rapid iterationSequential, phased delivery
Testing WindowCompressed (2 days integration + 1 day UAT)Extended (4 days integration + 4 days functional + 3 days UAT)
Buffer/ContingencyMinimal to noneBuilt into each phase
DocumentationBasic, post-deploymentComprehensive, concurrent with development
Best Suited ForImmediate operational need, MVP deploymentProduction-ready system with full quality assurance

🎯 Recommendation: For a system handling financial transactions, user accountability, and operational continuity in a low-connectivity environment, the Eased Duration (2 Months) – 33,000 KES option is strongly recommended. The additional time allocated to testing, offline capability implementation, and documentation significantly reduces deployment risk and ensures the system's reliability and maintainability over the long term. The reduced price point for this option reflects the efficiency gains from a structured, non-accelerated development schedule.