[Zope] Design question for a problem tracking Systems using Z ope

Terrel Shumway tshumway@epicor.com
Fri, 8 Oct 1999 13:20:25 -0700


>1. user management
>==================
For managing users, I like the idea of using LDAP authentication. You can
store just anything you want in the directory (and typical directories 
already store the email and phone numbers for users).

>2. Bunch of DTML Documents + Factory methods vs. SQL database
>=============================================================
>I know how to do the SQL thing, but the
>document thing seems nice to me. But is it possible using Zope?

Very possible.  This is my next project.
Bug Tracking is exactly a set of linked documents. 
ZODB + ZCatalog is a much better match than a relational DBMS. 

<insert here all of the well-known problems with mapping objects to rows,
and managing semi-structured data, which are solved immediately by using 
an Object Database>


3. What Objects should exist?
=============================================================
Here is my take for a Bug Tracking System design:

each "Change Request" has these important sections:
  Identification
  Status
  Workflow
  Attachments
  Related Documents
  Disscussion

Identification
  doc# (for cross references)
  summary/title
  description
  product/module/version/build
  type { Bug, Feature, ... }
  severity { show-stopper, critical, has-workaround, cosmetic, who-cares,
...}
  reproduciblity
  reporter

Status
  owner
  status { new, assigned, ..., resolved }
  priority
  target fix date/build
  visibility (public/securty-issue/private) 
    <rant>
    I have a major gripe with this one wrt Open Source projects: 
    everything should be public, unless there is a major security 
    issue involved. I find the Zope collector very annoying in 
    this respect. If DC wants help fixing the bugs, people have 
    to know what the bugs are.
    This field is important for closed projects.
    </rant>

Workflow can be as simple or as complex as you want it.
  It should probably include a change history for at least the Status
section.

Attachments
  screen shots, test cases, etc.

Related Documents
  Other change requests
  requirements docs
  design docs
  test plans/test cases
  version control info (e.g. when was the fix checked in?, what checkin
broke it?)

Discussion
  Confera works nicely for the Discussion section: simply create a Topic
within the document.
  An email gateway would also be nice.


The "Product Tree" has meta data about where things go. It knows about what 
products/modules/sub-modules are being developed and who is responsible 
for them (manager, developer, reviewer, QA, ...)

--------------------------

I have seen at least three people mention this application on the list. 
I believe DC might have one in the works. I think this would be a good
open-source project. I am willing to work on this one.

 -- Terrel

-----------
p.s.: sorry for the slow reply. Keeping up with this list is a major task.