Uncategorized

4 1 1 소프트웨어 설계 vs 건축물 설계

Written by

🚀 **이 문서는 보다 쉽게 이해할 수 있도록 정리되었습니다.**

설계라는 것은 그림을 그리는 것이다. 건축물로 치면 설계도를 그리는 것이다. 설계도는 건축물을 만들기 위한 모든 것이 담겨져 있다. 그림으로 표시도 되어 있고, 수치로도 표시가 되어 있다. 어떤 건축물을 만들지를 알 수가 있다.

건축물에도 조망도가 있고, 상세하게 층마다 어떻게 지어질지가 나타나있는 세부 설계도가 있다. 건물을 보면 우리는 계단을 올라가서 보이는 공간이 다이지만, 사실 건물을 건축할 때 고려되어야 할 것은 대단히 많다. 전기 설비가 어떻게 될지, 선은 어떻게 들어갈지, 수도는 어떻게 배관되어야 할지, 공기는 어떤식으로 흘러가는지, 각 구역들은 어떤 식으로 사용이 될지 세부적으로 1mm까지 표시가 되어 있는 설계도 필요하다.

소프트웨서 설계에도 대략적으로 컨셉을 보여줄 수 있는 기획 문서가 있고, 설계서가 있고, 상세 화면 설계, 인터페이스 설계, 데이터베이스 설계등이 있다. 설계는 매우 정확해야 한다. 물론 설계를 하다보면 변경이 될 수도 있다. 하지만 설계도 상에서는 흐름이 완전해야 하고, 어떤 프로그램이 만들어질지가 명확해야 한다. 건축물의 전기나 물이 흘러가듯이 프로그램내에서도 내용이 어떻게 저장이 되어야 하는지, 외부와 어떤 방법으로 통신할지가 명확해야 한다.

사실은 프로그래머의 대부분은 이 단계를 싫어한다. 이 단계를 단순 문서 작업이라고 치부해버리기도 한다. 프로젝트 산출물을 만들기 위한 문서 작업이라고 생각한다면 그리고 그렇게 만들어진다면 정말 의미 없는 시간이 될 수도 있다. 하지만 프로그램을 정교하게 만들기 위한 구상의 단계를 실현화 하는 것이라면
의미가 있고, 중요하다. 개발자들이 싫어하지만, 이 단계를 즐길 수 있고, 좋아한다면 훌륭한 개발자가 될 수 있다. 개발자들이 싫어하는 것, 문서 만드는 것, 회의 하는 것, 정리하는 것, 대부분 개발자들은 만드는 것 자체를 재밌어 한다. 하지만 일로써 접근하고, 큰 프로젝트일수록, 표준화하고 정의 하는 것이 중요하다. 1인개발자를 꿈꾼다면 얘기는 달라질 수 있다. 하지만, 어느 순간에는 펜과 종이를 들고 무언가 자기 구성을 적고 있는 것을 발견할 수 있다. 이것이 설계이다. 이때 고민할 때 좀더 정교하게 잘 해둔다면 나중에 좋을 것이다.

개발자, 기술사, 삼성, 외국계 IT기업 20년차 기술노트 알렉이 직접 작성한

IT기업 기술 면접을 위한 CS + 면접 노하우 PDF
[https://kmong.com/self-marketing/539751/LUA54VnQsP](https://kmong.com/self-marketing/539751/LUA54VnQsP)
자주 나오는 CS 질문과 답변 그리고 100번 이상 면접관으로 참여하면서 느꼈던

면접자가 알아야 할 팁 13가지 포함

백엔드 개발자를 위한 클라우드 강의, AWS

[https://inf.run/o1NX](https://inf.run/o1NX)

이제는 비전공자도, 일반이도 개발할 수 있다.
ChatGPT를 이용한 누구나 앱개발 with 알렉
[https://inf.run/rpX4](https://inf.run/rpX4)

백엔드 직접 번역한 도서
[https://www.yes24.com/Product/Goods/122536127](https://www.yes24.com/Product/Goods/122536127)

IT기술의 거의 모든 것을 다루는 기술노트with알렉 유투브

[https://www.youtube.com/c/%EA%B8%B0%EC%88%A0%EB%85%B8%ED%8A%B8with%EC%95%8C%EB%A0%89](https://www.youtube.com/c/%EA%B8%B0%EC%88%A0%EB%85%B8%ED%8A%B8with%EC%95%8C%EB%A0%89)

Leave a Comment