System Analysis
Comprehensive functional and non-functional requirements, system actors, Scene Graph data model, curation trust hierarchy, and integration points.
Executive Summary
Scenery is a cinema discovery marketplace that transforms films into interactive, explorable cultural maps. Users search for a movie, browse an interactive scene timeline, and discover every product, song, and brand that appears within the film — all linkable to purchase or streaming.
The platform's core technical innovation is the Scene Graph: a structured knowledge graph linking Movies → Scenes → Timestamps → Elements (products, music, brands, locations). The graph is populated through a layered curation model combining AI pre-tagging, commercially-motivated shop curation, brand validation, and user contributions.
System Scope & Boundaries
✓ In Scope
- Film search and discovery (movie pages, cast, director, synopsis)
- Interactive scene timeline — scrub through a film, see scene elements update
- Scene Graph: structured data model linking films, scenes, timestamps, products, songs, locations, dishes
- AI tagging pipeline: audio fingerprinting (music), computer vision (objects/products)
- Shop/retailer curation: businesses link products to specific scene timestamps
- Brand validation: official placement brands confirm and upgrade tags
- User curation: community tagging for long-tail elements
- Commerce layer: product purchase options (affiliate, official brand, local stores)
- Official movie merchandise store per film (beyond scene-specific products)
- Music discovery: song/artist info, streaming deep links, purchase options
- Watch options: rent/buy links via CineCore licensing integration
- IP licensing fee routing for merchandise sales (via CineCore)
- Filmmaker self-onboarding: filmmakers tag their own film's elements
- Location commerce: contextual booking CTAs for hotels, restaurants, and apartments linked to scenes
- Recipe pages: dishes seen in scenes link to full step-by-step recipes
- Social layer: user profiles, follow users/artists/brands, activity feed, reviews, ratings
✗ Out of Scope
- Video hosting or streaming (handled by CineCore + CDN partners)
- Rights management and revenue splitting (delegated to CineCore)
- Direct e-commerce fulfilment, shipping, or physical payment processing (bookings link out to partner systems)
- Film production tools or content creation
System Actors
Functional Requirements
4.1 Film Discovery & Search
| Req. ID | Requirement |
|---|---|
| FR-01 | Users shall be able to search films by title, director, cast member, year, and genre. |
| FR-02 | Search results shall return within 200ms for queries up to 5 terms. |
| FR-03 | Each film shall have a dedicated page showing metadata, cast, director, synopsis, and watch options. |
| FR-04 | The film page shall surface an interactive scene timeline as the primary exploration element. |
| FR-05 | Related films shall be suggested based on shared cast, director, genre, and scene elements. |
4.2 Scene Graph — Data Model
| Req. ID | Requirement |
|---|---|
| FR-06 | The system shall maintain a Scene Graph structured as: Film → Scene → Timestamp → Element. |
| FR-07 | Elements shall support the following types: Product, Song, Brand, Location, Vehicle, Costume. |
| FR-08 | Each element shall carry a confidence score reflecting its curation source (AI / Shop / Brand / User). |
| FR-09 | The system shall support multiple elements of different types at the same timestamp. |
| FR-10 | The Scene Graph shall be queryable by film, scene, timestamp range, and element type. |
4.3 Interactive Scene Timeline
| Req. ID | Requirement |
|---|---|
| FR-11 | The timeline shall display scene markers across the full film duration. |
| FR-12 | As a user scrubs the timeline, the product and music panels shall update in real time. |
| FR-13 | Scenes shall display a thumbnail image, scene title, and timestamp range. |
| FR-14 | The timeline shall be usable without a film player — it operates on metadata, not video. |
| FR-15 | Timestamps shall be linkable (shareable URL with timestamp parameter). |
4.4 AI Tagging Pipeline
| Req. ID | Requirement |
|---|---|
| FR-16 | The system shall integrate an audio fingerprinting service to identify songs in film audio tracks. |
| FR-17 | The system shall integrate a computer vision model to identify objects, clothing, and vehicles in scenes. |
| FR-18 | AI tags shall be flagged with a confidence score and presented as suggestions for human validation. |
| FR-19 | The system shall provide a correction workflow where shops, brands, or admins can override AI tags. |
| FR-20 | AI processing shall be asynchronous; film pages shall be available before AI tagging is complete. |
4.5 Shop & Retailer Curation
| Req. ID | Requirement |
|---|---|
| FR-21 | Retailers shall be able to register on the platform and link their product catalogue. |
| FR-22 | Retailers shall be able to place a product at a specific film scene timestamp. |
| FR-23 | A retailer placing a product at a timestamp shall trigger the IP licensing fee calculation via CineCore. |
| FR-24 | Multiple retailers may link competing products at the same timestamp; both shall be visible. |
| FR-25 | Retailer product placement shall include a product image, title, price, and purchase URL. |
Non-Functional Requirements
Curation Trust Hierarchy
When multiple curation sources produce conflicting tags for the same timestamp, the following trust hierarchy is applied:
Filmmaker / Studio Highest
Canonical source of truth — overrides all other tags. Direct creator knowledge.
Official Brand Placement
Verified paid placement — overrides AI and user tags. Brand confirms their own product.
Shop / Retailer
Commercially motivated, high-accuracy curation. Revenue depends on correct tagging.
AI Auto-Tag (confidence >85%)
Reliable for well-trained categories (cars, major brands). High threshold required.
Community (3+ confirmations)
Elevated user tags with 3+ independent confirmations. Crowd-sourced validation.
Single User Submission Lowest
Enters moderation queue; displayed as unverified until approved by admin.
Integration Points
| Integration | Purpose |
|---|---|
| CineCore | Film licensing, watch options, IP licensing fee routing, revenue splitting |
| Spotify / Deezer / Apple Music | Music deep-link generation for streaming referrals and affiliate commissions |
| Audio Fingerprinting API | Song identification in film audio tracks (e.g. ACRCloud) |
| Computer Vision API | Object and product recognition in scene frames (e.g. AWS Rekognition) |
| Stripe | Shop subscription billing, affiliate payout processing |
| Geolocation API | Local store proximity calculation for product availability |
| Affiliate Networks | Commission tracking for outbound product and music clicks |