소프트웨어 공학이라는 말을 들으면 대개는 소프트웨어를 개발하는데 도움을 주는 학문 또는 체계적이고 과학적인 소프트웨어 개발 방법론을 떠올립니다. 예측 가능한 일정, 안정적인 품질, 반복 가능한 결과. 하지만 실제 개발 현장에서는 이 이상적인 개념들이 종종 현실의 벽에 부딪힙니다. 특히 프로젝트가 복잡해지고, 요구사항이 자주 변하며, 일정은 항상 촉박한 상황에서는 “소프트웨어 공학을 적용한다는 것” 자체가 부담으로 다가오기도 합니다. 그리고 최근 몇 년 사이에는 AI 기술이 급속도로 발전하면서, 복잡한 분석이나 예측 업무까지 자동화가 가능해졌지만, 그조차도 현실에 곧바로 녹아들기에는 여전히 많은 간극이 존재합니다. 이번 포스팅에서는 어떤 이론이나 도구, 또는 기술 기술이 ‘좋다’ 혹은 ‘나쁘다’라는 판단보..