Friday, January 25, 2008

Jira and Quality Center notes

While it is difficult to locate full information about Quality Center [QC] on the web, it appears that the design of Quality Center and Jira are focused at different solving different problems.
  • Quality Center's "Defect Tracking" subsystem is a minor feature of the product, and suffers in comparison to any modern issue tracking systems. The product's primary value lies in the test and scripting features [that can compensate from the decision made early in the UniWeb project planning to defer all test preparation and fixtures until after implementation was completed [contrasted with current development practice of tests first]]. The testing component seems focused on end user interaction, complete with capture and playback of user interaction [useful for regression testing, but not useful for testing libraries, components and services].
  • Jira is an issue tracking system. Following current practice, automated unit and integration tests are the responsibility of a complementary 'continuous integration' build and test engine [e.g. Cruise Control, Team City, Bamboo.....].
Some organizations have found it useful to employ both systems, as there is little overlap in their use, and at least one product [Go2Group Jam Plugin ] exists to act a bidirectional bridge between them. [The free one-way version of this plugin may already be in place, as the example screen shots show a "Jira Defect #" field.]

The comparison chart may be incorrect about QC/TD as there is little information available on the internet. This relies on the online help system and basic experimentation.

comparison
Quality Center / Test Director
Jira
cost [enterprise system]
$$$$$$$ [not even implied on HP's web site, just requests for quotation]
$$ [no additional expense - all sunk cost]
cost per user
$$$
0 [unlimited users]
cost per project
unknown
0 [unlimited projects]
Hardened for public access
No [ActiveX client]
Yes  - J2EE web application
Client support
Windows Only [ActiveX]
Multiple [Any web browser, plus alternate clients for specialized applications]
Source code available
No
Yes [on distribution media]
Link issues to revision control commits of source files
No
Yes [multiple system support]
Integrates into development environments
No
Yes [Multiple IDE's supported]
Explicit issue linking
Yes
Yes, with configurable relationships [supersedes, prerequisite for, deploy with....]
Automatic issue hyperlinking
No
Yes - just placing an issue key in a text box creates a hyperlink.
Issues may have sub issues
Issues can be linked, but no explicit support for parent / child
Yes - A single reported problem may have multiple elements when the implementation is examined.
sub issues may be in different projects
No sub issues
No cross project linkage only one project is visible at a time.
Yes - Documenting that a single reported issue may require multiple coordinated changes
Configurable workflows
Yes [VBScript]
Yes [Please note that the existing UniWeb workflows are far from optimal]
Threaded discussions in issue comments

Yes. Includes formatted text and Wiki style markup
Integrates with Wiki engine

Yes Confluence
User's dashboard has multiple projects
No dashboard available for feature comparison.
Single project selected at login.
Yes [visible projects configurable]
Project status is configurable, including time tracking, open and resolved issues, issues closed in past releases [release notes], issues targeted for future releases [roadmap], project home page.
User status is configurable includes lists of unresolved assigned issues, user generated issues and watched issues.
Finding issues
Oddly enough, there is filtering but no search described in the online documentation.
What appears to be shared search/filter configurations are in the 'Favorite' dropdown box.
Text search is explicitly disabled in our installation.
All filtered issues must be in the single visible project
Extensive search filters.
Simple, range and boolean operator searches on all fields in the database.
Searches can include multiple projects.
Searches can be saved and shared.
Search results can be exported as hyperlinks.
Screen capture
Including 'Movies' of user interaction leading to a failure [Windows only]
Simple image capture, relying on system clipboard [any platform]

Recommendations

Instead of migrating issue tracking wholesale to a system that is both less capable and more expensive, I would recommend:

  • Retaining Jira as the primary issue tracking system for software development. The parent / child issue relations, along with tracking of related issues across projects and components is essential for our distributed architecture. During development and development testing, there will be issues encountered, logged, tracked and resolved without showing in Quality Center.
  • Adding one of the Go2Group plugins to couple issue reporting from QC/TD to Jira
  • Updating Jira to the current release [or at least the most recent on we have already paid for]
  • Reviewing the Release Management workflow, including separating artifact releases and credential reset requests.
  • Using QC/TD for it's proper role, for automated regression testing, script driven testing, reporting defects impacting the end user interface. Bugs can be reported in QC/TD but analyzed, tracked and resolved in Jira.


No comments: