SLEXN

복잡한 소프트웨어 개발을 지원하는 Polarion의 강력한 기능

모든 소프트웨어 관련 활동에서 협업을 지원하는 중앙 허브 역할과 신뢰할 수 있는 정보 소스 역할을 동시에 수행할 수 있는 강력한 도구.

많은 고객이 소프트웨어 개발 프로세스를 관리하기 위한 핵심 도구로 Polarion을 사용합니다. 이러한 고객들은 다음과 같은 주요 목표를 달성하고자 하는 것으로 나타났습니다:

  • 팀 내 협업 극대화
  • 생성된 모든 자산에 대한 완벽한 추적성 보장
  • 생산성 극대화를 위한 효과적인 비즈니스 워크플로우 정의 및 시행
  • 가능한 한 빨리 소프트웨어를 개발하기 위해 더 많이, 더 자주 재사용하기


이러한 목표를 달성하기 위해서는 다양한 정보 자산을 연결하여 정보에 입각한 의사결정을 내리는 모든 소프트웨어 관련 활동에서 협업을 지원하는 중앙 허브 역할과 신뢰할 수 있는 정보 소스 역할을 동시에 수행할 수 있는 강력한 도구입니다.

사용자 요구 사항, 제품 및 시스템 요구 사항

소프트웨어 오케스트레이션 작업을 시작하면 고객 또는 사용자 요구 사항, 제품 요구 사항 또는 시스템 요구 사항을 수집하고 식별하는 상위 수준에서 시작합니다. 이러한 요소는 제안요청서(RFP), 세부 고객 사양, 마케팅 조직, OEM(주문자 상표 부착 생산업체), 모델링 도구 또는 Siemens Teamcenter와 같은 제품 라이프사이클 관리(PLM) 솔루션과 같은 다른 도구 등 다양한 출처에서 비롯되는 경우가 많습니다. Polarion의 다재다능함은 다양한 고객의 고유한 작업 스타일, 산업 표준 및 프로세스를 수용하기 위해 이러한 요구 사항을 다양한 크기와 형태로 가져오거나 원활하게 관리할 수 있는 능력에서 잘 드러납니다. 이러한 기능은 이후 모든 소프트웨어 개발의 초석이 되어 작성되는 각 코드 라인에 대한 명확한 소스와 목적을 제공하므로 매우 중요합니다.

요구 사항은 다양한 형태와 다양한 출처에서 나올 수 있습니다.

소프트웨어 요구 사항 정의

Polarion에서 소프트웨어 오케스트레이션 관리 프로세스는 포트폴리오 관리 전략과 밀접하게 연결될 수 있는 상위 수준의 요구사항을 기반으로 소프트웨어 요구사항을 정의하기 시작할 때 발생합니다. 이 단계에서는 유해 위험 분석 및 위험 평가(HARA) 및 위협 분석 및 위험 평가(TARA)를 통해 식별된 잠재적 위험을 해결하는 작업도 포함될 수 있습니다. 이 단계에서 소프트웨어 요구사항은 일반적으로 상세한 텍스트 사양으로 작성되거나 에픽 및 사용자 스토리의 형태로 요약될 수 있습니다. 명확성과 정확성을 높이기 위해 이러한 요구사항은 Rhapsody 및 Simulink와 같은 도구의 모델을 사용하여 더욱 정교화할 수 있습니다.

Matlab Simulink와 통합된 Polarion의 예시

CI/CD 및 DevSecOps를 통한 소프트웨어 요구 사항 구현

오늘날의 역동적인 소프트웨어 개발 환경에서 기업들은 애자일 방법론을 널리 채택하여 에픽과 사용자 스토리에 초점을 맞춘 짧은 반복 스프린트를 더 큰 릴리스 트레인의 일부로 삼고 있습니다. Polarion은 이러한 맥락에서 소프트웨어 팀이 이러한 스토리의 진행 상황을 효율적으로 할당, 계획 및 모니터링할 수 있도록 지원합니다. 애자일 프로세스를 관리하기 위해 Jira 또는 Azure DevOps를 대신 사용하는 경우, 이를 Polarion과 통합하여 소프트웨어 구현의 모든 측면이 더 큰 그림에 연결되도록 할 수 있습니다. 개발자는 통합 개발 환경(IDE)에서 코딩하고 단위 테스트를 생성하여 기여합니다.

소프트웨어 팀을 위한 스프린트 계획의 예시

DevSecOps의 원칙을 통합하여 개발 프로세스의 모든 단계에 보안이 통합되어 있습니다. 개발자가 GitHub 또는 GitLab과 같은 리포지토리에 코드를 저장하면 추적성 및 상태 업데이트를 위해 Polarion의 사용자 스토리에 다시 연결될 뿐만 아니라 엄격한 보안 검사도 거칩니다. 이러한 통합을 통해 보안을 사후에 고려하는 것이 아니라 개발 라이프사이클의 일부로 지속적으로 고려할 수 있습니다.

또한, 기능 및 보안 테스트가 모두 수행되는 지속적 통합/지속적 배포(CI/CD) 파이프라인이 자동으로 트리거됩니다. 보안 취약점을 포함한 결과는 Polarion에 다시 보고됩니다. 테스트에 실패하면 추가 조사 및 해결을 위해 Polarion에서 자동으로 이슈를 생성합니다.

Polarion을 CI/CD와 통합하는 방법의 예시

소프트웨어 워크플로

Polarion 워크플로는 소프트웨어 구현 프로세스를 간소화하여 CI/CD 파이프라인 실행으로 이어집니다. 소프트웨어 구축에 대한 체계적이고 일관된 접근 방식을 제공합니다. 작동 방식은 다음과 같습니다:

Polarion의 사용자 스토리가 ‘진행 중’으로 표시되면 자동으로 GitLab에 새 브랜치가 만들어집니다. 개발자는 이 브랜치를 사용하여 해당 사용자 스토리에 대한 코드를 작성합니다. 코드 작성 후 변경 사항을 적용하면 일련의 자동화된 작업이 시작됩니다. Jenkins가 코드를 빌드하고 자동화된 테스트를 실행합니다. 동시에 병합 요청이 GitLab에 생성됩니다.

자동화된 테스트가 성공하면 Merge 요청이 승인되고 브랜치가 메인 브랜치에 병합됩니다. 이 병합이 완료되면 Polarion에 업데이트가 트리거되어 병합이 성공했는지 여부가 표시됩니다. 이 전체 프로세스를 통해 소프트웨어 개발의 각 단계가 명확하고 반복 가능하며 효율적으로 이루어집니다.

GitLab을 사용한 소프트웨어 워크플로 예시

소프트웨어 요구 사항 검증 및 시뮬레이션

자동화된 테스트는 소프트웨어 품질을 보장하는 데 중요한 역할을 합니다. 이러한 테스트는 CI/CD 파이프라인을 통해 실행되므로 그 결과가 Polarion에 원활하게 통합됩니다. 테스트 대시보드에서 테스트 결과를 쉽게 모니터링할 수 있습니다. 테스트 실패를 빠르게 발견하여 무엇이 잘못되었는지 명확하게 파악할 수 있습니다. 또한 모든 소프트웨어 구성 요소가 철저하게 테스트되고 검증되었는지 확인할 수 있는 훌륭한 도구입니다. 이러한 즉각적인 피드백은 소프트웨어 개발의 높은 표준을 유지하는 데 필수적입니다.

테스트 진행 상황을 보여주는 테스트 대시보드

결함 및 취약점 해결

소프트웨어는 시간이 지남에 따라 필연적으로 결함이나 취약점이 발생합니다. 이러한 문제는 완벽한 투명성을 보장하기 위해 Polarion에서 추적됩니다. QA 및 지원 팀은 결함을 기록하고, 취약점은 SiG의 Sigrid와 같은 취약점 스캔 솔루션에서 직접 가져옵니다. Polarion 내에서 이러한 항목은 향후 소프트웨어 릴리스에서 해결될 수 있도록 우선순위를 지정합니다. 평가 프로세스에는 비즈니스에 미치는 영향을 기준으로 결함을 측정하고 CVSS 점수를 통해 취약성을 평가하는 과정이 포함됩니다. 또한 설계 단계에서 작성된 TARA(위협 분석 및 위험 평가) 분석을 사용하여 소프트웨어의 특정 취약점의 악용 가능성을 결정할 수 있습니다. 이러한 전략적 접근 방식은 소프트웨어 팀이 가장 중요한 문제에 효과적으로 노력과 리소스를 집중할 수 있도록 지원합니다.

대시보드 및 시각화

Polarion은 추적성 매트릭스와 테스트 보고서를 통해 구현 및 검증 단계에서 모든 요구사항이 충족되고 있는지 쉽게 확인할 수 있습니다. 소스 코드에서 사용자 스토리, 테스트 결과, 또는 테스트 결과에서 테스트 케이스, 요구 사항까지 추적할 수 있는 Polarion은 모든 규정 준수 및 테스트 품질 요구 사항을 충족하는 데 필요한 리소스가 됩니다. 강력한 시각화 도구를 통해 고객은 진행 중인 프로세스를 보여주는 위젯을 사용하여 자신만의 대시보드를 만들 수 있습니다. 이는 일상적인 워크플로우에 참여하지 않는 사람들이 무슨 일이 일어나고 있는지, 어떻게 진행되고 있는지 빠르게 이해할 수 있도록 도와주기 때문에 유용합니다. 일상적인 세부 사항에 깊이 관여하지 않더라도 Polarion은 현재 소프트웨어의 개발 상태를 명확하게 파악할 수 있는 기능을 제공합니다.

Polarion에서는 여러 가지 방법으로 추적성을 표시할 수 있습니다.

변경 및 재사용

소프트웨어가 릴리스된 후 특정 컴포넌트를 변경하거나 재사용해야 하는 경우 릴리스 아티팩트를 다시 방문하면 쉽게 변경할 수 있습니다. 여기에서 업데이트 또는 용도 변경이 필요한 특정 요구 사항을 찾을 수 있습니다. 그런 다음 영향 분석이라는 프로세스를 통해 이러한 요구 사항과 연결된 모든 관련 소프트웨어 아티팩트를 식별합니다. 그런 다음 이렇게 식별된 구성 요소를 분기할 수 있습니다. 이 브랜치 내에서 이러한 업데이트 작업을 수행하여 새 소프트웨어 버전 또는 완전히 새로운 소프트웨어 프로젝트에 원활하게 통합할 수 있습니다.

주요 내용

이 블로그 게시물의 핵심은 시스템 엔지니어링의 광범위한 범위 내에서 소프트웨어 개발을 조화시키는 데 있어 Polarion의 뚜렷한 역할을 강조하는 것입니다. 이는 단순히 소프트웨어에 관한 것이 아니라 소프트웨어를 더 큰 엔지니어링 그림에 통합하여 다양한 팀이 서로 다른 방법론을 따르고 동기화 상태를 유지할 수 있도록 하는 것입니다. 이러한 모든 고유한 기능을 통해 폴라리온은 차세대 제품 설계의 맥락에서 소프트웨어 정의 제품(소프트웨어 정의 차량, 소프트웨어 정의 비행기 등) 및 앱 기반 소프트웨어 아키텍처의 라이프사이클을 주도할 수 있습니다.

지금 바로 Polarion을 직접 체험하세요

Polarion을 경험할 준비가 되셨나요? 지금 바로 Polarion 시승에 접속하여 여정을 시작하세요. 직관적인 앱 내 튜토리얼이 모든 단계를 안내하여 놓치는 것이 없도록 도와드립니다.

게시물 작성:  Jean-François Thibeault

소스: The power of Polarion to orchestrate complex software development

Anudari Gankhuyag

Add comment

Follow us

Don't be shy, get in touch. We love meeting interesting people and making new friends.

Most popular

Most discussed