How to use a project management software requirements checklist
This checklist sorts project management requirements into five groups: functional, security, integration, operational and compliance. Each requirement gets a verification step, so the decision rests on written evidence rather than vendor claims. Most readers are replacing Jira, Asana or a set of spreadsheets, or standing up a first self-hosted tool, and the groups help them settle what must be true before any platform is shortlisted. Start by writing one line per requirement and naming who will verify it and how, such as a test instance, a configuration export or a reference installation.
Editions and hosting limits often decide the platform before features do. Single sign-on, LDAP group synchronization and audit logging sit behind paid tiers on several products, so the edition that unlocks a must-have requirement is the real shortlist filter. Confirm the edition against each mandatory requirement in the vendor's current documentation, and ask whether the same feature exists in the air-gapped or offline build if your network is disconnected. Hosting constraints work the same way: database versions, container or Kubernetes support and object storage choices can rule out an option before any feature comparison begins. Record the answers in the checklist next to each requirement.
Score each option only against the evidence you collected: a documented feature list, a working test instance, an importer run against a copy of your data, or a written statement from the vendor for a specific version. Mark any claim you cannot verify as open rather than assuming it. Compliance requirements need the same discipline. If retention or audit obligations apply, such as the record-keeping rules in 17 CFR 240.17a-4 for broker-dealers or the audit controls in 45 CFR 164.312 for health data, confirm with your compliance lead which records a project tool will hold before accepting it into scope.
Functional requirements to verify before choosing a platform
This table lists the functional requirements most likely to decide between OpenProject, Plane and Redmine, with how to verify each one. Read it as a demo script: test each row against a real project from your own portfolio, and treat any Enterprise-only feature as unconfirmed until the current edition documentation and vendor quote agree.
| Requirement | Why it matters and how to verify | Where the platforms differ |
|---|---|---|
| Methods (Gantt, agile boards, calendars) | Teams often mix predictive and agile delivery. Build one program with a Gantt-driven milestone plan and one sprint board in a scripted demo, then check that both views read the same work items. | OpenProject Community includes Gantt charts and agile boards. Redmine includes Gantt charts and calendars. Confirm board and calendar depth for Plane against the current release. |
| Work item types and workflows | Your approval steps, statuses and item hierarchies must map without workarounds. Ask the vendor to create your three most common item types and one approval workflow live, then change a status and check permissions. | Confirm which workflow and type customizations are available in each Community edition. Redmine uses trackers and workflows configured by administrators, so test role-specific transitions directly. |
| Time tracking | Hours logged against work items feed billing, capacity and audit trails. Enter time against three work items as two different users, then export the result and check that the totals reconcile. | OpenProject Community and Redmine both include time tracking. Confirm Plane time tracking and export options in its current docs before scoring it. |
| Portfolio views and cross-project reporting | PMOs need roll-ups across many projects, not only per-project boards. Load five sample projects with different owners and check whether status and dates roll up without manual consolidation. | OpenProject positions portfolio management as its core use. Plane and Redmine portfolio depth should be verified against current documentation, and Enterprise-only reporting must be confirmed against the current edition. |
| Custom fields | Business metadata such as cost center, client code or regulatory tag must be filterable and reportable. Create one field of each type your teams need, add it to a filter and an export, and confirm permissions on who can edit it. | Redmine supports custom fields natively. Confirm field types and visibility rules for OpenProject and Plane in the edition you plan to run. |
| Email-based issue creation | Teams that work from inboxes need tickets created from email with the right project and reply threading. Send a test email from an external address and check project assignment, attachment handling and reply behavior. | Redmine documents email-based issue creation as a core feature. Confirm equivalent inbound email support in OpenProject and Plane, including any mail server or plugin prerequisites. |
| Edition-gated features (SSO, LDAP, audit logs) | Single sign-on, directory sync and API audit logs often sit behind paid tiers. Ask the vendor to show each required feature in the edition you will quote, and get the feature list in writing. | OpenProject Enterprise lists SAML, OIDC, CAS, Kerberos, Okta, LDAP group synchronization and custom branding. Plane lists SAML and OIDC from Pro and LDAP and API audit logs as Enterprise. Redmine supports multiple LDAP authentication sources natively. Confirm all of these against current edition pages before you rely on them. |
Where edition limits decide the platform
Map every must-have requirement to an edition before you shortlist any platform. Community editions are free, but the feature split differs by product, and single sign-on, LDAP sync and audit logging are common places where the free tier stops. Build a table with one row per must-have (SSO protocol, directory sync, audit depth, Jira import, air-gapped install) and mark which edition delivers each one, using the vendor's current feature list and a test instance rather than marketing pages alone.
OpenProject lists single sign-on (SAML, OIDC, CAS, Kerberos, Okta), LDAP group synchronization and custom branding as Enterprise features, and sells its on-premises Enterprise tiers per named user per month. Basic is listed at 5.95 euros and Professional at 10.95 euros with a 25-user minimum, Premium at 15.95 euros with a 100-user minimum, and Corporate on request for 250 or more users. Ask the vendor to confirm how the user minimum applies to your headcount, whether named users include guests and how the subscription renews each year, because those terms drive the recurring cost more than the list price does.
Plane splits its self-hosted path in a way that affects your build. The Community Edition is AGPL-3.0 and matches the Free cloud feature set, but moving to a paid plan requires switching to the Commercial Edition and applying a license key that counts seats by users with paid roles. On self-hosted Plane, SAML and OIDC sit at Pro and above, while LDAP and API-enabled audit logs are Enterprise features. Redmine has no paid edition at all under its GPL v2 license, so its cost sits in hosting, plugins, upgrades and the staff who maintain them. Budget for those items explicitly, and confirm which LDAP and SSO plugins your version supports before you rely on them.
Security requirements that separate self-hosted project tools
Project tools hold roadmaps, budgets, client names and sometimes security-sensitive project notes, so they need the same identity, access and recovery controls as your other internal systems. The checks below cover sign-on, directory sync, permissions, audit trails, transport, recovery and patching. Most of the answers depend on the edition you buy, so verify each one against the vendor's documentation or a test instance before you sign.
Single sign-on protocols
Confirm which protocols the edition supports for browser sign-on, typically SAML or OIDC, and whether they are included in the edition you plan to run. In OpenProject, SAML, OIDC, CAS, Kerberos and Okta sign-on are listed as Enterprise features, so the Community edition may not meet this requirement. In Plane, SAML and OIDC start at the Pro plan on self-hosted installs. Test the login flow against your identity provider, including how the tool maps group claims to roles and what happens when a user is deprovisioned.
LDAP group synchronization
Directory sync decides whether project membership follows your joiner and leaver process or drifts from it. Ask whether the tool synchronizes groups, not just user accounts, and how often it runs. OpenProject lists LDAP group synchronization as an Enterprise feature, Plane lists LDAP as an Enterprise feature, and Redmine supports multiple LDAP authentication sources natively. Confirm how removed directory groups affect existing memberships, and test this with a sample group before you rely on it.
Role-based access and project permissions
Check whether permissions can be set per project, per role and per work item type, and whether a restricted project stays hidden from users outside it. Redmine provides flexible role-based access control across multiple projects. Ask the vendor how guest or client users are scoped, and whether administrators can see private projects by default. Build a test matrix with at least one external user, one project lead and one read-only auditor, and confirm each sees only what the matrix allows.
Audit logging and API access
Audit trails should record who changed a work package, permission or configuration, and when. Logs are only useful if you can export them into your SIEM. Plane lists API-enabled audit logs as an Enterprise feature on self-hosted installs, so confirm whether logs are available through the API or only in the interface. Ask for a sample export and check whether it includes permission changes, not only content edits. Relevant control expectations appear in HIPAA audit controls under 45 CFR 164.312(b) when project data includes ePHI.
Transport encryption
Every connection to the tool, between its components and to its database, object storage and mail relay should use encrypted transport. Verify that the reverse proxy enforces TLS with current protocol versions, that internal service links are encrypted where the platform allows it, and that the platform does not fall back to plain HTTP. Plane's deployment depends on PostgreSQL, Redis or Valkey, RabbitMQ and S3-compatible storage, so each of these links needs its own check. Document the answer in your configuration review, not only in the vendor's marketing.
Backup and restore of database and uploads
A backup is only proven once you have restored it. Back up the database and the uploaded attachments together, because issues reference files and a partial restore breaks links. Redmine's upgrade guide calls for backing up the database and uploaded files before any change, and that same pair should drive your recovery plan. Schedule a restore into a separate environment, time it, and confirm that plugin configuration and custom fields come back intact.
Vulnerability update cadence
Ask the vendor how often security fixes ship, which versions receive them, and how long older lines stay supported. Redmine 7.0.x receives new features, bug fixes and security updates, 6.1.x receives only bug fixes and security updates, 6.0.x receives only important security updates, and 5.1.x and older are unsupported. Map your upgrade capacity to those windows and record which line you will run. Confirm the same policy for your chosen product, and whether security patches reach the edition you are paying for.
Hosting and air-gap constraints to confirm early
Confirm the hosting model before you shortlist tools, because the three candidates document very different deployment paths. OpenProject supports Docker-based installation, which the project recommends, plus .deb and .rpm packages for 64-bit Linux and Kubernetes with Helm charts for horizontal scaling. Its packaged installs are documented for Ubuntu 22.04, Debian 12, CentOS or RHEL 9.x and SUSE Linux Enterprise Server 15, and it officially supports PostgreSQL 16 or later with the pg_trgm, btree_gist and unaccent extensions. Ask your platform team whether your approved Linux images and PostgreSQL build match that list, and whether the extensions can be installed without an external package fetch. Plane documents Docker Compose for small and mid-size teams, Kubernetes with Helm for high availability, Podman and air-gapped installs. Redmine has no container-first path in its core documentation, so confirm which packaging and runtime (Ruby version, web server, database) your operations team will own.
Plane's dedicated Airgapped edition is a separate product, not a configuration switch. Plane documents Community, Commercial and Airgapped editions, each built on a distinct codebase with its own release cycle, and the Commercial and Airgapped editions are proprietary. Ask Plane how license activation works when the cluster has no outbound internet access, whether activation is offline or requires a file exchange, how renewals and seat changes are handled, and who issues the artifacts. For OpenProject and Redmine, confirm how the team will receive updates and security fixes across the gap, and how they will verify package integrity before import. Redmine's upgrade guide requires a database and file backup, copying configuration, uploads and plugins to the new installation, then running db:migrate and redmine:plugins:migrate, so every plugin must be obtainable and testable inside the enclave.
Every product depends on a database, and Plane also needs Redis or Valkey, RabbitMQ and S3-compatible object storage such as MinIO. In a disconnected design, each of these becomes a component you must mirror, patch and back up yourself, unless you run it inside the boundary as well. Confirm whether Plane's Helm chart can point at an internal managed or self-run PostgreSQL, Redis or Valkey, RabbitMQ and object store, and which of these services are required in a single-node Compose install. Request a bill of materials for the air-gapped stack from each vendor, including container image digests and the image registry the installer pulls from. Finally, agree on a sizing baseline: OpenProject's guide suggests 4 cores and 4 GB RAM for up to 200 users, and 16 cores and 16 GB for about 1,500 users, so state your user count and growth in writing before you ask for a quote.
Operational requirements and how to verify them
This table lists the operational requirements a project management platform must meet after go-live and the verification method for each one. Use it to turn vendor statements into tests you run in a non-production environment before you commit. The main takeaway is that sizing, upgrade paths and restore procedures should be proven on your own data, not assumed from published guides.
| Requirement | What to confirm | How to verify |
|---|---|---|
| Sizing | OpenProject's sizing guide suggests 4 cores and 4 GB RAM for up to 200 users, 8 cores and 8 GB for about 500 users, and 16 cores and 16 GB for about 1,500 users. Confirm the figures match your concurrency and attachment volume. | Load test with a realistic share of concurrent users and attachments, then compare CPU, memory and database latency against the published tiers. |
| Release support window | Redmine 7.0.x receives new features and security updates, 6.1.x only bug and security fixes, and 6.0.x only important security fixes. Confirm which line your plugins support. | Map each installed plugin to a supported Redmine line and record the planned move before the older line loses support. |
| Upgrade path | Redmine upgrades require copying configuration, uploads and third-party plugins, then running database and plugin migrations. OpenProject ships releases frequently, for example 17.7.0, 17.8.0 and 17.9.0 in 2026. | Run a staged upgrade in a non-production copy of production data, time each step, and record rollback steps for each release you plan to adopt. |
| Backup and restore | Backups must cover the database, uploaded files and configuration. For Redmine, the upgrade guide names these items explicitly. | Restore a full backup to a clean host on a schedule, then confirm project data, attachments and user logins match the source. |
| Monitoring | Track application availability, database health, disk growth for attachments, and failed background jobs. Confirm which metrics each platform exposes. | Trigger a controlled fault such as a stopped worker or full disk and confirm the alert reaches the on-call team within the agreed window. |
| High availability | Plane documents Kubernetes with Helm for high availability and external managed databases and object storage. OpenProject supports Kubernetes with Helm for horizontal scaling. Confirm how each component fails over. | Simulate loss of one application node and the database primary in a test cluster, then measure recovery and any data loss. |
| Database requirements | OpenProject requires PostgreSQL 16 or later with the pg_trgm, btree_gist and unaccent extensions. Redmine supports PostgreSQL, MySQL 8.0 to 8.4 and SQL Server 2012 or higher, and states SQLite is not suited to multi-user production. | Confirm the database version and extensions in the target build, and run the migration against a copy before cutover. |
| Administrator skills | Plan for Linux administration, container or Kubernetes operations, database maintenance, Ruby or Rails knowledge for Redmine plugins, and identity provider configuration. | Ask each candidate to walk through an upgrade and restore runbook, and confirm named staff can cover on-call duties. |
What compliance frameworks ask of project tooling
Project management tools are rarely the regulated record, so most frameworks will not ask for them directly. What they do ask is whether the people and systems around the project data are controlled: who can see and change work items, whether those changes are logged, and whether project-related communications are kept for as long as the rules require. A project tool that holds customer names, personal data, contract milestones or security requirements can fall inside the scope of an assessment even if no one labels it as a system of record. Start by asking your compliance lead which controls cover the tool, then map each one to a setting you can show.
Two examples show where the obligations come from, and both apply only to organizations in those sectors. SEC Rule 17a-4(b)(4) requires broker-dealers to preserve communications relating to the business, including inter-office communications, for not less than three years. If project discussions in a tool carry business communications, the retention plan must cover them, and that plan should be checked against the tool's own export and retention options, which you should confirm with the vendor. The HIPAA Security Rule at 45 CFR 164.312 requires access controls for ePHI, transmission security and audit controls that record and examine activity. If a project tracker references patient data, these safeguards reach it. Healthcare teams should not assume a planning tool is out of scope because it is not the clinical system.
The evidence to collect is ordinary but specific. Keep periodic access reviews that list every account, its role and its directory group, with the date each was confirmed. Export audit logs on a schedule and store them outside the application server, so an administrator cannot quietly remove them. Record backup restore tests with the restore time, the data checked and the person who signed off. Keep the configuration for SSO, LDAP group sync and session timeouts as versioned records. DeployOpen prepares systems, controls and this evidence for assessments, but it does not issue audit reports, attestations or certifications. Independent auditors and certification bodies make those determinations, so agree the evidence list with your assessor before the rollout starts.
Questions buyers ask before choosing a project management platform
What drives the total cost of self-hosted project management software?
The license is often the smallest line item. The Community editions of OpenProject and Plane are free to download and run, and Redmine is released under GPL v2 with no paid edition, so the cost comes from hosting, implementation, plugins, upgrades and the people who maintain the system. OpenProject Enterprise on-premises is priced per named user per month: Basic at 5.95 euros, Professional at 10.95 euros with a 25-user minimum, Premium at 15.95 euros with a 100-user minimum, and Corporate on request for 250 or more users (OpenProject pricing). Those fees recur, while setup, migration and initial configuration are usually one-time. Ask any vendor or partner for a quote that separates one-time work from recurring subscriptions, hosting and support, and states which features require a paid tier.
How long do a pilot and a full rollout of project management software take?
No single duration applies to every organization, because the answer depends on the number of users, the number of projects to migrate, the identity integration and how much the workflows must change. The supplied research does not give a standard timeline for pilots or rollouts, so ask any partner for a phased plan with named milestones: a pilot on one or two real projects, a go or no-go review, a migration wave, and a cutover date. Sizing also matters. OpenProject's sizing guide suggests 4 cores and 4 GB RAM for up to 200 users, 8 cores and 8 GB for about 500 users, and 16 cores and 16 GB for about 1,500 users (OpenProject system requirements), and infrastructure readiness can set the start date more than the software does.
What does our internal team need to provide for a self-hosted project tool?
Your team must supply decisions and access, even when an implementation partner does the technical work. Expect to provide a named business owner who signs off workflows and work item types, a list of projects and users with their roles, access to the directory service and identity provider, hosting capacity in your cloud account or data center, and staff who will take ownership after go-live. For the database, OpenProject requires PostgreSQL 16 or later and the pg_trgm, btree_gist and unaccent extensions (OpenProject system requirements), so your database team needs to approve those. Plane expects PostgreSQL, Redis or Valkey, RabbitMQ and S3-compatible storage, which your platform team should confirm are available or approved before work begins.
Can a small team self-host project management software without a partner?
A small team can often install these tools alone, but it must accept ongoing maintenance. OpenProject supports Docker-based installation, which it recommends, along with .deb and .rpm packages and Kubernetes with Helm charts (OpenProject system requirements). Plane offers Docker Compose for small and mid-size teams. The harder work lies after installation: upgrades, backups, security patches and plugin compatibility. Redmine's upgrade guide calls for backing up the database and uploaded files, copying configuration and third-party plugins, then running db:migrate and redmine:plugins:migrate before restarting (Redmine upgrade guide). Assess whether someone on staff can carry that routine on schedule, and if not, consider a retainer for upgrades and support.
Can we move our Jira project history into open source project management software?
You can move some Jira data, but the result depends on your Jira deployment and the importer. The OpenProject Jira Migrator imports from Jira Data Center 10.x and 11.x, not Jira Cloud, and it is in beta, with documentation advising use only in test setups (OpenProject Jira migration docs). Plane's Jira importer is available on Plane Cloud and on all plans of the self-hosted Commercial Edition, and it supports Jira Cloud as well as Jira Server and Data Center (Plane Jira importer docs). Redmine has no maintained Jira importer: its third-party migration scripts are described as neither tested nor supported (Redmine migration wiki). Typical losses include workflow rules, custom field mappings, permissions and attachments that do not map cleanly, so run a test migration and ask a partner to list exactly what does not transfer.
How do I know whether SSO needs an Enterprise edition?
It depends on the product and the protocol you need. In OpenProject, single sign-on with SAML, OIDC, CAS, Kerberos and Okta, along with LDAP group synchronization, is listed among its Enterprise features (OpenProject pricing). On self-hosted Plane, SAML and OIDC are available on Pro and above, while LDAP support is an Enterprise feature (Plane pricing). Redmine includes multiple LDAP authentication support in its core feature set (Redmine home page), but SSO protocols beyond that are typically handled through plugins, which you should verify against your identity provider. Before you request a quote, list your required protocols, whether directory group sync is mandatory, and your user count, then confirm the tier that covers each item in writing.
How do upgrades and security updates affect the total effort?
Upgrades are recurring work, and their effort depends on the release cadence and your customizations. OpenProject has shipped several releases in 2026, including 17.7.0 on August 5, 17.8.0 on September 2, 17.9.0 on September 30 and 17.9.2 on October 15 (OpenProject release notes). Redmine's support policy is tiered: 7.0.x receives new features, bug fixes and security updates, 6.1.x receives only bug fixes and security updates, and 6.0.x receives only important security updates, while 5.1.x and older are unsupported (Redmine download page). Plugins and custom code add test effort at each upgrade. Ask for a written upgrade method, a test environment, and a stated support window for each version you run.
Scoring the shortlist against the checklist
This sequence turns a long list of wishes into a ranked, evidence-backed decision. Each candidate is tested against the same must-haves, so the final score reflects what the platform does in your environment rather than what its marketing claims.
Rank the must-have requirements
The business owner of the project function and the security lead agree on a short list of must-haves, separated from nice-to-haves. Typical must-haves include the planning methods the teams use, work item types and workflows, SSO and LDAP, Git and chat integration, the Jira import path, and any air-gap or hosting constraint. Each requirement gets a named owner and a pass or fail test written in plain terms. The step is done when the owner for each line has signed the list.
Map each requirement to an edition and hosting option
For every candidate (OpenProject, Plane or Redmine), the solution architect records which edition or license tier provides each must-have. Some features sit behind paid tiers, such as SSO or LDAP sync in certain OpenProject and Plane plans, so the mapping must reflect the edition you would actually buy or run. Hosting options are mapped the same way, including whether the chosen edition supports the deployment model you need. The output is a matrix signed by the architect and the procurement lead, so cost and capability are reviewed together.
Run a scripted demo against the must-haves
The evaluation team runs the same written script on each shortlisted platform in a non-production instance. The script covers Gantt views, agile boards, work item creation and workflow transitions, time entries, portfolio or cross-project views, and role-based access. Testers record the result, the steps taken and any workaround needed. The demo is complete when every must-have has a recorded result per candidate, and the project owner has reviewed the log.
Test an import from a sample Jira or Redmine export
The data owner exports a representative sample of projects, work items, users and attachments from the current tool and imports it into each candidate's test instance. Importer support differs: OpenProject's Jira Migrator is in beta and covers Jira Data Center rather than Jira Cloud, Plane's Jira importer supports Cloud as well as Server and Data Center on paid tiers, and Redmine's built-in importers for Trac and Mantis do not work. The team records which fields, statuses, users and history survive, and what must be rebuilt by hand. The step closes with a signed loss report that the business owner accepts or rejects.
Confirm SSO, LDAP and air-gap behavior in a lab
The security engineer builds an isolated lab that mirrors the target network, including the identity provider or directory, and tests login through SAML, OIDC or LDAP where each candidate supports it. For air-gapped requirements, the team installs from offline packages, confirms the platform starts with no outbound internet access, and checks how license activation and upgrades would be handled. Each result is logged with the edition and version tested. The security lead signs off once the identity and offline behavior match the must-haves.
Score written evidence and vendor statements
Procurement and the security lead collect the written evidence behind each claim: the license text, the edition feature list, the release and support policy, and the vendor's answers to the RFP questions. Each requirement is scored only against documented evidence or a lab result, and any claim without evidence is marked open. The scoring sheet records the source of every score. The step ends when the scoring sheet is approved by the CIO or head of IT, who confirms the open items have owners.
Confirm the decision with the open items list
The team reviews the highest-scoring candidate with the open items, such as features that need confirmation with the vendor or a gap that needs a plugin or custom work. Cost questions are sent to a quote built from this written scope, including licensing, hosting, migration and support. The decision record names the chosen platform, the edition, the accepted import losses and the owner of each remaining item. The step is done when the decision record is signed by the executive sponsor.
How DeployOpen scopes and delivers project management selection and implementation
DeployOpen plans, implements, customizes, integrates, hardens, backs up and documents self-hosted open-source project management platforms inside your own cloud accounts, data centers or air-gapped networks. Engagements start with a written scope that fixes what the project management requirements checklist covers before any build work begins.
How we scope
- We confirm which work methods your teams need, such as Gantt planning, agile boards or both, before naming a platform.
- We map work item types, workflows, roles and time tracking rules to the written scope for each team.
- We agree in writing which SSO, LDAP, Git and chat integrations, importers and hosting constraints are in scope.
How we build
- We install the chosen platform in your environment, including the database, object storage and reverse proxy it depends on.
- We configure edition-dependent features such as SSO and LDAP group sync, and test them against your directory before users log in.
- We run security testing on the deployed platform and document any findings and their fixes against the agreed scope.
How we hand over
- We deliver configuration records, integration notes, backup and restore procedures, and an upgrade runbook for your administrators.
- We document the importer results, including which Jira data was migrated, transformed or left behind, so your team can verify it.
- We train your administrators on user management, workflows and day-to-day maintenance as part of the written deliverables.
How we support
- Ongoing support, upgrades and continuous testing are available as a retainer after handover.
- A retainer can cover platform upgrades, security patches and re-testing when workflows or integrations change.
- Confirm in your quote how upgrade windows, edition changes and license renewals are handled, since these recur over the platform's life.

