DOORS is a customizable requirements management tool. The main feature that DOORS is used for is the traceability, which through it you can perform an analysis on the requirements how they decompose down to the lowest level. Also you can perform an impact analysis on the proposed changes and see the cost of your change. History of changes in DOORS is also important, as a lot of time there is a need to find out who performed the change as in a large team with people moving from place to place sometimes is needed to trace to the originator and understand the reason.
The way that new attributes can be created and the access management in all level is also another feature that is very useful in DOORS as with distributed teams and external contractors there is always the need to manage the data that users are allowed to access and modify.
Of course with the use of DXL all those things can be automated and be reported. DXL is very dynamic and came a long way from 5.4 and earlier. And as a lot of development and effort has been put into it, companies are reluctant to move to DOORS NG as this feature does not exist (or anything similar to it).
We are using DOORS together with IBM Rational Publishing Engine for reporting that makes everything a bit easier instead of using DXL to export the reports to Word.
Improvements to My Organization
It is important to understand that DOORS is just a tool that should help you to manage the requirements, or better documents that needs to trace to other documents in a controllable way providing history of changes and details of the change that do not need to be reported but they need to be stored. It is important to understand also that the first thing before managing, is that a process needs to be in place that identifies what it has to be done and the way that it will be done described in a simple and clear manner. Then DOORS can be customised to support that process and ensure that the process has been followed. In that way DOORS can ease the burden on the user to follow cumbersome steps of process as there is no alternative. This way the quality can be improved and audits become easier. DOORS is heavily used in aerospace, space, automotive (especially safe critical or mission critical systems) as this way can ensure a full history and lifecycle of the requirements it can be combined with change management tools to control and track the changes and only allow changes to happen when there is a need. Also allows through traceability to identify the effect of the proposed change to the system down to the component (hardware or software). Furthermore it can be customised that way to record the verification and reports can be produced at all levels to identify that requirements have been validated and verified and the system performs as expected. In the organisations that I worked for and I’m still working DOORS has made a lot of things possible that reduce the development and verification time.
Use of Solution
I have used DOORS since 2000 from version 5.4 to 9.6
There were some issues with deploying DOORS 9.6 64bit as the server had to be upgraded in a specific sequence especially if the client was also installed. In general if the instructions from IBM are followed then is usually safe. It pays at the end if there is a test system and the upgrade is tried first there before the production server is upgraded.
The latest version of DOORS is very stable. Earlier versions had problems but a lot of them have been fixed. One issue with the 9.6 version is the new feature of resizing and positioning the main DOORS explorer window and opening the last opened modules during start. This feature can give an error message some times which is not easily reproducible. IBM has been informed and there is an open problem.
DOORS can be scaled to a large number of users and usually modules can contain many attributes and objects. The main issue is the local drives, the faster the drives that DOORS data reside the faster the response on the client. Servers on virtual machines might sometimes be slower because of the way the local drives have been attached to them (storage SANs). But usually is pretty fast. I have worked in environments with more than 300 users and the only issues encountered are the data that were within modules (number of objects) and the history that was recorded. If there is a design behind it on what you need to record within DOORS then usually there are no issues. Sometimes in projects people are getting over excited and from the point that there was no tools and no control and everything was done in paper, they tend to create a lot of attributes to track even the smallest thing, this can create a performance issue as the data recorded are too many.
DOORS can be delivered to distributed teams with Citrix. This in my experience is the best solution as the performance impact through remote access is minimal (XenApp or XenDesktop). It is not advisable to be delivered trough Microsoft terminal server alone as there are performance issues and DOORS is not so usable. Then it can be secured with Netscaler, and delivered to any devise so when people are on the road they can use DOORS to perform their activities from anywhere.
Customer Service and Technical Support
IBM provides one of the best customer services that I have encounter. There are always there to support you and there are quick to response. Technical Support
I have used IBM technical support a number of occasions to report issue with DOORS or RPE there are always come back quite fast (within a few hours of the issue), and there are always find a solution or a fix to the issue. Also IBM has forums that can be searched for solutions and issues that other people have encountered, post questions and someone from IM will reply. Online help is always good and up to date.
Initial setup of the software is straight forward. Just follow the steps described in the IBM site. The complexity starts on the use case of the business that wants to employ DOORS. Different businesses have different use cases and different users have different needs. At that point an expert is needed to design the Database and the relationships in that way that can be maintainable for the future and provide an ease of use. DXL tools and customisations always add an extra level of complexity.
I have worked with DOORS since 2000. I have used DOORS as an engineer managing my requirement, verification and tests, as an expert user, creating DXL scripts to export documents to Word, as an admin managing users and the entire database (multiple databases through the sites). I have developed Verification Tools in DOORS that control all the process of verifying the requirement from creation of the test procedure and script to writing the results and running the test (reviews, accesses etc.). I have a big experience in DXL and I can achieve anything with DXL (with some limitations). What I have seen over and over again is that the use of DOORS is incorrect in a lot of companies. Most of the companies try to adjust the processes to the tools provided instead of adjusting the tools to the correct process. DOORS can be adjusted to the process that you would like to work with, if you think about the process first in isolation of the tool, then, you cannot go wrong with DOORS. The other way around will lead in a lot of effort to put everything right. Standardisation is another issue that companies get it wrong. Users does not want to standardise, they want to do their own thing. The effect is that they use DOORS and for the same work there are a lot of different ways of doing it. They use DOORS as a repository and not as a tool to help them achieve their work easier. DOORS can help you to standardise, minimise mistakes and effort needed to achieve your goal, which can lead in reducing the cost of your development, validation and verification of your product.