Jazz는 소프트웨어 라이프사이클에서 태스크를 한결같이 통합하는 데 필요한 확장 가능한 팀 협업 플랫폼입니다.
팀에서 소프트웨어를 개발하는 것은 밴드가 악기를 연주하는 것과 유사합니다. 각 뮤지션은 조율을 하고 다른 이들과 음률을 맞추는 동안에도 각자의 파트를 연주해야 합니다. 이들은 서로 의사소통하는 방식에 합의하고 서로에게 보내는 신호에 주의를 기울여야 합니다. 그렇지 않으면 좋은 성과를 낼 수 없습니다. 강력한 협업과 개인의 기량이 모두 필요합니다. 마찬가지로 소프트웨어 개발자는 품질 코드를 빌드하고 모든 부분이 잘 맞아떨어지도록 활동을 조정하는 데 집중해야 합니다.
Eclipse와 같은 통합 개발 환경(IDE)은 개별 생산성을 개선하는 데 성공했습니다. 그러나 개발자는 코드를 쓸 때처럼 팀의 작업에 적극적으로 참여합니다. Jazz 플랫폼의 도입으로 인해 개별 생산성에서 팀의 생산성으로 초점이 이동합니다.
팀이 가설 버그를 추적해서 수정하는 작업을 고려해보십시오. 버그를 수정하는 작업은 팀 내에서 플로우됩니다. 즉, 문제를 감지해서 보고한 Mike에서, 들어오는 버그 보고서를 검토하고 작업을 Susan에게 배정한 Rick으로, 버그를 수정한 Susan으로 그리고 마지막에는 검증을 위해 다시 Mike에게 플로우됩니다. 버그 수정 자체도 팀 내에서 플로우됩니다. 즉, 코드 스트림에서 문제를 수정하는 Susan으로부터 포함된 빌드에서 수정을 검증하는 Mike로 플로우됩니다.
이 플로우는 취약할 수 있습니다. 버그 보고서를 업데이트하지 않고 수정이 체크인된 경우 또는 특정 코드 스트림 및 빌드에 수정을 연결할 링크가 없는 경우 팀 내의 플로우는 끊어집니다. 이로 인해 팀 내부가 혼란스러워지고 진행 상태가 방해됩니다. 설상가상으로 팀의 누군가에게 플로우의 중단이 즉각적으로 분명하게 표시되지 않을 수도 있습니다. 도메인 관련 작업(예: 소프트웨어 제품에 대한 코드 쓰기)에 주로 팀과의 조정을 유지하는 데 관련된 작업(예:버그를 수정됨으로 표시)을 끼워넣기도 합니다.
IDE가 여러 도구를 통합하지만 개발자는 여전히 많은 반복적 부기 작업, 팀이 함께 효율적으로 작업을 유지하도록 하는 데 중요한 작업 및 쉽게 잊거나 올바르지 않게 수행할 수 있는 작업을 직접 수행합니다. Susan이 간단히 IDE에 현재 특정 버그를 수정하는 작업을 수행 중이라고 말하는 편이 나을 수 있습니다. 그리고 나서 수정 및 테스트 케이스가 완료되면 작업이 완료되었음을 표시할 수 있습니다. 그녀의 추가 조치 없이도 시스템은 변경된 파일을 확약해서 버그 보고서와 연관시키고, 빌드 참고를 업데이트하고, 버그 보고서를 처리완료됨으로 표시합니다. 도구가 이 방식으로 부기를 자동화하면 버그 보고서와 코드 체크인 사이의 중요 연결을 신뢰할 수 있는지 확인해서 팀은 보다 효율적으로 작업을 수행할 수 있습니다. 동시에 지루하고 오류가 발생하기 쉬운 부기 작업을 자동화해서 개별 팀 멤버를 보다 능률화합니다.
Jazz는 소프트웨어 라이프사이클의 전단계에 걸쳐 태스크의 심리스 통합을 지원하도록 디자인된 전체 소프트웨어 라이프사이클을 위한 팀 협업 플랫폼입니다(이전 예제 시나리오는 라이프사이클 중기의 몇 가지 공통 태스크를 다룸). Jazz 플랫폼은 클라이언트와 서버에서 확장하고 매우 소규모에서 대단위 엔터프라이즈 설치에 이르기까지 배율을 조정하도록 디자인되었습니다. 이는 도구 지원 프로세스 안내를 도구가 팀의 개발 프로세스를 이해하고 팀 멤버가 방해없이 이 프로세스를 따를 수 있도록 도와주는 개념으로 통합합니다.
Jazz 플랫폼은 기존의 포인트 도구를 통합하는 데 그치지 않고 이전에 가능한 것보다 훨씬 통합된 라이프사이클 도구 기능을 빌드할 플랫폼을 제공합니다. 이 방식으로 개발 도구가 라이프사이클에서 통합되면 일련의 연결된 포인트 솔루션으로 상상 이상의 일을 할 수 있게 됩니다. 이와 같은 통합된 엔드투엔드 도구는 팀이 소프트웨어를 보다 효율적으로 빌드하는 데 유용하며 소프트웨어 개발 활동을 보다 즐거운 작업으로 인식되게 합니다.
Jazz 플랫폼은 전체 소프트웨어 개발 라이프사이클에서 포괄적인 지원을 허용하도록 디자인되었습니다. 프로젝트의 전단계에서 실행하는 한 가지 스레드는 팀 멤버가 따르도록 합의한 프로세스입니다. Jazz 플랫폼에 프로세스에 대한 정보를 알려서 프로세스 고유의 방식으로 팀을 도울 수 있습니다. 이 프로세스 지원은 동적 규칙 점검에서 온라인(예: F1 키) 프로세스 도움말, 부기 자동화에 이르기까지 광범위한(그리고 완전히 개방적인) 형태로 제공될 수 있습니다. Jazz 플랫폼은 다음 방식으로 프로세스를 지원합니다.
Jazz 플랫폼은 다음을 수행하도록 디자인 및 빌드되었습니다.
Jazz 플랫폼의 주요 역할은 준수할 규칙과 도구 라이터에 사용 메커니즘을 제공해서 심리스하게 통합된 라이프사이클 도구를 완성하는 것입니다. 이 메커니즘은 잘 정의된 API를 통해 표현됩니다. Jazz 플랫폼은 새 도구의 개발을 촉진하는 유용한 빌드 블록 및 프레임워크도 제공합니다.