359 lines
10 KiB
Markdown
359 lines
10 KiB
Markdown
# Tutorial 06: Platform Architecture
|
|
|
|
**Let Idunn translate your product vision into technical architecture - you speak design, she speaks code**
|
|
|
|
---
|
|
|
|
## Overview
|
|
|
|
You've designed the experience. Now you need the technical foundation to make it real. But you're a designer, not a developer - how do you define databases, APIs, and system architecture?
|
|
|
|
**You don't.** Idunn does.
|
|
|
|
You just describe your product in design language. Idunn translates it into Platform PRD.
|
|
|
|
**Time:** 30-45 minutes
|
|
**Prerequisites:** Module 05 completed (Trigger Map ready)
|
|
**What you'll create:** Platform PRD & Architecture Document
|
|
|
|
---
|
|
|
|
## What You'll Learn
|
|
|
|
- What a Platform PRD is (and why it matters)
|
|
- How to describe your product's technical needs without being technical
|
|
- How Idunn helps you think through platform decisions
|
|
- What questions she'll ask (so you're not surprised)
|
|
|
|
---
|
|
|
|
## What is Platform PRD?
|
|
|
|
**Platform PRD** = The technical blueprint developers need to build your product.
|
|
|
|
It includes:
|
|
- **System Architecture:** How the pieces fit together
|
|
- **Data Models:** What information needs to be stored
|
|
- **APIs & Integrations:** How systems talk to each other
|
|
- **Technical Requirements:** Performance, security, scalability
|
|
|
|
**Your superpower:** You don't need to know how to write this. You just need to know **what your product does**.
|
|
|
|
---
|
|
|
|
## Step 1: Understand Your Role (2 min)
|
|
|
|
**Your job as designer:**
|
|
- Describe what users need to do
|
|
- Explain what data they create/view/edit
|
|
- Identify third-party services you want (payments, auth, analytics)
|
|
- Share any technical constraints you know about
|
|
|
|
**Idunn's job:**
|
|
- Ask clarifying questions about technical needs
|
|
- Translate your product into architecture decisions
|
|
- Document data models, APIs, system diagrams
|
|
- Flag technical risks and recommend solutions
|
|
|
|
**You bring product knowledge. She brings technical expertise.**
|
|
|
|
---
|
|
|
|
## What to Expect: The Conversation
|
|
|
|
**Here's how a real session with Idunn looks:**
|
|
|
|
### Idunn's Opening
|
|
```
|
|
Hi! I'm Idunn, your technical architect agent.
|
|
|
|
I see you've completed your Product Brief and Trigger Map.
|
|
Let's translate your product vision into technical architecture.
|
|
|
|
I'll ask questions about your product in design language.
|
|
You answer naturally - no need for technical terms.
|
|
|
|
Ready? Let's start with the basics.
|
|
```
|
|
|
|
### Example Questions Idunn Asks
|
|
|
|
**About Your Product:**
|
|
```
|
|
Idunn: "What's the core thing users create or manage in your product?"
|
|
|
|
You: "Users create weekly schedules for family dog care - walks,
|
|
feeding, vet appointments, etc."
|
|
|
|
Idunn: "Got it. Do these schedules need to be:
|
|
- Private (only one family)?
|
|
- Shared (multiple families can see each other's)?
|
|
- Collaborative (family members edit together)?"
|
|
|
|
You: "Collaborative - all family members edit the same schedule."
|
|
|
|
Idunn: "Perfect. That tells me we need real-time sync and user permissions."
|
|
```
|
|
|
|
**About Users & Authentication:**
|
|
```
|
|
Idunn: "How do you envision users signing up?"
|
|
|
|
You: "Email and password should work. Google login would be nice too."
|
|
|
|
Idunn: "Great! Should users be able to:
|
|
- Invite family members?
|
|
- Have different roles (admin vs. regular member)?"
|
|
|
|
You: "Yes! The person who creates the schedule is the admin.
|
|
They can invite family and remove members if needed."
|
|
|
|
Idunn: "Understood. I'll design a role-based permission system."
|
|
```
|
|
|
|
**About Data & Features:**
|
|
```
|
|
Idunn: "You mentioned tasks like 'walks' and 'feeding'.
|
|
What information does each task need?"
|
|
|
|
You: "Task title, who's assigned, what time/date, and whether
|
|
it's done or not."
|
|
|
|
Idunn: "Should tasks repeat? Like 'walk dog every morning'?"
|
|
|
|
You: "Oh yes! That would be super helpful."
|
|
|
|
Idunn: "I'll add recurring task patterns. Should we notify
|
|
the assigned person before the task is due?"
|
|
|
|
You: "Definitely!"
|
|
|
|
Idunn: "I'll include a notification system in the architecture."
|
|
```
|
|
|
|
### Built-in Guidance from Idunn
|
|
|
|
**When you're unsure:**
|
|
```
|
|
You: "I'm not sure if we need that..."
|
|
|
|
Idunn: "No problem! Let me explain the trade-offs:
|
|
|
|
WITH real-time sync:
|
|
✅ Family sees changes instantly
|
|
✅ No confusion about who's doing what
|
|
❌ Slightly more complex to build
|
|
❌ Requires internet connection
|
|
|
|
WITHOUT real-time sync:
|
|
✅ Simpler to build
|
|
✅ Can work offline
|
|
❌ Family might have outdated info
|
|
❌ Conflicts if two people edit at once
|
|
|
|
For family coordination, real-time is usually worth it.
|
|
What feels right for your users?"
|
|
```
|
|
|
|
**When technical terms come up:**
|
|
```
|
|
Idunn: "I'll use a REST API for communication between app and server."
|
|
|
|
You: "What's a REST API?"
|
|
|
|
Idunn: "Think of it as a waiter in a restaurant:
|
|
- Your app (customer) asks for something
|
|
- The API (waiter) takes the request to the server (kitchen)
|
|
- The server prepares the response (food)
|
|
- The API brings it back to your app
|
|
|
|
You don't need to know how it works - just that it's
|
|
the standard way apps communicate with databases."
|
|
```
|
|
|
|
**When prioritizing features:**
|
|
```
|
|
Idunn: "Based on your Product Brief, I see you want:
|
|
- Task scheduling (core)
|
|
- Notifications (important)
|
|
- Calendar sync (nice-to-have)
|
|
- Vet appointment reminders (nice-to-have)
|
|
|
|
For the Platform PRD, I'll design all of these.
|
|
|
|
But I'll flag which are 'MVP' (must-have) vs.
|
|
'Phase 2' (add later) so developers know priorities.
|
|
|
|
Does that split make sense?"
|
|
|
|
You: "Yes, but actually calendar sync is really important."
|
|
|
|
Idunn: "Got it - moving calendar sync to MVP. I'll update the
|
|
architecture to prioritize that integration."
|
|
```
|
|
|
|
### What Idunn Creates While You Talk
|
|
|
|
As you answer, Idunn is:
|
|
- ✍️ Documenting data models ("Task" entity with fields)
|
|
- 🏗️ Sketching system architecture (app, API, database, notifications)
|
|
- 🔐 Planning authentication flow (login, permissions, roles)
|
|
- 🔗 Identifying integrations (Google Calendar, email notifications)
|
|
- ⚠️ Flagging technical risks ("Real-time sync needs WebSocket support")
|
|
|
|
**You'll see progress updates:**
|
|
```
|
|
Idunn: "✅ Data model drafted - 3 main entities (User, Family, Task)
|
|
✅ Authentication flow designed - Social login + email
|
|
🔄 Working on notification system architecture..."
|
|
```
|
|
|
|
---
|
|
|
|
## Step 2: Activate Idunn (2 min)
|
|
|
|
```
|
|
@idunn
|
|
|
|
I'm ready to create the Platform PRD for [Your Product Name].
|
|
|
|
I have:
|
|
- Product Brief (done)
|
|
- Trigger Map (done)
|
|
|
|
Please help me define the technical architecture.
|
|
```
|
|
|
|
**Idunn will respond** and start asking questions about your product's technical needs.
|
|
|
|
---
|
|
|
|
## Step 3: Answer Idunn's Questions (20-30 min)
|
|
|
|
Idunn will guide you through understanding your platform needs. She asks questions like:
|
|
|
|
### About Data
|
|
- "What information do users create?"
|
|
- "What needs to be saved vs. temporary?"
|
|
- "Do users share data with each other?"
|
|
|
|
**Example answers (you don't need technical terms):**
|
|
- "Users create weekly schedules for dog care tasks"
|
|
- "Schedules need to be saved permanently and shared with family"
|
|
- "Each task has: title, assigned person, date, completion status"
|
|
|
|
### About Authentication
|
|
- "How do users log in?"
|
|
- "Do you want social login (Google, Apple)?"
|
|
- "Are there different user roles?"
|
|
|
|
**Example answers:**
|
|
- "Email + password, plus Google login"
|
|
- "Two roles: Admin (can assign tasks) and Family Member (can complete tasks)"
|
|
|
|
### About Integrations
|
|
- "Do you need notifications?"
|
|
- "Payment processing?"
|
|
- "Calendar sync?"
|
|
|
|
**Example answers:**
|
|
- "Yes! Send reminders before tasks are due"
|
|
- "No payments needed"
|
|
- "Would be nice to sync with phone calendar"
|
|
|
|
### About Performance & Scale
|
|
- "How many users do you expect?"
|
|
- "Any real-time features?"
|
|
- "Mobile app or web?"
|
|
|
|
**Idunn translates this into:**
|
|
- Database schemas
|
|
- API specifications
|
|
- System architecture diagrams
|
|
- Technical requirements docs
|
|
|
|
---
|
|
|
|
## Step 4: Review & Refine (10 min)
|
|
|
|
Idunn will show you the Platform PRD. Don't panic if it looks technical - you don't need to understand every detail.
|
|
|
|
**What to check:**
|
|
- ✅ Does it capture all the features you designed?
|
|
- ✅ Are the user roles correct?
|
|
- ✅ Did she understand your data needs?
|
|
- ✅ Are integrations you wanted included?
|
|
|
|
**Ask questions like:**
|
|
- "Can you explain this part in design terms?"
|
|
- "How does this support [specific feature]?"
|
|
- "What if we want to add [feature] later?"
|
|
|
|
**Idunn will clarify** and update the PRD until it's right.
|
|
|
|
---
|
|
|
|
## Step 5: Save Your Platform PRD (2 min)
|
|
|
|
Idunn will save the Platform PRD to your project:
|
|
|
|
```
|
|
/docs/3-platform-prd/
|
|
├── 01-platform-architecture.md
|
|
├── 02-data-models.md
|
|
├── 03-api-specifications.md
|
|
└── 04-technical-constraints.md
|
|
```
|
|
|
|
**You now have** everything developers need to understand the technical foundation.
|
|
|
|
---
|
|
|
|
## Common Questions
|
|
|
|
**Q: Do I need to learn technical terms?**
|
|
**A:** No. Speak in design/product language. Idunn translates.
|
|
|
|
**Q: What if I don't know the answer to her questions?**
|
|
**A:** Say so! Idunn will explain the implications and suggest options.
|
|
|
|
**Q: Can developers change the architecture later?**
|
|
**A:** Yes. This is a starting point. Developers may refine it.
|
|
|
|
**Q: Do I need to review APIs and database schemas?**
|
|
**A:** Only if you want to. Focus on whether it supports your design.
|
|
|
|
---
|
|
|
|
## What You've Accomplished
|
|
|
|
🎉 **You just created a Platform PRD** - something that usually requires technical architects!
|
|
|
|
**You didn't need to:**
|
|
- ❌ Learn database design
|
|
- ❌ Understand API protocols
|
|
- ❌ Draw system architecture diagrams
|
|
- ❌ Write technical specifications
|
|
|
|
**You just:**
|
|
- ✅ Described your product in design terms
|
|
- ✅ Answered Idunn's questions
|
|
- ✅ Reviewed to ensure it supports your design
|
|
|
|
**That's the WDS superpower:** You focus on design. The agents handle the technical translation.
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
**Ready to design the UX?**
|
|
→ [Module 08: Initialize Scenario](../module-08-initialize-scenario/tutorial-08.md)
|
|
|
|
**Want to skip Platform PRD for now?**
|
|
You can come back to this after UX design if you prefer.
|
|
|
|
---
|
|
|
|
**Pro Tip:** Even if you're not building the platform yourself, having this PRD helps you communicate with developers and make informed design decisions. You'll know what's technically feasible without becoming a developer yourself.
|
|
|