디지털 코어의 시작
지난 글을 보며 동료들과 이야기를 하다가 아래 그림을 볼 때 두 가지가 떠올랐습니다.
첫 번째는 CI란 표현입니다. Configuration Element라는 표현을 볼 때, 2004년 CI라는 표현이 제가 아는 의미와 달리 쓰일 때가 떠올랐습니다. 빠른 코드 통합을 강조하던 시절이라 CI 하면 바로 Jenkins(당시 이름은 Hudson으로 기억함)를 떠올렸습니다. 그런데, 당시 프로젝트 내 역할이 형상 관리자(Configuration Manager)였던 터라 형상 관리에 대한 자료를 읽는데, 거기서 말하는 CI는 Configuration Identification을 말했습니다.
관리 대상에 대한 인식부터 단계를 두고 있어, 정의부터 제대로 하라는 말로 이해하고, '아하... 그렇구나'하고 돌연 흥미가 느껴졌습니다. 복잡한 요구사항에 대한 체계적인 관리라는 일이 시작도 하기 전에 따분하게 느껴졌는데, 의외로 모르던 체계를 배우는 일은 흥미를 갖게 했습니다. 하지만, 그 후론 다시 그런 일을 다시 할 기회는 없었습니다.
워낙 오래전 일이고 ITIL이니 ITSM이니 하는 틀이 제 업무에 아무 소용이 없게 된 상황이라 모르고 살았는데, 이렇게 아주 우연하게 떠오르자 별 뜻 없이 구글링을 해보았습니다. 위키피디아의 Configuration Item 페이지로 연결되었습니다.
The term configuration item (CI) refers to the fundamental structural unit of a configuration management system.
페이지를 쓱 훑어보는데 모니터링 기능에서 메타 정보로 아래 그림의 내용은 그대로 차용해도 손색이 없을 듯합니다.
참고 문서를 훑어보다가 제목에 DevOps가 들어 있어서 따라간 글에는 CMDB라는 표현을 그대로 쓰고 있었습니다. 개념적으로야 그때나 지금이나 그대로 일 수 있는데, CMDB를 구현체로 유지하는 일이 서비스 운영에 도움이 되는 일인지는 경험이 없어 모르겠습니다. 하지만, DevOps 시대에도 해당 지식 체계의 명맥은 그대로 살아남아 있다는 사실이 흥미롭습니다.
지난 회의에 쓰인 이미지를 보고 떠오른 두 번째 생각은 기능이 늘어날수록 설정 항목이 많아지고, 자연스럽게 설정이 불편해지는 일입니다. 아이폰을 좋아하지만, 설정 기능은 아이폰도 별 수 없는 듯합니다. 제가 설정 화면에서 버벅거리면 아내가 답답해하며 검색을 합니다. 저는 설정 화면에서 검색을 해야 한다는 사실을 처음에는 받아들이지 못했고, 지금도 여전히 썩 내키지 않습니다. 그러다 보니 자주 안 써서 잘 모르기도 합니다.
그러던 중에 최근에 설정을 바꾸지 못해 몇 주간 불편하게 쓰다가 우연히 해결한 일도 있습니다. 맥북 OS를 업데이트한 후에 전화가 오면 맥북에서 벨이 울려 곤혹이었습니다. 몇 차례나 맥북에서 알림이나 페이스타임 설정이 바꿔도 여전히 전화벨이 울렸습니다. 맥북에서는 '전화' 같은 설정 항목이 없어 포기하고 있었습니다.
그러던 차에 (끔찍해서 어지간하면 탐색을 안 하는 버릇이 있던) 아이폰 설정 화면에서 혹시나 하고 스크롤하다가 전화 항목이 있고 거기에 끄는 옵션이 있다는 사실을 발견해서 조치를 했습니다.
설정 항목이 자동으로 늘고, 디폴트 혹은 위자드 등의 기능으로 인지 없이 설정이 변경되도록 하는 일이 생기면서 점차 설정은 어려운 일이 되어 가는 듯합니다.
한편으로는 설정에 대한 사용자 경험을 전혀 다른 방식으로 고민해야 할 수도 있다는 생각을 합니다. 검색의 상당 부분이 추천으로 대체되다가 이제는 아예 ChatGPT 등장으로 인공 지능이 알아서 해 주는 일로 바뀌는 장면을 보면서 생겨난 느낌인지라 아직은 직감애 대해 근거를 제시할 수는 없지만 말이죠.
2. 도메인 이벤트 정의하기
3. 왜 디지털 코어인가?