타스크: 도구 선택 및 확보
이 타스크는 프로젝트의 개발 프로세스를 지원하는 도구를 선택하고 확보하는 방법을 설명합니다.
원칙: 환경
목적

이 타스크의 목적은 다음과 같습니다.

  • 프로젝트 요구에 맞는 도구를 선택합니다.
  • 프로젝트 도구를 확보합니다.
  • (선택 사항) 특별한 요구를 지원하고, 지루하거나 오류가 쉽게 발생하는 타스크의 자동화를 위해, 그리고 도구 간 통합을 위해 내부적으로 특별한 도구를 개발합니다.
관계
역할기본 수행자: 추가 수행자:
입력필수:
  • 없음
선택사항:
출력
프로세스 사용법
기본 설명

적절한 도구의 지원을 통해 프로세스의 많은 단계를 효율적으로 수행할 수 있습니다. 프로세스에 필요한 중간 산출물 또는 특정 타스크를 기준으로, 조직의 특별한 요구에 맞도록 도구를 선택해야 합니다. 개념: 지원 도구에서는 프로젝트에서 필요한 여러 종류의 지원 도구를 간단히 살펴봅니다.

때로는 특별한 요구를 지원하고, 지루하거나 오류가 쉽게 발생하는 타스크의 자동화를 위해, 그리고 도구 간 통합을 위해 특별한 도구를 내부적으로 개발해야 합니다. 이러한 도구 개발은 제품 개발과 비교할 때 비교적 간단한 전달 프로세스를 통해 진행될 수 있습니다.

도구 선택 및 확보는 조직의 구현 프로세스와 결합해서 수행될 수 있습니다. 자세한 정보는 프로젝트의 프로세스 구현을 참조하십시오.

단계
요구 및 제한조건 식별

다음 항목을 검색하여 도구 지원의 필요성 및 제한조건을 식별하십시오.

  • 전달 프로세스. 효율적으로 작업하기 위해 필요한 도구 지원을 확인합니다. 예를 들면 조직에서 반복 전달 프로세스를 사용하는 경우 프로젝트에서 여러 번 테스트를 수행할 것이므로 테스트를 자동화해야 합니다.
  • 호스트(또는 개발) 플랫폼 
  • 대상 플랫폼
  • 사용할 프로그래밍 언어
  • 기존 도구. 기존 및 입증된 도구를 평가하고 계속 사용할 것인지 결정합니다.
  • 개발 조직의 분포. 조직이 실제로 분산되어 있는지 확인합니다. 개발 도구는 일반적으로 물리적으로 분산된 조직은 다르게 지원합니다.
  • 개발에 드는 노력의 양. 도구는 대체적으로 대규모 조직을 더 잘 지원합니다.
  • 예산 및 시간 제한조건

개발 조직 평가는 이 단계에 대한 유용한 몇 가지 입력을 제공합니다.  

도구 관련 정보 수집

후보 도구 및 벤더에 대한 정보를 수집합니다. 이 정보 중 일부는 별도의 검토 또는 벤더에서 수집할 수 있는 데이터입니다.    

도구 기능

조사하고 있는 도구 유형에 대해 기능 목록을 작성하십시오. 대부분의 경우 도구 벤더는 이러한 목록을 제공합니다.  아래 표는 형상 관리 도구 목록의 일부입니다.  

기능 

모든 파일 시스템 오브젝트의 버전 지정 
디렉토리의 버전 지정 
파일 유형 혼합 
텍스트 및 2진 데이터 압축 
... 

도구 및 벤더 기준

다음 기준에 따라 각각의 도구에 대한 정보를 수집하십시오.  

도구
기준 

주석 

기능 
 
도구가 제공하는 기능. '도구 기능' 표의 결론입니다.   
통합  다른 도구와의 통합 레벨. 서로 다른 도구 간에 정보가 어떻게 전송됩니까? 이 도구가 평가하는 기존 도구 및 다른 도구와 잘 맞습니까?  때로는 통합 레벨이 기능보다 더 중요합니다. 잘 통합된 도구는 사용 및 유지보수하기에 용이합니다.  
적용 

도구가 전달 프로세스를 잘 지원합니까?  도구를 사용하기 위해 작업 방법을 변경해야 합니까? 장단점을 수용할 수 있습니까?  적용성이 부족하다는 것은 작업 방법을 바꿔야 함을, 즉 "도구에 맞춰 설계"해야 함을 의미합니다. 도구에 다른 장점이 있는 경우 이를 고려해 볼만한 가치가 있습니다.

 
확장성  도구를 확장하고 사용자 정의하는 능력.  확장성은 도구를 사용자 요구에 맞게 수정할 수 있다는 것을 의미하므로 장점에 속합니다. 그러나 도구가 작동하도록 구성하는 데 너무 오랜 시간이 걸리지 않아야 합니다.  
팀 지원  사용자 팀을 지원하는 능력. 도구가 지리적으로 분산된 팀을 지원합니까?  
사용성  도구를 배우고 사용하는 데 있어서의 용이성. 도구를 사용하는 가장 일반적인 방법에 초점을 맞추십시오. 생산적으로 도구를 사용하는 데 걸리는 시간은? 도구를 별로 사용하지 않는 사람들에게도 도구가 적당합니까? 가장 자주 사용되는 기능을 살펴보십시오. 자주 사용되지 않는 기능은 사용하기 어려운 경우 이는 무시할 수 있습니다.  
품질  도구 유형에 따라 다르지만, 도구 품질에 따라 빌드하는 제품의 품질이 결정됩니다. 품질은 중요합니다. 특히 개발하는 제품에 직접 영향을 미치는 경우 중요합니다. 느린 코드를 생성하는 컴파일러나 품질이 낮은 HTML을 생성하는 HTML 편집기를 예로 들 수 있습니다. 
성능  용량, 액세스 가능성, 응답 시간을 비롯한 도구의 총 효율성. 성능이 나쁘다 해도 자주 사용되지 않는 기능에만 영향을 준다면 허용 가능합니다.   
성숙도  도구의 성숙도. 어떤 조직은 도구가 아무리 좋아도 새 벤더에서 도구의 버전 1을 구매하지 않습니다.   

벤더
기준 

주석 

안정성  조직의 미래가 벤더의 미래에 의해 좌우됩니다. 해당 벤더와 얼마나 오랫동안 거래하였습니까? 벤더 조직이 안정되어 있습니까? 벤더에서는 도구에 투자하고 있습니까? 도구가 해당 벤더의 주력 제품입니까, 아닙니까?  
지원 가용성  벤더 및/또는 잠재 파트너에서는 어떠한 지원을 제공합니까? 도구를 설치 및 구성하고, 사용자를 지속적으로 지원하기 위해 도움이 필요할 수 있습니다.  
훈련 가용성  벤더 및/또는 잠재 파트너에서는 어떠한 훈련을 제공합니까?   
성장 방향  해당 도구가 개발 방향에 맞게 지원할 수 있습니까? 개발 방향을 고려하십시오. 해당 도구가 현재의 방향뿐 아니라 다른 방향도 지원합니까?   

비용

도구를 확보하여 소유하는 비용에는 확보 비용, 구현 비용 및 유지보수 비용이 포함됩니다. 비용 계산에 사용될 사용자 수와 사용 시간을 결정하십시오.  

비용

 

주석 

확보 비용  도구 구매 비용 
구현 비용  도구를 설치하고 기존 개발 환경에 통합하는 데 드는 비용. 여기에는 도구 사용자에게 도구를 훈련시키는 비용이 포함됩니다. 도구 사용자에는 사용자 및 도구 관리자가 포함됩니다.  
유지보수 비용  도구를 작동하고 사용하기 위한 지속적인 비용. 여기에는 도구를 관리하고, 업그레이드하고, 도구 사용자 및 관리자를 지속적으로 훈련하는 데 드는 비용이 포함됩니다.  

도구 비교

여러 요인들을 결합하여 가장 좋은 도구를 선택하는 것은 간단하지 않습니다. 결정에 도움이 되도록 해당 기능을 표로 작성해 볼 것을 권장합니다.

기능 비교

기능 목록을 사용하여 각 기능이 얼마나 중요한지 결정하십시오. 다음과 같이 등급을 매길 수 있습니다.

  • '필수'. 도구에 필수적인 기능
  • '유용'. 있으면 유용하지만 반드시 필요한 기능은 아닙니다.
  • '필수적이지 않음'. 이 기능이 있건 없건 그다지 큰 문제가 되지 않습니다.  

각 도구에 해당 기능이 있는지 여부를 다음 기호를 사용해서 표시하십시오.

기호  

설명 

기능을 가짐 
-     기능이 없음 

모든 기능을 표로 정리하고 중요도 등급을 매기십시오. 각각의 도구에 대해 해당 기능을 갖는지 여부를 표시하십시오. 아래 표는 세 가지 형상 관리 도구를 비교한 것입니다.  

기능 

등급 

도구 1 

도구 2 

도구 3 

모든 파일 시스템 오브젝트의 버전 지정  필수 
디렉토리의 버전 지정  필수 
파일 유형 혼합  필수 
텍스트 및 2진 데이터 압축  유용 
...  ...  ...  ...  ... 

도구 및 벤더 기준 비교

기능을 제외한 모든 요인에 따라 도구를 비교해 봐야 합니다. 도구에 대한 개요를 파악하기 위해 개요를 아래와 같은 표로 정리할 것을 권장합니다. 각 요인에 대한 제한조건 및 요구를 간단히 정리하십시오. 각 요인이 얼마나 중요한지를 나타내기 위해 가중치를 두십시오. 예를 들어, 1 - 5 범위의 값을 사용하십시오. 여기서 5는 해당 요인이 매우 중요함을 나타냅니다.  

다음 기준에 따라 각 도구(및 벤더)의 등급을 매기십시오. 1 - 5 범위의 값을 사용할 수 있습니다.

  1. 이 영역에서 쓸모 없음
  2. 취약하거나 심각한 단점을 가짐 
  3. 이 영역에서 적절함
  4. 이 영역에서 표준 이상임 
  5. 이 영역에서 훌륭함

비교한 내용을 다음 표와 같이 정리하십시오.  

도구 기준 

주석 

도구 1  

도구 2 

도구 3 

기능 
 
           
통합             
적용             
확장성             
팀 지원             
사용성             
품질             
성능             
성숙도             

벤더 기준 

           
안정성             
지원 가용성             
훈련 가용성             
성장 방향             

비용 비교

각 도구의 비용을 비교하여 다음과 같이 표로 정리하십시오. 각각의 비용을 '낮음', '중간' 또는 '높음'으로 등급을 매기십시오.  

비용 

주석 

도구 1  

도구 2 

도구 3 

확보 비용             
구현 비용             
유지보수 비용             

도구 선택

요구에 가장 잘 맞는 도구를 선택하십시오. 기능만을 비교하는 오류를 범하지는 마십시오. 다른 기준도 마찬가지로, 또는 더 중요합니다. 선택할 도구가 명확하지 않은 경우 도구를 확보하기 전에 요구가 가장 잘 맞을 것으로 생각되는 도구를 테스트할 것을 권장합니다.  

도구에 대해 의심가는 사항이 있는 경우 최선의 방법은 도구를 테스트하는 것입니다. 해당 도구를 사용하는 다른 회사를 찾아 도구에 대한 평가를 부탁할 수도 있습니다. 해당 벤더에게 참조가 될 만한 고객, 즉 해당 도구를 사용하는 고객을 소개해 달라고 요청할 수도 있습니다. 인터넷에서 정보를 구할 수도 있습니다. 온라인 잡지에서 도구에 대한 검토 기사를 발견할 수 있습니다.   

일단 선택했으면 되도록 결정을 바꾸지 마십시오. 프로젝트 중간에 도구를 변경하면 비용이 많이 낭비됩니다.

도구 확보

도구를 확보하는 것은 사소한 문제가 아닙니다. 재정적인 문제뿐 아니라 법적 문제가 얽혀 있을 수도 있습니다. 여기서는 도구 확보에 대해 상세히 설명하지 않을 것입니다. 다음 사항을 고려해야 합니다.  

  • 설치. 도구를 설정하기 위해 어떤 지원을 제공합니까?
  • 지원. 벤더에서 어떤 지원을 제공합니까? 많은 벤더들이 선택 가능한 몇 가지 등급의 지원을 제공합니다. 더 많은 비용을 지불할수록 더 많은 지원을 받을 수 있습니다.  
  • 벤더 신뢰성. 벤더에서 새 고객을 얼마나 지원합니까? 도구 사용 시 문제가 생긴 경우 벤더에서 어떤 지원을 제공할 수 있습니까? 얼마나 신속하게 지원을 제공하며 비용은 얼마입니까?
  • 영향. 도구의 미래에 얼마나 큰 영향을 끼칠 수 있습니까? 사용자 요구의 우선순위는 어떠합니까?   
  • 유지보수. 벤더에서 도구의 버그를 어떻게 처리합니까? "서비스 팩"이 릴리스될 예정입니까?  
  • 훈련. 벤더에서 어떤 훈련을 제공합니까? 훈련 과정이 많이 제공됩니까?  
  • 제품의 전망. 도구의 향후 발전 계획이 있습니까?
  • 라이센스 부여. 프로젝트의 모든 구성원용으로 한 사이트에서 사용하는 라이센스를 구매해야 합니까, 아니면 사람 수대로 도구를 구매해야 합니까? 일부 도구는 조직에서 제한된 수의 사용자가 동시에 사용할 수 있는 "플로팅(floating)" 라이센스를 제공합니다.