Ответ
Основным инструментом был Jira. Он предоставляет комплексный фреймворк для Agile-разработки.
Ключевые возможности и использование:
- Структура работы: Создание эпиков (Epics), пользовательских историй (User Stories), задач (Tasks) и багов (Bugs).
- Отслеживание прогресса: Использование канбан-досок (Kanban Boards) и спринтов (Sprints) в Scrum.
- Интеграции: Глубокая интеграция с CI/CD (например, автоматический переход статуса задачи при создании merge request в Git).
Пример работы с Jira REST API на Java (используя библиотеку Atlassian):
import com.atlassian.jira.rest.client.api.JiraRestClient;
import com.atlassian.jira.rest.client.api.domain.Issue;
import com.atlassian.jira.rest.client.api.domain.input.IssueInput;
import com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory;
import java.net.URI;
public class JiraClientExample {
public void createIssue() throws Exception {
JiraRestClient client = new AsynchronousJiraRestClientFactory()
.createWithBasicHttpAuthentication(
URI.create("https://your-company.atlassian.net"),
"email@example.com",
"api-token" // Используйте API Token, а не пароль
);
IssueInput newIssue = new IssueInputBuilder()
.setProjectKey("PROJ")
.setIssueTypeId("10001") // ID типа "Bug"
.setSummary("NullPointerException in UserService.save()")
.setDescription("Stack trace: ...")
.build();
Issue createdIssue = client.getIssueClient().createIssue(newIssue).claim();
System.out.println("Created issue: " + createdIssue.getKey()); // PROJ-123
client.close();
}
}
Альтернативы: Для небольших команд или проектов также эффективны GitLab Issues или GitHub Projects, которые тесно интегрированы с системой контроля версий и CI/CD.