ByRole
This is a much better way to look at it. To build a robust ecosystem like Justdial (which also includes delivery/fulfillment elements like Porter or Dunzo), we must map the technical tasks to the Business Personas who will actually use the software.
1. Persona: The Consumer (End User)
2. Persona: The Provider Admin (Business Owner)
3. Persona: The Provider Manager
4. Persona: The Field Employee (Technician/Service Staff)
5. Persona: The Porter / Courier Boy
6. Persona: The Platform Super-Admin (You)
Summary of Responsibilities for the Technical Team:
Business Analyst (BA): You are the Architect of Logic. You define the "Rules of the Game"—who gets paid what, how rankings work, and how a lead moves through the system. Frontend Developer (FE): You are the Architect of Experience. You build 4 different "Views": The App (Consumer), The Dashboard (Provider), The Task Tool (Employee), and the Control Center (Admin). Backend Developer (BE): You are the Architect of Connectivity. You build the APIs, integrate the payment gateways, handle the notifications (SMS/Push), and manage real-time tracking. Database Developer (DB): You are the Architect of Data. You ensure the system is fast, handles location-based data (GIS), and keeps financial records (Wallet/Transactions) safe and accurate. ------ sequenceDiagram
autonumber
actor C as Consumer
participant P as Platform System
participant PA as Provider Admin
participant PM as Provider Manager
participant FE as Field Employee/Porter
Note over C, P: Phase 1: Discovery & Lead Generation
C->>P: Search for Service (e.g., "Plumber near me")
P->>P: Filter by Location & Rank (Ad Tier + Rating)
P-->>C: Display List of Verified Providers
C->>P: Click "Get Quote / Book Now"
Note over P, PA: Phase 2: Lead Distribution
P->>P: Check Provider Credit Balance
alt has sufficient credits
P->>P: Deduct Lead Credits
P->>PA: Send Lead Notification (Push/SMS)
P-->>C: Confirmation: "Provider notified"
else low credits
P->>PA: Alert: "Low balance - top up to receive leads"
end
Note over PA, FE: Phase 3: Resource Management
PA->>PM: Forward Lead for Assignment
PM->>PM: Check Staff Availability & Proximity
PM->>FE: Assign Task via Mobile App
FE->>P: Accept Task
Note over FE, C: Phase 4: Fulfillment & OTP Verification
FE->>C: Arrive at Location (GPS Tracking)
C->>FE: Provide Start-of-Service OTP
FE->>P: Validate OTP & Mark "Work Started"
Note over FE, P: Phase 5: Completion & Feedback
FE->>FE: Complete Service / Delivery
FE->>P: Upload Proof (Photo/Signature) & Mark "Completed"
P->>C: Request Payment & Review
C->>P: Process Payment (Gateway)
P->>PA: Update Wallet (Settle Funds)
C->>P: Submit 5-Star Rating & Review
P->>P: Recalculate Provider Reputation Score
Key Logic Steps in the Sequence:
Search & Ranking (Step 2): The Platform doesn't just show a list; it performs a real-time calculation based on the Consumer's GPS and the Provider's "Ad Tier" (Business Analyst logic). Lead Credit Deduction (Step 5): This is the Justdial monetization model. The Provider Admin is charged a "fee" the moment the lead is delivered, regardless of whether they close the deal. Task Assignment (Step 10): The Provider Manager acts as the dispatcher, ensuring the Field Employee or Porter is not double-booked. OTP Verification (Step 13-14): This is a critical trust-building step. It prevents the provider from claiming they finished a job they never started. Reputation Loop (Step 20): The final step closes the loop. The Consumer's feedback directly impacts the Provider's future visibility in Step 2, incentivizing good service.
To build a high-scale service portal, the flow must handle the complexity of Real-time Availability and Monetization.
Below is the Functional Flow Diagram followed by the Core Business Logic that the BA, BE, and DB teams must implement. 1. Functional Flow Diagram (Business Operations) This diagram represents the "Life of a Service Request" across all personas. 2. Key Business Logic (The "Brain" of the Portal) These are the specific rules your Business Analyst must define, your Backend Developer must code, and your Database Developer must optimize. A. Ranking & Discovery Logic (The Justdial Secret Sauce) How does the system decide who appears at the top? Weighted Rank Score: Score = (Ad_Tier_Weight * 0.40) + (Average_Rating * 0.30) + (Distance_Penalty * 0.20) + (Response_Time_Factor * 0.10)
Logic: A provider who pays for "Platinum" status stays on top, but if their rating falls below 3.0, the Response_Time_Factor penalizes them to protect user experience.
B. Lead Distribution & Monetization Logic Pay-per-Lead Model: When a consumer clicks "Contact," the system identifies the top 5 matching providers. The "Credit Check": Before sending the lead, the BE checks the Provider_Wallet. If Balance < Lead_Cost, the provider is skipped, and the next provider in the rank is chosen. Lead Exclusivity: A lead can be "Exclusive" (sold to 1 provider at a high price) or "Shared" (sold to 3-5 providers at a lower price).
C. Smart Assignment Logic (Manager to Staff) Geofencing: A Porter or Field Staff is only eligible for a task if their last known GPS ping is within X kilometers of the consumer. Load Balancing: The system prevents a Manager from assigning a task to a Staff member who already has N active "In-Progress" tasks.
D. Trust & Safety Logic (OTP & Proof) The "Two-Factor" Service: Start OTP: Consumer gives a code to the Staff to prove the staff arrived. End Proof: Staff must upload a "Completion Photo" or the Consumer must provide a "Closing OTP" to trigger the payment release.
Fraud Detection: If a Staff member marks a task as "Complete" but the GPS coordinates are not within 100 meters of the Consumer’s home, the system flags it for Super Admin review.
E. Financial Settlement Logic Escrow System: Payment is collected from the Consumer upfront but held by the Platform. Payout Calculation: Provider_Payout = Service_Fee - (Platform_Commission % + Tax).
Settlement Cycle: Funds move from Escrow to the Provider Admin's bank account only after the "Dispute Window" (e.g., 24 hours) expires.
3. Persona-Specific Technical Focus
Comments
Post a Comment