Automotive SPICE® 소개
Automotive SPICE®는 한마디로 자동차 임베디드 시스템 개발 프로세스 수준을 심사하기 위한 방법과 참조 프로세스이며, 컴퓨터 소프트웨어의 개발 프로세스에 대한 표준인 ISO/IEC 15504 Information technology — Process assessment의 자동차 산업용 버전입니다.
세온ENS CMMI® V2.0 소개
SEON ENS Engineering Service
ISO/IEC 15504가 만들어지게 된 프로젝트 이름이 SPICE(Software Process Improvement and Capability dEtermination)입니다. 이것은 컴퓨터 SW 개발 프로세스 및 관련된 사업 관리 기능에 대한 기술 표준 문서의 집합입니다. (A set of technical standard documents for the computer software development process and related business management functions.)
Automotive SPICE®생성 배경
독일 완성차 업체(OEM)들이 차량에서 중요도가 커지는 소프트웨어의 개발에 대응하기 위해 그룹 Herstellerinitiative Software (OEM Initiative Software, 일명 HIS라고 한다.)를 조직하고 소프트웨어 개발 업체들의 개발 역량 평가 및 개선을 위해 사용하기 시작하였습니다. 처음에 CMMI가 더 고려가 되었으나 당시 소유권을 갖고 있던 Software Engineering Institute, SEI가 너무 많은 비용을 요구하는 바람에 SPICE를 채택하게 되었다는 일화가 있습니다. 2004년 SPICE로 결정한 후 Automotive SIG (Special Interesting Group)이 Automotive SPICE® 참조 및 심사 모델을 만들었습니다. 2006년에 심사원 제도인 intacs가 설립되고 HIS가 Automotive SPICE® 심사를 위임했습니다. 이때부터 VDA의 Working Group 13에서 Automotive SPICE® 개발을 맡게 되었고 2010년 V2.5가 발표되고 ISO/IEC15504가 ISO 330xx 시리즈로 개편됨에 따라 2015년 V3.0, 2017년에 V3.1로 판올림을 하였습니다.
SPICE, Process categories and groups
다음은 V3.1에 있는 프로세스들이다.
2차원 프로세스 모델
한 차원 높아지는 번뜩이는 아이디어라고 할까? 필립 크로스비가 고안한 QMMG는 어느 회사나 프로세스를 이행하고 있지만 거기에는 다른 차원이 있다고 통찰한 것으로서 참 대단해 보입니다. 하느냐 안하느냐? 즉, 0과 1의 이분법이 아닌 더 많은 눈금이 있을 수 있다고 생각한 것입니다. SPICE는 이런 차이를 Measurement framework (ISO/IEC 33020)으로 정리를 해 두었습니다. 쉽게 말하면 프로세스 능력 차원의 눈금을 정의한 것이죠.
능력 차원 (Capability Dimension)
프로세스가 단순히 수행만 된다면 Level 1 입니다. 프로세스가 계획된 방법으로 수행된다면 그것은 Level 2 입니다. 프로세스가 조직의 표준이 있고 그것이 적용될 상황에 따라 적절히 정의되어 사용되고 그 경혐을 다시 표준 프로세스의 개선에 사용되는 체계라면 Level 3입니다. 이제 프로세스의 성과가 정량적으로 관리되어 예측할 수 있다면 Level 4이고 거기에 사업 목표 달성을 위해 지속적으로 개선이 이루어 진다면 Level 5라고 할 수 있습니다.
2 dimensional process model
프로세스 모델 (Process Model)
Capability Level을 측정하기 위해서 각 Level과 그 Level 아래에 속한 프로세스 속성을 들여다 봐야 합니다. 예를 들어 CL2를 평가하려면 PA 1.1 Process Performance 속성과 PA 2.1/2.2 총 3개의 속성을 봐야 합니다. 프로세스 속성의 달성(Achievement) 정도를 4개의 Scale로 성격을 규정(Characterize) 짓는데 Fully, Largely, Partially, Not achieved가 그것입니다, 프로세스 속성은 관측 가능하지 않으므로 이들의 성격을 규정하기 위해서는 PA 1.1의 경우는 프로세스 성과(Process outcome)과 나머지 PA의 경우는 프로세스 속성 성과(Process attribute outcome = Achievement)의 달성 여부를 판단하여 하는데 Outcome과 Achievement를 직접적으로 판단하는 것은 또 어렵기 때문에 프로세스 지시자(Process Indicator)를 사용하게 됩니다. 즉, Outcome에 대해서는 Base Practice들을, Achievement에 대해서는 Generic Practice들을 Indicator로서 조사하게 됩니다. ISO 15504-2 또는 33020에 따르면, 심사 시에 Process Indicator를 조사하고 Process Outcome과 Process Achievement의 성격을 규정하고 최종적으로 프로세스 속성의 달성이 성격을 규정하게 되지만, 사실 상 관습적으로는 Indicator의 달성 성격을 규정하여 프로세스 속성의 달성에 대한 성격을 결정하는 방법을 사용하고 있습니다.
프로세스 속성 (Process Attributes)
국내에서도 Automotive SPICE® 교육이 많이 이루어지고 있으나 대부분 심사원 교육입니다. 정말 필요한 것은 모델 교육인데 안타깝게도 자주 제공되지는 않습니다. 모델을 정확히 이해해야 현실에서 이행되는 프로세스의 수준을 정확하게 판단할 수 있는데 … 모델을 직접 작성한 사람만이 정확하게 알 수 있을 테지만 Automotive SPICE를 주도하고 있는 주요 독일 업체들도 모델 교육은 대부분 컨설팅을 받으라는 식으로 말하고 있습니다. 상당히 사업적(?) 접근으로 보이는 부분이며 경계해야 할 부분이라고 생각합니다. 하지만, 모델의 내용은 모두 시스템/소프트웨어 개발 및 개발 프로세스와 관련된 오랜 경험과 지식에 근거한 것이므로 이들에 대한 이해를 한다면 비교적 정확한 해석과 적용을 할 수 있다. 물론 커뮤니티와의 교류를 통한 공유도 간과해서는 안된다. 세온ENS는 Automotive SPICE 컨퍼런스 (독일, 중국) 및 Gate4SPICE에 지속적으로 참여하고 Networking을 통한 지식/경험 교류 및 교육/심사 주선도 빼놓지 않고 수행하고 있습니다.