Requirements
=
ShareThrift Project Charter
Project Overview
Opportunity: With the rise of peer-to-peer lending services (e.g., Turo, Airbnb, Swimply), there is a need for a generic, secure, and trusted platform to facilitate the lending and borrowing of various goods and services.
Goal: Develop ShareThrift, a web-based platform to connect individuals and organizations for lending and borrowing items, similar to Craigslist or Facebook Marketplace for lending. This is a sample project to explore technologies, not necessarily the foundation for a commercial company.
Business Case
- User Growth: Target 100 users in the first month post-launch, with a 20% month-over-month growth rate.
- Market Positioning: Position ShareThrift as an up-and-coming alternative to existing sharing services.
- Financial Sustainability: Operate within $150/month MSDN Azure credit budget, ensuring costs for Azure and Marketplace services do not exceed this limit.
- Revenue Model: No charges for borrowing items; revenue from boosted listings and premium accounts (Personal Plus, Business, Business Plus) via a third-party payment processor (e.g., Stripe, PayPal). Lenders and borrowers arrange any item rental payments outside the system.
Project Scope
Deliverables
The project team will produce three solution tiers (Gold, Silver, Bronze) with associated Business Requirements Documents (BRDs) and System Requirements Documents (SRDs) to define feature sets and timelines. Stakeholders may opt for a longer timeline for additional features. Core deliverables for Phase 1 include:
- User Onboarding:
- Registration with email/username and password.
- Minimal profile: public username, optional first/last name, required region/address.
- Optional identity verification using free-tier services (e.g., Persona’s 500 free/month) or low-cost alternatives (e.g., Verifai, id.me, Onfido, Sumsub), prioritizing free options.
- Listing Process:
- Create draft listings (limit: 50 drafts/user) with required fields: title, description, category (predefined, modeled after Facebook Marketplace), location; optional: up to 5 photos (scaled to high-end phone size, auto-generated thumbnails) and category-specific fields.
- AI-driven resource creation flow using Azure Cognitive Services to guide listers via chat, determining screens and follow-up questions (start, pause, cancel, edit supported).
- Save drafts; publish after manual review using Azure Cognitive Services - Content Moderator for text/image moderation (no hate/offensive content, HTML escaped).
- Listings support geographical constraints, min/max lending duration, min/max lead time, and calendar-based availability (using react-dates or backups).
- Listers can pause listings, reject requests (even after acceptance), and communicate via (Twilio Conversations API / or something else) chat (private, non-retained).
- Listing location anonymized with geo-coordinate jitter [Details TBD in BRD].
- Borrowing Process:
- Search/browse listings using Azure AI Search, filtered by geographical region (default radius TBD in BRD) and item availability.
- Request items, communicate via chat, and confirm lending completion.
- Calendar-based booking with date/time selection; supports flexible date ranges (e.g., any 1 day between Mon-Fri).
- Report issues/defects with items (e.g., lawnmower not starting).
- Account Types:
- Non-Verified Personal: Max 3 borrowed items, 15 simple items to lend, restricted to 5 friends.
- Verified Personal: Max 10 borrowed items, 30 items to lend (including complex items like pools), restricted to 10 friends or verified users.
- Verified Personal Plus (monthly fee): Max 30 borrowed items, 50 items to lend (expandable to 150 for $$), 30 friends (expandable to 100 for $$).
- Business (monthly fee): Max 200 items to lend (expandable to 500 for $$), 4 class types, 100 user list, 5 users (expandable to 10), basic PowerBI reports. Verification via automated third-party service (e.g., Persona) with manual review.
- Business Plus (monthly fee): Max 1000 items to lend (expandable for $$), 20 class types, 1000 user list, 20 users (expandable to 100), advanced PowerBI reports, lendee subscriptions with up to 5 tiers (public or invite-only).
- Enterprise: Custom restrictions, AAD integration (call for pricing).
- Admin Dashboard:
- Listing review with options to request updates or approve.
- RBAC for “admin” (review users, block users/listings, edit listings) and “site maintainers” (remove listings, reindex search, modify feature flags).
- View OpenTelemetry analytics in embedded PowerBI reports (free dev mode with banner).
- Technical Infrastructure:
- Azure services: AI Search, Maps Search, Cognitive Services (Content Moderator), Functions (timer/queue for daily summaries), Front Door for static assets.
- Infrastructure as Code using AVM+Bicep, provisioned via SME liaisons’ MSDN accounts.
- Azure External Identities for authentication.
- Tech staff portal with maintenance mode and reporting capabilities.