IBM DOORS Access Rights Manager
Table of Contents
Large-scale requirements migrations expose an often-overlooked challenge: verifying that the migration team can actually access all the data in scope of migration before extraction begins.
For an automotive client preparing to migrate from IBM DOORS, this meant auditing access rights across four IBM DOORS databases totaling nearly 4TB. With years of accumulated permission changes and inherited permissions, manually validating access across these databases was neither practical nor reliable.
Engineering Challenge #
The objective was to build an automation platform capable of auditing permissions across enterprise-scale IBM DOORS databases while remaining reliable enough for production use.
The project wasn’t simply about reading access rights. It required solving challenges common to long-running DXL scripts:
- Processing databases containing millions of artifacts.
- Executing DXL scripts efficiently without crashing host env.
- Scaling analysis through parallel execution while managing system resources.
- Recovering gracefully from interruptions and unexpected failures.
- Producing consistent, repeatable audit results.
These requirements shaped the application’s architecture far more than the access-control logic itself.
Technical Approach #
The solution combines IBM DOORS, DXL, and Python to automate large-scale permission auditing and reporting.
DXL scripts are executed in batch mode, allowing the application to analyze IBM DOORS databases without user interaction. Python orchestrates the execution, coordinates workloads using multiprocessing, and consolidates audit results into a centralized SQLite database.
The application provides both a Graphical User Interface for interactive monitoring and a command-line interface for unattended execution, both sharing the same application layer to ensure consistent behavior.
Designed for long-running workloads, the platform prioritizes reliability, scalability, and repeatability, making it suitable for enterprise migration projects.
Engineering Focus #
Key engineering aspects of the project include:
- Python multiprocessing for scalable workload execution
- IBM DOORS automation using DXL ran through batch mode
- Desktop application development with PyQt6
- SQLite-backed audit reporting
- Fault-tolerant workflow design
- Clean Architecture and separation of concerns
- Resource-aware execution and process orchestration
- Idempotent operations and safe re-execution
Outcome #
The completed platform transformed a manual, high-risk verification task into a repeatable engineering workflow for enterprise-scale IBM DOORS databases. By combining DXL automation with Python orchestration, the solution significantly reduced manual effort while providing engineers with a reliable and centralized view of DOORS Databases accessibility before migration activities began.