“절차를 체계화 하기” 보다 좋은 “절차를 자동화하기!!!”

우리는 반복되는 작업의 실수를 줄이기 위해서 작업의 절차를 체계화하는 작업을 하게 됩니다.

항상 빌드시 마다, 리소스의 버전을 올린 다음 배포한다고 할 때, 그냥 담당자가 알아서 할 수

있습니다. 그런데, 담당자가 차례를 잘못 기억할 수 도 있고, 담당자가 아닌, 다른 사람이

해당 작업을 수행해야 하는 경우도 생길 수 있습니다.

  그렇다면, 이런 과정에서 실수하게 되는 것들을 어떻게 하면, 줄이거나, 아예, 제로로

만들 수 있을까요?

첫번째는 해당 작업을 체계화 또는 순서화 시키는 겁니다.

예를 들어, 다음과 같은 간단한 체크 리스트를 만들 수도 있습니다.

순서 확인
1. 리소스의 버전 업 하기  
2. 빌드 하기  
3. 빌드 결과물 인증하기  
4. 인증한 결과물 인증 확인  
5. 결과물 설치 파일 만들기  
6. 서버에 결과물 배포  

이제 우리는 해당 작업을 할 때 마다, 위의 체크 리스트를 확인 해서, 실수를

줄일 수 있습니다.

그런데 이렇게 체계화 하는 것보다 더 좋은 방법이 있습니다.

그것은, 위의 절차를 자동화 시켜버리는 것입니다.

build 라고 치면, 자동적으로 리소스의 버전을 업하고, 빌드하고, 해당 결과에 인증서를

통해서 인증하고, 설치 파일을 만드는 것입니다. 이렇게 될 경우, 사람이 위의 체크리스트

기반으로 체크하는 것보다, 훨씬 빠르게 진행할 수 있습니다. 그리고 해당 시간에, 작업자는

배치 스크립트등만 가볍게 돌려주고, 자신은 다른 작업을 할 수 있습니다.

이렇게 자동화를 할 수 있는 것들에는 여러가지가 있을 수 있습니다.

1. 유닛테스트 실행하고, 결과 리포트 하기

2. 한방 빌드

3. LOC 나 Code Coverage 측정

이렇게 점점 자동화를 하고 나면 생기는 장점을 다시 정리하면

1. 작업자의 실수를 줄여준다. 품질이 올라간다.

2. 작업자의 시간을 아껴준다. 그 시간을 자기계발등으로 쓸 수 있다.