|
|
|
|
|
by konovalov-nk
353 days ago
|
|
Code is a technical specification and could be any programming language, markup, terraform files, configuration, whatever. Product Spec is written in English and in a such way that everybody can understand it without technical knowledge. Because it doesn't operate in C arrays and nuances of how queues work -- just common sense and real-life objects/entities! Then the actual code is an abstraction that takes the spec and implements it for certain architecture / scalability requirements and so on. For example you can ask to make to-do list app. You can build it on: - As a CLI tool - As a UI web interface - As an AI agent that operates entirely on voice recognition and text-to-speech as interface A product spec can omit this "tiny" detail, code -- cannot. Even if you specify this is Web UI to-do app in product spec, there are still tons of things to choose for developer: - Programming language - Cloud/Self-hosted - Architecture (monolith/microservices/modular monolith/SOA/event-driven) You wouldn't specify in a Product spec that to-do items has to go to an SQS queue that lambda picks up and adds them to a DB, would you? That has to be a separate technical spec document, which is simply called documentation (+actual code in the repositories). |
|