Bug 1032861
| Summary: | RFE: Topic Lifecycles per Content Spec | ||
|---|---|---|---|
| Product: | [Community] PressGang CCMS | Reporter: | Lee Newson <lnewson> |
| Component: | CCMS-Core | Assignee: | Nobody <nobody> |
| Status: | NEW --- | QA Contact: | |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 1.2 | CC: | cbredesen |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | Bug | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
Lee Newson
2013-11-21 03:49:32 UTC
After talking to Lee Carlon, we should start with a small set of lifecycle stages modelled on Bugzilla. These should be: NEW - Topic has been created but no writing done yet ASSIGNED - Topic is being worked on ON_QA - Topic is being reviewed CLOSED - Topic is done More lifecycle stages can be added if needed, but building from a small set of statuses is going to be more consistent that reducing a large set. In addition, we need to support the ability to set a timeframe on when these lifecycle states are expected to change. This will provide a way to track progress. I'd propose the following syntax Chapter: Installing EAP7 [status=ASSIGNED, statusend=12 Dec 2013] # Gets the status and statusend of the parent Downloading the installation file [1234] Installing the application [1235, status=ON_QA, statusend=13 Jan 2014] This will most likely lead to a lot of redundant statusend attributes for status like ON_QA, but we can provide a way in the UI to updates these dates in bulk. With the current status and the date that the status is expected to change, we can then provide automated reporting through the chart image generation. I'm concerned that adding that much information is going to make the content spec too messy. As alternative I propose that we store that information along side a content spec (so a new tab in the UI and a separate file using csprocessor). That way the logic is cleanly separated (since structure has nothing to do with planning) and would keep both components fairly clean. Example file contents: cat timeline.txt DEFAULT_DUE_DATE = 12 Dec 2013 DEFAULT_STATUS = ASSIGNED TOPIC STATUS DUE DATE 10 - Test Topic ASSIGNED 12 Dec 2013 1234 - Downloading the installation file ASSIGNED 12 Dec 2013 1235 - Installing the application ON_QA 13 Jan 2014 The downside to this is we'd need to write a parser (or find a format that a parser exists for), however in my opinion this would be the better option. My experience is that maintaining this information in a second file or screen would significantly reduce the number of people who will use the feature. I'd really like to avoid "yet another screen" or "yet another format" that people have to look at and learn. Having said that, on second though it is reasonably clear that micromanagement at a topic level is also most likely not going to work. I don't actually think anyone is going to map lifecycles of individual topics beyond a simple current status. So the idea of a statusend attribute should be dropped for now. I'd even go so far as to say that the idea of manually assigned status is not ideal. We should change this to assign status to topics based on their state. NEW: topic has no text ASSIGNED: topic has text ON_QA: topic has open bugs assigned against it CLOSED: topic has a fixed revision By "assign status" I really mean having reports that show the overall status of a spec based on the state of its topics. Actually this should be changed to: NEW: topic has no text, or has no revisions newer than the first revision of the spec it is included in. ASSIGNED: topic has a revision newer than the first revision of the spec it is included in. This would account for people creating new specs for new versions of a product and including a lot of existing content. |