소개
This skill guides the process of transforming a nascent idea into a concrete, well-defined software design before any code is written. It employs a structured, Socratic method to thoroughly understand requirements, constraints, and success criteria. By methodically exploring multiple architectural approaches and their trade-offs, it helps select the most suitable path. The final design is then presented incrementally for continuous validation, making it an essential first step for clarifying ambiguous requirements, architecting new features, or starting any new development project.