ADR-015: Redmine for Project Management and Issue Tracking
Status: Accepted
Date: 2025-09-06
Authors: Development Team
Reviewers: Architecture Team
Redmine is adopted as the comprehensive project management and issue tracking platform for Entirius. This open-source solution provides advanced project management features, built-in documentation capabilities, and seamless integration with development workflows.
- Issues: Bug tracking, feature requests, task management with custom workflows
- Projects: Multi-project organization with Gantt charts and milestone tracking
- Time Tracking: Log time spent on issues with detailed reporting
- Wiki: Built-in documentation system with version control
- Repository Integration: Git/SVN integration with code browsing
- Custom Fields: Extensible issue and project metadata
- Roles & Permissions: Granular access control for team collaboration
# Backup Redmine data
mysqldump redmine > backup.sql
tar -czf files_backup.tar.gz files/
# Plugin installation
cd /usr/src/redmine/plugins
git clone plugin-repository
bundle install --without development test
- Create project with appropriate modules (Issues, Time tracking, Wiki, Repository)
- Configure issue categories and custom fields
- Set up user roles and permissions
- Integrate with GitHub repository
- Configure email notifications
- Set up project milestones and versions
The Entirius project requires a comprehensive solution for project management and issue tracking that supports:
- Bug tracking and resolution workflows
- Feature request management
- Project planning and milestone tracking
- Time tracking for development activities
- Documentation of technical discussions and decisions
- Integration with version control systems
- Multi-project organization for modular monolith architecture
- Team collaboration and communication
Currently, project management activities are dispersed across multiple tools and platforms, leading to:
- Fragmented information and lack of centralized visibility
- Difficulty in tracking project progress and milestones
- Inconsistent issue reporting and resolution processes
- Limited historical data for project analytics
- Poor integration between development and project management workflows
We need a unified platform that provides comprehensive project management capabilities while integrating well with our development workflow.
- Description: Use GitHub Issues as the primary project management and issue tracking solution
- Pros:
- Tight integration with code repository
- No additional infrastructure required
- Simple and lightweight
- Good for code-related issues
- Cons:
- Limited project management features (no Gantt charts, time tracking)
- Poor support for complex workflows
- Limited customization options
- No built-in wiki or documentation features
- Weak reporting and analytics capabilities
- Impact on system: No changes required to current setup
- Description: Use Jira for issue tracking with Confluence for documentation
- Pros:
- Comprehensive project management features
- Strong workflow customization
- Excellent reporting and analytics
- Large ecosystem of plugins
- Cons:
- High licensing costs
- Complex setup and configuration
- Resource-intensive
- Vendor lock-in to Atlassian ecosystem
- May be overkill for smaller teams
- Impact on system: Requires significant infrastructure investment and ongoing costs
- Description: Use Redmine as an open-source project management and issue tracking platform
- Pros:
- Open-source with no licensing costs
- Comprehensive project management features
- Built-in wiki and document management
- Time tracking and reporting capabilities
- Multiple project support
- Customizable workflows and fields
- SCM integration (Git, SVN)
- REST API for integrations
- Active community and plugin ecosystem
- Cons:
- Requires infrastructure setup and maintenance
- User interface may feel dated compared to modern alternatives
- Requires Ruby on Rails knowledge for customization
- Impact on system: Adds new infrastructure component but provides comprehensive project management
- Description: Migrate to GitLab for combined code hosting and project management
- Pros:
- Integrated development and project management platform
- Good project management features
- Built-in CI/CD capabilities
- Cons:
- Would require migration from GitHub
- Vendor lock-in to GitLab platform
- Limited customization compared to dedicated tools
- May conflict with ADR-005 (GitHub as Code Repository)
- Impact on system: Major migration effort required
Chosen option: Redmine Project Management
Key decision factors:
- Comprehensive functionality: Complete project management suite with Gantt charts, time tracking, milestone management, and built-in documentation
- Cost effectiveness: Open-source solution eliminates recurring licensing costs while providing enterprise-grade features
- Multi-project support: Excellent fit with modular monolith architecture requiring coordination across multiple repositories and components
- Integration capabilities: Git integration, REST API, and plugin ecosystem support seamless development workflow integration
- Risk analysis: Low technical risk with mature, stable platform and active community support
- Business impact: Professional project management capabilities improve team coordination and project delivery
- Compatibility: Self-hosted solution maintains data control while integrating with existing GitHub-based development workflow
