더북(TheBook)

모든 문제의 공통점은 명확합니다. 용이의 검증이 부족했다는 점입니다. 단순 기능 테스트만으로는 시스템에서 잘 돌아가는지 확인이 어렵습니다. 이것이 시스템 테스트가 필요한 이유이고, 통합 테스트가 필요한 이유입니다. 이미 통합 테스트의 중요성은 귀가 따갑게 들었을 텐데 왜 여기서 다시 이야기하는 걸까요? AI를 사용하면, 기능이 잘 동작하는 것만으로도 시스템에 넣어도 괜찮을 것이라는 착각이 쉽게 발생합니다. AI가 만들어 준 코드는 처음부터 완성도가 높아 보이기 때문입니다. 구조는 정돈되어 있고, 변수 이름도 명확하며, 테스트 요청에도 문제없이 응답합니다. 게다가 수십 줄, 많게는 수백 줄의 코드를 한 번에 만들어 냅니다. 그러다 보니 모든 코드를 일일이 검증하고 싶은 마음이 사라집니다. 결국 개발자는 무의식적으로 ‘이 정도면 충분히 검증된 것 아닌가?’라고 생각하게 됩니다. 그 순간, 검증을 멈춥니다. 이것이 AI 시대 기능 중심 사고의 가장 위험한 함정 중 하나입니다.

용이의 사례가 보여 주는 것은 단순한 실수가 아닙니다. 검증의 기준이 ‘기능’에만 머물러 있을 때 반드시 발생하는 구조적인 문제입니다. 시스템을 시스템으로 바라보지 않았기 때문에 시작된 문제입니다. 그렇다면 기능을 넘어 시스템을 검증하려면 무엇을, 어떤 기준으로 확인해야 할까요? 바로 비기능 요구사항입니다.