Skip to main content

SynSpace

지속적인 테스트와 소프트웨어 아키올로지(Software Archaeology) 작업을 통해 Automotive SPICE 레벨 3 인증을 위한 과정을 순조롭게 진행하고 있습니다.

로고_신스페이스

SynSpace 소개

SynSpace는 품질 관리, 프로젝트 및 프로세스 관리, 교육과 같은 기술 및 프로세스 컨설팅을 전문으로 하는 글로벌 기업입니다. 특히 SynSpace Group은 체계적인 방법론 지식 제안, 전략적 컨설팅, 솔루션 도입 프로젝트에 전문성을 지니고 있습니다. SynSpace의 컨설팅 프로젝트에서는 부가가치 최적화를 최우선 목표로 삼고 있으며, 이를 위해 SynSpace Group은 기존 도구와 표준을 기반으로 맞춤형 접근 방식과 솔루션 모델을 개발하고 있습니다.

SynSpace Group에 대한 자세한 정보는 웹사이트를 참고해 주세요. www.synspace.com

SynSpace는 20년 넘게 고객의 최적화된 프로세스의 지속 가능한 개발을 지원해 왔습니다. 지속적 통합 및 개선 프로세스의 일환으로, SynSpace는 Axivion Suite를 활용하여 그들의 고객사인 자동차 부품 공급업체의 기존 소프트웨어를 새로 개발된 아키텍처와 일치시키는 작업을 진행했습니다.

Why Axivion?

Axivion은 Automotive SPICE와 같은 업계 표준을 준수하며 소프트웨어 코드를 개발할 수 있도록 지원합니다.

자동화된 검사를 통해 코드의 유지보수성을 향상시키고, 다양한 제품 버전에 활용할 수 있도록 합니다.

새로운 코드가 소프트웨어 아키텍처 사양과 일치하는지 자동으로 검증하며, 기존 코드를 수정할 때도 간편하게 적용할 수 있습니다.

Axivion은 허용되지 않는 코드 편차(Deviations)를 즉시 감지하여 코드가 커밋되기 전에 미리 검토할 수 있습니다.

정기적인 코드 분석을 통해 정의된 아키텍처에 대한 이해를 높일 수 있습니다.

Axivion은 개발자의 기존 업무와 자연스럽게 통합 가능합니다.

Axivion Suite는 혁신 그 자체입니다. 지속적인 테스트를 통해 개발자들은 학습 곡선(Learning curve)을 경험하며 각 아키텍처 요구 사항에 대한 수용도를 높일 수 있었습니다. 우리는 이번 소프트웨어 아키올로지(Software Archaeology) 프로젝트를 통해 Automotive SPICE 레벨 3 인증을 위해 한 걸음 나아갈 수 있었습니다.

SynSpace Group GmbH

The Challenge

SynSpace의 고객사인 자동차 부품 공급업체와의 프로젝트는 여러 프로그래밍 언어에 기반한 오픈소스 소프트웨어 솔루션을 중심으로 진행되고 있었습니다. 다양한 소프트웨어 구성 요소들은 수년간에 걸쳐 개발되어 다양한 차량 모델에 적용된 상태였으며, 계속해서 더 많은 새로운 차량 모델에 소프트웨어가 탑재될 예정이었습니다.

이러한 구성 요소들은 기술적으로는 충분히 훌륭했지만, Automotive SPICE 표준에 따른 프로세스에 맞춰 일관되게 개발되지는 않았다는 문제가 있었습니다. 또한 소프트웨어 아키텍처를 일관되게 유지할 수 있도록 하는 문서화된 요구사항이나 규격 역시 존재하지 않았습니다. 게다가 수 년에 걸쳐 개발된 소프트웨어는 매우 형식적인 수준의 테스트만 거친 상태였습니다.

오늘날의 자동차 제조사는 정기적으로 ASPICE 레벨 3 평가 기준을 준수하는 새로운 기능 업데이트가 필요합니다. 즉 자동차 부품 공급업체는 이에 따라 요구 사항뿐만 아니라 기존 소프트웨어의 아키텍처를 문서화해야 합니다. 문서화된 아키텍처는 새로운 코드와 기존 코드를  개발하는 기반이 되며, 코드가 재사용되는 상황이 있다면 그에 맞게 아키텍처를 수정할 필요성도 있습니다. 이 때문에 자동차 부품 공급업체는 최종적으로 SPICE 레벨 3 요구 사항을 충족할 수 있는 시스템을 구현하기 위해 컨설팅 회사인 SynSpace에 도움을 의뢰했습니다.

The Solution

SynSpace는 컨설턴트로서 고객과 합의한 품질 기준을 목표로 솔루션 전략을 수립하는 역할을 맡았습니다. 자동차 부품 공급업체와 그들의 고객사는 기존 코드와 새로운 코드의 품질에 대한 기준을 합의했습니다. "운영 중인 시스템은 절대 변경하지 않는다"는 원칙 하에 위험성 평가(Risk Assessment)가 실시되었으며, Automotive SPICE 표준에 따라 유효한 절차가 수립되었습니다. 이 과정에는 새로운 소프트웨어 개발 및 수년에 걸쳐 개발해 왔지만 아키텍처가 존재하지 않는 기존 소프트웨어의 추가 개발, 그리고 이 두 가지 프로세스를 비교하는 작업도 포함되었습니다. 

결과적으로, SynSpace는 개발 프로세스에 소프트웨어 아키올로지(Software Archaeology) 접근법을 도입했습니다. 문서화된 아키텍처를 기반으로 상위 수준의 아키텍처가 정의되었으며, 이 아키텍처에 맞게 개발 프로세스를 조정했습니다. 물론 기존 소프트웨어는 기능적 요구 사항과 비기능적 요구 사항이 사후적으로 정의되었기 때문에 아키텍처와 완전히 일치시키기는 어려웠습니다. 기존 코드는 수정이 필요한 경우에만 아키텍처에 맞게 조정이 되었으며, 새로운 코드는 아키텍처 사양을 반드시 준수해야 하기 때문에 문서화된 아키텍처와 일치하는 작업이 이루어졌습니다.

이러한 작업에 사용된 Axivion Suite는 코드와 아키텍처를 검증하는 데 사용되는 도구입니다. 이를 통해 지속적 통합 및 개선 프로세스의 일환으로 소프트웨어를 최근 설계된 아키텍처와 일치시킬 수 있습니다. Axivion Suite는 지속적인 테스트를 용이하게 하는 동시에 테스트의 품질을 지속적으로 향상시킵니다. 이 솔루션은 지속적 통합(CI, Continuous Integration)과 Git Pull Request(PR) 워크플로우를 통한 애자일(Agile) 방식으로 구현되고 있습니다.

The Success

Axivion Suite를 사용하면 기존 코드(변경되지 않은 부분)와 새로운 코드(변경되었거나 추가된 부분)를 델타 분석(변경점 분석)을 통해 별도로 확인할 수 있습니다. Axivion Suite는 정적 코드 분석뿐만 아니라 프로세스에 통합된 다양한 테스트를 가능하게 하며, 아키텍처 위반 사항을 즉시 식별할 수 있도록 지원합니다. 즉, 코드가 정의된 아키텍처에서 벗어나는 허용되지 않는 편차가 있을 경우, 이를 즉시 파악할 수 있습니다. 또한, 아키텍처 편차와 정적 코드 분석에서 발생한 경고들을 상호 비교하고 적절히 평가할 수 있습니다. 이러한 기능은 곧 위험성 평가의 탄탄한 기반이 되며, 다시 말해 변경 사항이 반드시 필요한지, 실질적으로 유용한지, 또는 예측하기 어려운 위험을 수반하는지에 대한 판단을 내리는 데 도움을 줍니다.

SynSpace 팀과 그들의 고객사는 Axivion Suite를 사용하여 구성 시스템에 접근할 수 있는 지속적인 테스트 프로세스를 보장하여 테스트의 품질을 지속적으로 향상시킬 수 있었습니다. Axivion을 통한 정기적인 테스트 덕분에 코드 프로그래밍에 대한 개발자들의 수용도를 높일 수 있었으며, 근본적인 아키텍처에 대한 이해도를 향상시키는 데에도 도움을 받을 수 있었습니다.

SynSpace의 프로젝트는 앞으로 10년간 계속될 예정입니다. 이 기간 동안 기존 코드를 기반으로 새로운 소프트웨어 기능이 구현될 예정이며, 지속적 통합 및 개선 프로세스의 일환으로 소프트웨어를 아키텍처에 맞게 조정하는 과정을 거칠 것입니다. 프로젝트는 아직 초기 단계이지만, SynSpace의 고객인 자동차 부품 공급업체의 엔지니어링 및 품질 보증 부서는 이미 SynSpace 프로젝트의 성과에 대해 높은 만족도를 보이고 있습니다. SynSpace 역시 SPICE 레벨 3 인증 평가를 수행하는 데 방해가 될만한 요소는 없었다는 결과를 얻어 만족했습니다. 현재까지도 SynSpace의 고객인 자동차 부품 공급업체는 ASPICE 레벨 3 인증이라는 목표를 달성하기 위해 순조롭게 개발을 진행하고 있습니다.

더 자세한 정보가 필요하신가요?

Axivion이 소프트웨어 코드 품질을 어떻게 향상시킬 수 있는지 알아보고 싶으시다면, 아래 버튼을 통해 데모를 요청하거나 Qt 전문가와 상담해보세요.

 

문의하기