| 기술 부채, 현대 조직들의 현대화를 막는다 | 2023.03.24 |
얼마 전 미국의 한 거대 항공사에서 항공편을 무려 1만 6700개나 취소하는 사건이 발생했다. 회사나 고객들 모두에게 큰 손해가 된 사건이었는데, 그 원인은 오래된 소프트웨어 하나였다고 한다. 비행기는 뜨지 못하는데, 기술 부채에 대한 논의가 떠올랐다.
[보안뉴스 문정후 기자] 사우스웨스트항공이 겨울의 거센 눈보라와 폭풍 때문에 무려 1만 6700여 항공편을 취소시켰을 때, 갑자기 승무원 스케줄 관리 소프트웨어에 사람들의 이목이 집중됐다. 그 소프트웨어가 너무나 오래된 것이었기 때문이다. 기상이 악화될 수 있지만, 아무리 그래도 1만 여 이상의 항공편이 취소됐다는 건 어디엔가 또 다른 문제가 있다는 뜻이고 그 범인으로 이 오래된 소프트웨어가 지목된 것이었다. ![]() [이미지 = utoimage] 콜럼비아대학의 제이넵 투펙치(Zeynep Tufekci) 교수는 12월 13일 뉴욕타임즈 기고글을 통해 이 사건을 지적하기도 했다. 그는 “오래되거나 결점이 있는 소프트웨어를 업데이트나 업그레이드 하지 않고 중요한 일을 계속 처리하는 것을 우리는 ‘기술 부채를 쌓고 있다’고 말한다”며 “소프트웨어라면 마땅히 갖추고 있어야 한다고 우리가 생각하는 것들과, 실제 소프트웨어가 갖추고 있는 것 사이의 격차를 기술 부채라고 말한다”고 정의했다. 보통 기술 부채라고 하면 오래된 소프트웨어들에서부터 나오는 거라고 생각하는데 투펙치 교수는 “빠르지만 성의 없이 만들어진 새 소프트웨어들도 기술 부채의 부담을 남길 수 있다”고 설명한다. “결국 있어야 할 것이 없다는 것이 기술 부채니까요. 부채는 반드시 갚아야 하고, 언젠가 청구서가 날아오게 되어 있습니다.” 소프트웨어 업체 소나소스(SonarSource)의 CEO인 올리비어 고딘(Olivier Gaudin)은 “어떤 코드나 완벽할 수는 없고, 따라서 결함이 하나도 없는 소프트웨어란 있을 수 없다”고 말한다. “그러므로 어떤 기술을 사용한다 하더라도 기술 부채를 완전히 없앨 수는 없습니다. 다만 그 부채라는 것을 어느 시점에 갚게 되냐가 문제죠. 일반적인 빚들이 그렇듯, 뒤로 밀릴수록 이자가 쌓이고 갚는 게 더 힘들어지죠. 기술도 오래되면 될수록 수정이 잘 안 됩니다.” 사우스웨스트항공의 수석 운영 책임자인 앤드류 워터슨(Andrew Watterson)은 “당시 승무원 스케줄 프로그램이 완전히 마비되거나 망가진 건 아니지만, 급작스럽게 적용되는 여러 가지 변경 사항들을 충분히 효과적으로 처리하지는 못했었던 게 사실”이라고 말한다. “일정 데이터가 제대로 처리되지 않으니 승무원들을 알맞은 비행기로 배치시킬 수가 없게 됐습니다. 그러니 비행기가 연착하거나 출발이 지연되는 것에 대하여 대처가 안 됐고, 문제가 계속 누적됐습니다.” 그러면서 워터슨은 “사우스웨스트항공의 네트워크는 점대점(point-to-point) 방식의 세 가지 부분으로 구성되어 있다”며 “항공편 네트워크, 비행기체 네트워크, 승무원 네트워크가 바로 그것”이라고 설명한다. “당시 수많은 비행편이 취소된 사건을 통해 세 가지 구성 요소 중 승무원 네트워크에서의 기술 최신화가 필요하다는 사실을 알게 되었습니다. 지금 보유한 기술로는, 갑작스러운 일로 여러 가지 이벤트가 몰릴 때 적절한 처리가 어렵다는 것이 드러났습니다.” 보안 업체 시놉시스(Synopsys)의 수석 제품 관리자인 데브럽 고시(Debrup Ghosh)는 “수많은 비행기와 승무원들을 통합적으로 운영해야 하는 항공사 입장에서 스케줄링을 담당하는 소프트웨어의 중요성은 이루 다 말할 수 없을 정도”라고 말한다. “항공사 운영의 핵심 중 핵심이라고 말해도 과언이 아닙니다. 어떤 비행기를 언제 어디서부터 어디까지 운영해야 하고, 또 그 비행기에 어느 조종사와 승무원들을 탑승시키며, 어떤 고객들이 어느 정도의 짐을 가지고 탑승하는지 전부 부드럽게 관리하려면 스케줄링부터 작업을 시작해야 합니다. 그러니 이 작은 요소 하나에서 나온 문제 때문에 1만 6천이 넘는 항공편이 중단된 것이죠.” 기술 부채, 어느 정도 심각한가? 소프트웨어 품질이 형편 없다는 것 하나 때문에 경제 전반에 나타나는 악영향은 실로 엄청난 규모다. 미국 조직들의 경우 2022년 한 해 동안 최소 2조 4100억 달러의 손해를 부실한 소프트웨어 때문에 보았다고 추정하고 있다. 2년 전에는 1조 3100억 달러였고, 그 당시에도 충분히 크다 할 수 있었는데, 빠른 속도로 불어나는 중이라고 할 수 있다. 이것이 기술 부채를 제대로 갚지 않았을 때 생기는 일이라고 단적으로 말할 수 있다. 고시는 이게 끝이 아니라고 말한다. “기술 부채가 있다는 것 자체 때문에 현존하는 코드 베이스를 제대로 현대화 하지 못하기도 합니다. 부채가 더 큰 부채를 야기한다는 것이죠. 한 번 기술 부채의 수렁에 빠지면 더 깊은 곳으로 빠져들어갈 뿐 나올 방법이 없어 보일 지경입니다. 지금 경제 전반에 기술 부채로 인한 손해가 빠르게 늘어나고 있다면, 사실 매우 당연한 일입니다. 사우스웨스트의 경우 기술 부채로 인해 최소 7억 2500만 달러를 잃었다고 집계됩니다. 많게는 8억 2500만 달러이고요.” 기술 부채의 진짜 문제, 디지털 전환의 걸림돌 최근 IT 서비스 및 솔루션 업체인 인사이트엔터프라이즈(Insight Enterprises)는 조사를 통해 대기업들의 디지털 전환을 방해하는 가장 큰 요인 중 세 번째가 기술 부채라는 사실을 알아냈다고 한다. 참고로 디지털 전환과 혁신을 가장 많이 저해하는 요소는 능력과 지식의 부족, 두 번째는 예산의 한계였다. 인사이트엔터프라이즈의 수석 아키텍트 및 엔지니어인 후안 올란디니(Juan Orlandini)는 “셀 수 없이 많은 시스템들과 네트워크들이 기술 부채가 주는 무게에 짓눌려 있다”며 “기업과 기관들이 핵심 업무를 수행할 때 사용되는 시스템에도 기술 부채가 어마어마하게 발견되고 있다”고 증언하다. “기술 부채가 있음을 알고도 기업들은 계속해서 오래되어 교체해야 할 소프트웨어를 사용하고 또 사용하면서 회사 이윤을 도모할 수밖에 없습니다. 그러면서 새로운 기능과 기회를 모색할 수 없게 되고, 그것은 보이지 않는 손해가 됩니다. 기술 부채의 가장 나쁜 점은, 해결하지 않고 방치해 두면 그 빚이 그냥 그대로 있는 게 아니라 자꾸만 커진다는 겁니다. 악덕 사채와 비슷한 느낌입니다. 시간을 끌면 끌수록 수렁텅이가 됩니다.” 그러면서 올란디니는 “지식 부족과 예산 부족이 기술 부채보다 더 심각하게 디지털 전환을 저해하고 있다고 하는데, 사실 지식/경험의 부족과 예산 부족은 어느 조직이나 저 먼 옛날부터 항상 겪어 왔던 문제”라고 지적한다. “어떤 상황에서나 늘 우리 곁을 떠나지 않는, 고정적인 문제라는 겁니다. 세상 어떤 조직이 무한정으로 지식과 예산을 보유할 수 있을까요. 그렇다는 건 기술 부채가 최근 떠오르고 있는 가장 심각한 문제라는 뜻이 됩니다.” 하지만 관점에 따라 기술 부채도 늘 있어 왔던 문제로 인지할 수 있다고 올란디니는 설명을 이어간다. “결국 기술 부채라는 것이 그 무엇보다 효율성을 떨어트린다고도 볼 수 있거든요. 오래된 소프트웨어나 장비를 유지하고 관리하느라 돈, 시간, 노력 모두가 적잖이 들어가거든요. 어쩌면 그 자원을 미래 혁신에 투자한다면 기업의 상황이 많이 달라질 수 있습니다만, 현상 유지가 급하다 보니 그렇게는 생각이 되지 않는 게 보통입니다.” 기술 부채의 원인은 무엇인가? IT 기술을 사용하는 현대 조직들이라면 모두가 기술 부채를 어느 정도 가지고 있는 게 사실이지만, 더 심각한 조직이 있고 보다 덜 심각한 조직이 있다. 올란디니는 “주로 문제를 급하게 해결하기 위해 그 때 그 때 간단하고 저렴한 IT 솔루션을 반복해서 구매할 때 기술 부채가 가중되는 경향이 있다”고 설명한다. “보다 장기적인 관점을 가지고 구매 및 활용 전략을 세우고 결제를 하는 기업들은 부채가 좀 덜한 감이 있습니다. 급하게 단순한 솔루션을 사는 게 버릇이 되면 더 멀리까지 내다보지 못하게 되고, 그러면서 IT 환경이 복잡해지고, 예상치 못한 문제들이 생겨납니다.” 고시 역시 “기술 부채는 곧 전략 부족 때문에 생기는 것”이라고 정의한다. “그 외에 기준을 정립하지 않거나, 자원을 제대로 분해하지 않는 것도 기술 부채를 촉진시킵니다. 모든 기업들이 새로운 기술을 도입해 신제품이나 서비스를 기획함으로써 시장을 확대하고 싶어합니다. 다만 그렇게 하려면 엄청난 자원을 투자해야 하죠. 투자가 한쪽으로 쏠리게 되면 그 동안 꾸준히 회사의 효자 노릇을 했던 상품이나 서비스와 같은 캐시카우에 소홀히 하게 될 수 있고, 그것은 혁신을 꾀하지 않느니만 못한 결과를 낼 수 있습니다. 그런 두려움이 기술 부채를 방치하고, 그 방치가 곧 기술 부채를 키우게 됩니다.” 고시는 “이것이 혁신의 딜레마”라며 “현재의 경쟁력을 유지하면서 미래의 경쟁력도 동시에 키우는 것이 생각보다 난이도가 높다”고 설명한다. “그랬을 때 혁신을 차일피일 미루는 곳이 있고, 할 수 있는 일을 찾아 차근차근 앞으로 나아가는 곳이 있습니다. 오래된 소프트웨어를 갈아치우는 일도, 차일피일 미루는 조직이 있고, 적극적으로 대처하려는 조직이 있지요. 전자에 속하는 곳들이 생각보다 많습니다. 디지털 전환이나 혁신이라는 게 대기업들의 전유물이라고 생각하는 중소 기업들에서 특히 이런 현상이 많이 발견됩니다.” 기술 부채, 어떻게 극복해야 하는가 기술 부채의 해결 방법은, 위에서 언급된 기술 부채의 원인들을 제거하는 것이다. 즉 기업 운영과 IT 기술 도입에 대한 장기적인 전략과 계획부터 세우는 것이 중요하다. “기술 부채를 제거한다는 건 결국 급한 문제를 장기적 관점을 가지고 해결할 수 있느냐 없느냐의 사안이라고 볼 수 있습니다. 당장의 비행기 운행을 멈출 수 없으니 오래된 소프트웨어를 도무지 고칠 여력이 없었다는 게 사우스웨스트의 경우였죠. 소프트웨어가 너무나 오래됐다는 급한 문제를 장기적 관점으로 접근할 생각을 하지 못했습니다. 그게 터져서 그 때의 그 사건이 발생한 겁니다.” 로우코드 자동화 전문 업체 스윔레인(Swimlane)의 CSO인 코디 코넬(Cody Cornell)은 “새로운 제품과 서비스를 개발하고자 하는 의욕을 조금은 줄이더라도 오래된 기술들부터 해결하는 작업, 즉 기술 부채를 없애는 작업부터 시작하는 게 좋다”는 입장이다. “빚이 자꾸만 늘어나는 속도부터 줄이기라도 해야 합니다. 오래된 소프트웨어를 업데이트로 최신화 하거나 보완하는 방식을 사용할 수 있겠죠. 새로운 솔루션을 들여와 임직원들을 교육시키는 작업도 있을 수 있겠고요. 이런 식으로 실질적인 변화를 조직 안으로 끌고 들어와야 기술 부채를 조금씩 없애갈 수 있습니다.” 채무 줄이기에 조직 전체의 운영 기조가 맞춰진 후라면 남아 있는 소프트웨어 버그나 보안 취약점을 해결하는 데 필요한 ‘엔지니어링 자원’이 어느 정도나 되는지 확인해야 한다고 코넬은 강조한다. “기술적인 검토만을 말하는 게 아닙니다. 관리자들과 팀장들 사이에서 꽤나 많은 대화를 통해 어떤 기술이 어떤 업무에 어느 정도 비중으로 사용되고 있으며, 부서의 기능 수행에 있어서 해당 기술이 어느 정도 중요한 위치를 차지하고 있는지, 없어진다면 어떤 일이 발생할지를 종합적으로 알아내야 합니다. 그러면서 기술 부채의 해결을 위한 가장 현실적인 방안을 찾아가는 게 중요합니다.” 코넬의 설명이다. 자동화를 도입하는 게 강력한 해결책이 될 수 있다고 코넬은 설명을 추가한다. “이제 인간은 소프트웨어 개발의 상당 부분을 자동화로 처리할 수 있게 되었습니다. 이것을 응용할 수 있다면, 오래되거나 부실한 소프트웨어로 인해 발생하는 기술 부채는 빠르게 해결할 수도 있습니다. 특히 예산과 인적, 시간적 투자를 자동화로 상당히 줄일 수 있다는 게 큽니다.” 고딘은 “기술 부채를 줄이는 작업은 5년에 걸쳐 점진적으로 진행되는 게 알맞을 수도 있다”는 의견이다. “기술 부채를 해결한다는 건 물이 새는 지붕으로 올라가 구멍을 찾고 결국 물이 새지 않게 막는 것과 같습니다. 새는 물을 막아본 사람들은 다 알겠지만, 물길을 잡는 게 결코 쉬운 일이 아닙니다. 이 구멍을 막으면 저 구멍에서 새고, 저 구멍을 막으면 또 다른 구멍이 나타나죠. 막는 과정에서 새로운 구멍이 생기기도 합니다. 기술 부채도 그러한 작업이 될 공산이 큽니다. 즉 기술 부채라는 건 다 막을 때까지 막은 게 아니라는 뜻입니다. 좀 줄인다고 해서 큰 의미를 갖지 않습니다. 그러니 차라리 장기적으로 보고 모든 구멍을 다 막는 게 중요합니다.” 고시는 “빠르게 치고 나가려는 경영진을 설득해 진행 속도를 늦추는 것도 필요한 일”이라고 지적한다. “잘못된 기술로 더 많은 일을 하고, 더 새로운 걸 만들어내면 낼수록 기술 부채는 빠르게 쌓입니다. 언젠가 터질 것이 분명한데 화약만 계속 쌓는 꼴이죠. 빠르게 지금의 위험 물질들을 청소해 내고, 그 다음 새로운 일을 도모하는 게 훨씬 안전합니다. 경영진들이 이걸 알고 있어야 합니다.” 글 : 브라이언 호로비츠(Brian T. Horowitz), IT 칼럼니스트 [국제부 문정후 기자(globoan@boannews.com)] <저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지> |
|
|
|