외부 컨설턴트의 의견을 수렴 한 모든 프로젝트에서 어떤 종류의 구성 관리를 사용하고 있는지에 대한 질문이있었습니다. 어떤 경우에도 컨설턴트가 구성 관리를 정의 할 수 없었습니다. 그래서 무엇입니까?
외부 컨설턴트의 의견을 수렴 한 모든 프로젝트에서 어떤 종류의 구성 관리를 사용하고 있는지에 대한 질문이있었습니다. 어떤 경우에도 컨설턴트가 구성 관리를 정의 할 수 없었습니다. 그래서 무엇입니까?
답변:
SCM (Software Configuration Management)은 다음에 대한 답변으로 요약됩니다.
이것은 차례로 상당히 크고 추악한 "프로세스"로 성장할 수 있습니다. 프로세스 문제는 대부분의 개발자가 SCM을 언급하면서 눈부신 이유입니다. 이는 소스 파일, 결함 및 요구 사항을 추적하는 것을 의미하기 때문입니다. 변경 사항을 감사 할 수 있도록 모든 것을 묶습니다 (이는 관리 관점에서 이상적인 환경으로, 필요한 관리자가 필요한 리소스를 더 잘 볼 수있는 훌륭한 관리자 도구를 제공하므로 ).
이것은 실제로 소프트웨어 자산 추적 인 ITIL 구성 관리, 실행중인 소프트웨어 (어떤 서버 / 워크 스테이션) 및 해당 소프트웨어의 설정은 다릅니다.
다시 말해 컨설턴트가 더 알고 싶어하는 것은 회사 / 개발 그룹이 내 답변 맨 위에있는 세 가지 질문에 어떻게 대답하는지입니다.
구성 관리는 시간이 지남에 따라 많은 것을 의미했습니다. 개발자 나 개발자보다 개발자 나 운영자에게 더 중요하다고 생각합니다. 운영 담당자가 서버를 계속 작동 시키려면 시스템 설정, 구성 관리 및 시스템 실행에 대해 걱정해야합니다. 컴퓨터에 로그인하여 소프트웨어 설치를 시작하고 컴퓨터에서 구성 파일을 변경하면 해당 구성을 관리하지 않는 것입니다. 기계가 죽으면 어떻게됩니까? 누군가가 그 컴퓨터에서 구성 파일을 변경하고 모든 것이 놀라기 시작하면 어떻게됩니까? 실행중인 것과 똑같이 구성된 다른 컴퓨터를 시작해야하는 경우 어떻게합니까? 당신은 그것을 할 수 있습니다?
구성 관리 전략이 없으면 할 수 없습니다. 그것이 중요한 이유입니다. 반복성에 관한 것입니다. 개발자는 사람들이하는 작업과는 달리 반복성에 접근하므로 다른 일을 반복해야합니다.
이를 수행하는 데 도움이되는 훌륭한 오픈 소스 도구 인 Chef, Capistrano, Cook 및 SVN이 있습니다. 개발자가 SVN을 사용해야하는 이유는 무엇입니까? 구성 파일, 시스템을 구성하는 데 사용하는 스크립트를 체크인하고 해당 버전을 추적하십시오. 조직의 해당 부분은 조직을 계속 운영하는 데 필수적입니다. 당신은 그것들을 풀고 싶지 않습니다.