[디지털데일리 오병훈 기자] “소프트웨어(SW) 개발자는 하드웨어를 만드는 사람이 아닙니다. 소프트웨어 특성에 맞게 계속 ‘소프트’할 수 있게(유연하게) 만들어야된다는 것을 인정하고 실천해야 합니다.”
김재민 토스페이먼츠 서버 개발자는 인프랩에서 개최한 ‘인프콘2024’에서 ‘지속 성장 가능한 설계를 만들어가는 방법’을 주제로 발표하면서 이같이 강조했다.
SW개발자 입장에서 가장 난감한 것 중 하나가 지속적으로 변하는 클라이언트의 요구사항이다. 대부분 프로젝트가 그렇듯 SW 개발 또한 설계 단계부터 배포 단계까지 일정한 계획 속에서 움직이기 마련이다. 하지만, 클라이언트 요구사항 변화로 개발에 차질이 발생하는 일을 방지하기 위해서는 클라이언트 요구사항 변화를 전제로 한 유연한 설계가 필요하다는 것이다.
김재민 서버 개발자는 “클라이언트로부터 ‘완벽한 요구사항’을 전달받은 이후에나 설계를 할 수 있다고 말하는 사람들이 있는데, 그런 말은 하지 말아햐 한다고 생각한다”며 “완벽한 설계는 없고, 요구 사항은 계속 변하기 때문에 우리는 SW 장점을 살려서 변경된 요구사항으로 수용할 수 있는 설계를 구현해야 한다”고 말했다.
김 개발자는 ‘개념’과 ‘격벽’ 두 가지 방법을 통해 수용성 넓은 SW 설계 방법을 제안했다. 여기서 ‘개념’이란 개발자가 SW를 설계하기 위해 머릿속에 떠올리는 요소 및 그룹을 의미한다. 예컨대 웹툰 서비스를 개발한다고 가정을 했을 때 개발자는 ‘작가’ ‘작품’ ‘결제’ ‘리뷰’ 등 개념을 떠올릴 수 있다.
이어 이 개념들을 그룹화하게 되는 데 다양한 개념 그룹이 늘어날수록 전체적인 설계가 지저분해지기 마련이다. 이때 필요한 것이 바로 ‘격벽’이다. 격벽은 각 개념 그룹 사이 선을 그어 개념 그룹이 서로 뒤섞이지 않도록 통제하는 역할을 하게 된다. 이러한 개념과 격벽을 코드 내에서 구현하고 관리한다면 클라이언트 요구사항에 따라 유연하게 대처하는 데 이점이 있다는 것이 그의 설명이다.
그는 “우리가 만들어가는 SW도 개념들 사이 방화벽과 같은 격벽을 세우고 개념 간 접근을 제어하고 통제해야 한다”며 “이런 통제가 없다면 개념 간 무분별한 참조가 있을 것이고 SW는 점점 더 개념이 없어질 것”이라고 제언했다.
마지막으로 그는 “(개념과 격벽으로 설계된) SW에서는 더 중요한 영역과 덜 중요한 영역이 분명히 있기 때문에 자연스럽게 계층이 나눠지게 된다”며 “핵심 비즈니스가 아닌 것들을 분리하고 격리해서 개념 영역이 더 명확할 수 있도록 관리해야 한다”고 전했다.
Copyright ⓒ 디지털데일리. 무단전재 및 재배포 금지
[단독] 정부, 올해 ‘양자 원격전송’ 50km 실험 나선다
2025-02-08 15:54:17[네트워크 통·장] 희비 엇갈린 장비업계…'RFHIC' 웃고 '오이솔루션' 울고
2025-02-08 10:27:44[DD퇴근길] 연매출 10조 시대 연 네이버, 성장 비결은 '클라우드'
2025-02-07 17:23:36KT스카이라이프, 지난해 영업손실 11억원 …"올해 영업익 개선 전망"
2025-02-07 11:23:01SKT·포스텍, AI로 스마트폰 안테나 전송 품질 성능 높인다
2025-02-06 18:07:21[LGU+컨콜] AI로 꿩먹고 알먹고…저수익 사업은 과감히 아웃(종합)
2025-02-06 17:34:21[DD퇴근길] 연매출 10조 시대 연 네이버, 성장 비결은 '클라우드'
2025-02-07 17:23:36"월 4000원의 행복"…티빙, '광고형 스탠다드' 연간이용권 출시
2025-02-07 15:53:56펍지 스튜디오 신작 ‘PUBG: 블라인드스팟’, 스팀에 체험판 공개
2025-02-07 15:32:27"시니어 사각지대 해소한다"…오른손케어, 돌봄 및 요양 서비스 제공
2025-02-07 14:43:56[IT클로즈업] 이젠 성우도 IP... ‘목소리’에 움직이는 게임시장
2025-02-07 13:58:56日 열도 휩쓴 네이버웹툰 ‘입학용병’, 도쿄서 첫 팝업
2025-02-07 13:58:03