trac is an open source project management software written in python, the project website is [url removed, login to view]
trac functionality can be extended via "plugins" as explained at [url removed, login to view]
This project is to build a trac extension which generates trac wiki text (like HTML) based on a database query. The extension will generate an wiki text "snippet" that goes in an existing trac wiki page.
Database is a simple table consisting of text values for sorting and direct copy into the page, and boolean values defining groupings of the items when generating the text.
1) a) Complete and fully-functional working program(s) packaged as a python .egg suitable to install as a trac 0.10.4 extension as well as complete source code of all work done.
1) b) Database data-entry and editing system for defined table of text and boolean values (open to suggestions, presently like postgres with pgAdmin, need to be able to import from MSAccess).
Database will contain elements with:
Unique text: ID number
Text: Document ID
Text: Section ID
Text: Related Requirements
Boolean: (a) Verified to implement sys req.
Boolean: (b) Verified non-contradictory
Boolean: (c) Verified non-ambiguous
Boolean: (d) Verified testable
Boolean: (e) Verified uniquely identified
Boolean: (f) Verified traceable to source
Text: Link to evidence for (a)
Text: Link to evidence for (b)
Text: Link to evidence for (c)
Text: Link to evidence for (d)
Text: Link to evidence for (e)
Text: Link to evidence for (f)
wiki-HTML report #1 will extract all items that match on the Document ID field, then display:
Each Section ID (that occurs at least once with the selected Document ID, also sorted in ascending order) - as heading text
All ID numbers that match this Document ID and Section ID, sorted in ascending order, with each ID number output showing:
ID number as heading text
Description as text
"Related Requirements:" (if field is not empty) Related Requirements field as text with links to each requirement in its source document.
"Source:" Source field as text
"Implementation:" Implementation field as text
wiki-HTML report #2 will select items based on all boolean fields (for each field: show elements that are only true, or only false, or don't care), then output a list of all matches showing:
ID number as text and link to Document ID#ID number
Deliverable solution will include these two types of reports, but will be extensible to add similar reports and extensions to the database. Extensibility will be tested by customer successfully configuring a third type of report and including an additional database element without breaking the two existing reports' functionality.
2) Deliverables must be in ready-to-run condition, as follows:
A python .egg, installable as explained at: [url removed, login to view] installation will be tested alone, and in combination with the graphviz plugin: [url removed, login to view] . Delivered software must work on trac both with and without the Graphviz plugin present.
All source-code must be delivered, along with workable documentation explaining how to convert the source code to an .egg, and how to extend the functionality (as described above).
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
Deliverable to be packaged as a python .egg suitable to install as an extension on trac 0.10.3. The testing environment will be a standard Debian 4.0 x86 Server Linux environment, installing subversion and trac over apache2 through apt-get install instructions (see: [url removed, login to view])
Data entry and editing system is flexible (looking for recommendations of off-the-shelf systems).