소프트웨어 설계 프로세스의 이상화 현실
Source
Evernote/Technical News/컴퓨터 vs 책 B급 프로그래머 소프트웨어 설계 프로세스가 항상 이상화된 형태인 이유는.md
Summary
실제 소프트웨어 개발은 요구사항의 불명확성, 구현 중 발견되는 세부사항, 외부 변경 요인, 인간 오류, 선입견, 경제적 제약 등으로 인해 이론적으로 이상화된 ‘이성적인 설계 프로세스’를 따르지 못한다. 따라서 개발자는 처음부터 완벽한 문서나 설계를 기대하기보다, 이러한 현실적 한계를 인정하고 죄책감에서 벗어나야 한다. 단, 이는 설계를 무시하라는 의미가 아니다.
Key Points
- 실제 프로젝트는 이론적 설계 프로세스와 달리 비선형적이고 반복적이다.
- 요구사항 불명확성 및 구현 중 지식 획득으로 설계 수정이 필연적이다.
- 인간 오류, 외부 변경, 경제적 제약(재사용 등)이 이상적 설계를 방해한다.
- 교과서나 논문의 사례는 실제 과정을 왜곡하여 이상화한 결과물이다.
- 개발자는 ‘완벽한 초기 설계’에 대한 죄책감을 버리고 현실적인 접근이 필요하다.
- 설계 자체의 필요성은 부정하지 않으며, 현실적 한계 내에서의 설계를 강조한다.