What is the 'API-First' design approach and what artifact does it produce before any code is written?
- A.API-First design produces the database schema (an ER diagram or DDL script) before any interface code. Teams agree on the data model (tables, keys, constraints) upfront, enabling parallel backend and reporting work against the schema. Benefits: earlier data review, seed scripts from the schema, migration testing, and documentation that stays in sync with the tables in the live production database
- B.API-First design produces the user interface mockups (a Figma file or wireframe set) before any backend code. Teams agree on screen layouts (pages, components, navigation) upfront, enabling parallel design and development work against the mockups. Benefits: earlier usability review, clickable prototypes from the mockups, accessibility testing, and documentation that stays in sync with the visual design
- C.API-First design produces the API specification (OpenAPI/AsyncAPI document) before any implementation code. Teams agree on the API contract (endpoints, schemas, authentication) upfront, enabling parallel frontend and backend development against the spec. Benefits: earlier design review, mock servers from the spec, contract testing, and documentation that stays in sync with implementation