Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
Offcanvas
1111Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.

TechnicalDebt

우리가 알던 '기술 부채' 통념은 모두 틀렸다

“빚은 여느 덫과 다르지 않다. 들어가기는 쉽고, 빠져나오기는 어렵다.” (조시 빌링스, 미국의 유머 작가) IT 분야에서도 마찬가지다. 삶에서와 똑같이 말 자체만으로도 스트레스를 받고 짐스러운 느낌이 든다. 소프트웨어 엔지니어링에서 '기술 부채(Technical Debt)'는 일반적으로 노화하면서 엔지니어의 귀중한 시간을 잡아먹는 시스템을 가리킨다. 기술 부채는 관리되고 바람직하게 유지되고 최소화돼야 한다. 이것은 남은 업무의 가장 아래에 위치하며, 궁극적으로 시스템을 실패로 이끌기도 한다.   그러나 꼭 이런 식일 필요가 있을까? 진보적인 엔지니어링 기업은 오히려 기술 부채가 모든 소프트웨어 개발자의 핵심 업무여야 하고 기술 부채를 선제적으로 관리해 실패를 피할 수 있을 뿐 아니라,실제로 경쟁에서 우위를 점할 수 있다고 말한다. 어떻게 해서 가능한 것일까? 지금부터 차근차근 살펴보자.   기술 부채의 정의 '기술 부채'라는 용어는 1992년 컴퓨터 과학자 와드 커닝험이 처음 만들었다. 단기적 솔루션을 기술 시스템에 구축하는 업무에는 일련의 취사선택이 필요한데 선택받지 못한 업무가 결국 미래 엔지니어링 작업 형태로 남아 마치 갚아야 할 부채처럼 된다는 생각이다. 2003년 소프트웨어 개발자인 마틴 파울러는 기술 부채를 다음과 같이 설명했다.   "일을 성급하고 지저분하게 처리하면 기술 부채가 쌓이는데, 이는 금융 부채와 비슷하다. 금융 부채처럼 이자를 지불해야 하고, 결국은 나중에 개발해야만 하는 추가적인 업무의 형태로 남는다. 2018년 스트라이프(Stripe)의 개발자 계수(Developer Coefficient) 보고서에 따르면, 평균적인 소프트웨어 개발자는 기술 부채를 처리하는 데 일주일에 13시간 이상을 쓴다. 애플리케이션이 갈수록 복잡해지면서 부채를 관리하는 일이 매우 중요해졌다. 스텝사이즈(Stepsize)의 CEO인 알렉산더 오메여는 “개발자가 처리하리라 결정한 코드는 무엇이든 기술 부채다”라고 말했다...

기술부채 TechnicalDebt 2022.06.03

ITWorld 용어풀이 | 기술적 부채

'기술적 부채(Technical debt)'는 소프트웨어 개발 과정에서 장기적으로 바람직한 접근법 대신 당장 편한 해법을 택해 발생하는 추가적 작업 비용을 가리킵니다. '디자인 부채(design debt)', '코드 부채(code debt)'라고도 불립니다. 예를 들어 어떤 코드를 수정하면 연관된 코드와 문서화 작업을 함께 해야 하는데, 여러 이유로 이 작업을 미뤄 두면 결국 언젠가는 해야 할 작업, 즉 '빚'이 됩니다. 이 개념은 '금융 부채'와 비교하면 더 쉽게 이해할 수 있습니다. 부채를 상환하지 않으면 이자를 내야 하고, 이 이자가 쌓이면 재정 상황이 나빠지죠. 기술적 부채도 처음에는 큰 부담이 아니지만 방치하면 기존 시스템을 전면적으로 수정하기도, 그대로 운영하기도 힘든 난감한 상황이 됩니다. 오픈소스에서는 로컬에서 수정한 것을 업스트림 프로젝트로 보내지 않는 것을 기술적 부채로 보기도 합니다. 기술적 부채가 발생하는 이유는 다양합니다. 대표적인 것이 불충분한 선행 정의입니다. 요건 파악이나 설계를 제대로 하지 않고 개발을 진행하는 것이죠. 개발 기간을 조금 줄일 수 있지만 결국 더 많은 재작업을 해야 할 수 있습니다. 이 밖에 더 빠른 릴리즈를 요구하는 현업의 압박, 모듈화되지 않은 컴포넌트, 테스트와 문서화의 부족, 빈약한 협업 등도 기술적 부채가 생기는 원인입니다. 상당한 기술적 부채를 안은 채 릴리즈하면 훗날 이를 바로잡는 부담이 급격히 커집니다. 이미 사용하고 있는 소프트웨어 코드를 수정해야 하므로 장애 위험도 감수해야 합니다. 클라우드 업체라면 SLA(Service Level Agreement)에 따른 법적 책임을 져야 할 수도 있습니다. 이 때문에 많은 기업이 기술적 부채를 그대로 안고 시스템을 운영합니다. 마치 더 많은 이자를 감당하며 해결을 미루는 것과 같습니다. 그렇다고 기술적 부채를 무조건 나쁜 것으로 볼 필요는 없습니다. 예를 들어...

용어풀이 기술적부채 TechnicalDebt 2018.02.23

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.