임베디드 시스템을 개발하는 데 가장 많이 사용되는 개발 언어는 ‘C’다. 뛰어난 유연성과 포인터 연산이 가능하다는 점에서 개발자들이 선호했다. 하지만 SW가 점점 복잡해짐에 따라 이러한 C언어의 장점들이 안정적인 SW를 만드는 데 오히려 방해요소가 되기도 한다. 실례로 1985년에는 일부 프로그래머가 잘못 작성한 SW의 사소한 결함 때문에 Therac25라는 방사선 치료기가 소중한 생명들을 앗아갔다. 보통 회사의 프로젝트팀 내부에서도 사소한 SW 버그 때문에 프로젝트가 실패하거나 일정이 지연되는 일이 반복되기도 한다.
이러한 SW의 안정성을 위협하는 주된 원인으로는 개발자들의 잘못된 습관이나 부주의로 의한 일반적인 버그, 실제 실행 시에만 간헐적으로 나타나는 런타임 에러, 의미 없는 함수나 변수의 이름으로 인한 코드 이해의 어려움 등을 들 수 있다. 위험요소를 최대한 줄이면서 안정적인 SW를 개발하려면 미리 정의된 코딩 표준에 따라 코딩해야 하고, 테스트 로직을 작성해 디버깅 작업을 반복하는 것이 무엇보다 중요하다. 하지만 갈수록 SW가 복잡해지는 현 상황에서 개발자가 직접 문제가 발생한 부분을 일일이 찾아내고 확인해 가는 디버깅 방식은 이제 거의 불가능하다.
세계 선두업체들은 이미 이러한 산업의 트렌드를 읽고 툴을 활용해 효율적으로 디버깅하는 데 많은 투자를 하고 있고, 실제적으로도 개발시간 단축과 제품의 품질 향상이라는 두 가지 수확을 동시에 얻고 있다. 그동안 한국 업체에 밀려 고전하던 글로벌 모바일 업체가 슬림형 폰으로 시장을 다시 지배할 수 있었던 것도 ‘모델링 a 설계 a 코딩 a 테스팅’에 이르는 전 개발 프로세스를 재정립하고 툴을 효율적으로 활용한 노력의 결과다.
이제 우리도 변해야 한다. 우리 업체가 글로벌 경쟁자들을 앞서가기 위해서는 구태의연하게 책상에 앉아 있는 시간을 늘리기보다는, 효율적으로 품질 높은 SW를 개발할 수 있도록 경영층의 인식 전환과 실무자의 적극적인 의견개진이 필요한 때다. 수작업 방식에 의존하는 기존 SW 테스팅 패러다임을 과감히 버리고 효과적인 툴을 도입해 세계시장을 석권할 수 있는 높은 품질의 제품이 탄생하기를 간절히 바란다.
◇이창호 MDS테크놀로지 changho@mdstec.com
오피니언 많이 본 뉴스
-
1
[ET시론]AI 인프라, 대한민국의 새로운 해자(垓子)를 쌓아라
-
2
[ET단상] 다양한 OS환경 고려한 제로 트러스트가 필요한 이유
-
3
[기고] 딥시크의 경고…혁신·생태계·인재 부족한 韓
-
4
[보안칼럼]기업의 경쟁력을 높이는 개인정보 보호와 관리 방안
-
5
[ESG칼럼] ESG 경영 내재화에 힘을 쏟을 때
-
6
[ET시론] 정부 R&D 투자의 경제적 유발효과는 어떠한가?
-
7
[ET시론]2050 탄소중립: 탄녹위 2기의 도전과 과제
-
8
[ET단상]국가경쟁력 혁신, 대학연구소 활성화에 달려있다
-
9
[콘텐츠칼럼]게임산업 경쟁력 강화를 위한 정책 수립 및 지원 방안
-
10
[정유신의 핀테크 스토리]싱가포르, 핀테크 부문 아시아 톱 허브로 자리매김
브랜드 뉴스룸
×