-
Notifications
You must be signed in to change notification settings - Fork 97
Provide a clear definition of "Backlog" with guidelines for using it #165
Comments
@haadcode this ticket is ready for comments now. Based on your feedback on this I think I'll be able to rewire the Backlog and Pipeline section to be really clear. |
FYI we updated the go-ipfs waffle board to show the pipeline described above. |
Quick comments:
|
I think this is correct:
|
Great discussion! Assigning myself so that I remember to reply to this on Monday. WIll get back to you soon :) Quick thoughts: I think we should get rid of the "phases" part in the diagram, it's confusing. "Backlog" == everything before "in progress", "ready", "inbox" etc. being sections within the backlog. Backlog should not be a "stage", but one-level higher or its own concept. |
Also, go-ipfs waffle board looking great! 👍 |
I'm very curious about I have some experience using a pipeline to collaborate with other self employed people to get work done.
We were thinking of how to make boards composable, thus, if there should be a difference between Something like "payments" or reached/not reached deadlines trigger transition from one phase of the pipeline to another. |
(In short, i think you should not line up your labels to ours, as yours mean something different and they wont directly translate. you want a separate pipeline (one for goal progress and one for contract progress), i think. thankfully most systems allow assigning multiple labels, so you can have multiple boards going on 😄 ) I am curious to learn more about what you guys are doing, the magnitude of your projects, the speed and reliability of development, and so on. Could you point me to a conversation elsewhere, or start one in https://github.com/ipfs/notes or even https://github.com/jbenet/random-ideas ? There is much to say about the cost structures of innovation, how to develop software, and how to develop open source software. On our part, as parties involved in the development of IPFS grow (in capacity and number), there will be more opportunities for helping offset the costs of development (contracts, bounties, and so on -- both to organizations and individuals). But those conversations are very complex, separate to this issue and repo, and should happen elsewhere. So though i'm interested in the conversation, let's discuss elsewhere and let's please keep tickets in this repo on topic. 😄 |
Hi @serapath. I'm glad to hear that you're interested in re-using the model once it's stable. We are certainly thinking of it as a protocol that could be re-used and adapted across many software projects. In answer to your question about payments for work, remember that these IPFS-related projects are all free, open source projects that are supported by unpaid community contributions. Those contributions are the lifeblood of any healthy open source project. I want to be clear that marking a ticket as Companies and organizations who use open source software often contribute to projects by paying their employees or contractors to create code and submit Pull Requests, but those employment arrangements are private to those organizations. They are not part of the public open source project. Some of us have been thinking about these issues at a more systemic level, particularly in terms of funding long term innovation and maintenance of public infrastructure, but as @jbenet said, those are quite complex, so let's keep those elsewhere. |
ok. just tried to check where to open and how to name the issue. |
It seems to be a long document. any sections i should pay special attention to? does it actually consider payment or what exactly do you mean with "addresses this issue enough"? |
This issue is about providing a clear definition of "Backlog" with guidelines for using it. If people feel that the version of the document in that PR does not achieve that goal, please speak up so we can keep this issue open. For example, we might want to address #188 and #189 before closing this issue. @serapath please raise the topic about payment in a separate issue, preferrably in one of the repositories @jbenet suggested. Our current definition of Backlog, Ready, Done, and any other Pipeline status does not have any implications for payment or requests for contract work. If you want to adopt our PM process in your own work and incorporate notions of payment & requests for work, we are curious to see what you come up with but, as @jbenet said, those conversations are very complex, separate to this issue and repo, and should happen elsewhere. |
The main section of the draft document that deals with "Backlog" is the Workflow section |
There was a fair about of discussion about the meaning of a "Backlog" in the PM pipeline and even more discussion about how to name sections within the backlog -- future work, icebox, ready, etc. I've gathered all of that info here.
Work to be Done
Update the PM document to provide a clear definition of "backlog" with
Confused by the Definition
I'm confused by the definition currently in the PM Doc:
By that definition, the Backlog includes Goals that are In Progress and Done as well as the Future Work, Ready, etc. This doesn't fit with the way I see the term used in the rest of the document.
The document later uses the term "Backlog" to label both a phase and a stage in the same diagram, but the document doesn't define the term phase or explain how the notion of phases should be used to arrange Goals.
Example from go-ipfs
In applying this model to go-ipfs (see notes) @whyrusleeping pointed out that most projects will need to communicate where each Goal lies on the spectrum shown in the table below. Based on our discussion, we came up with some ideas about how we can use pipeline statuses and Milestones to express this info. I included that info in the table. The specific choice of names for these statuses is changeable, but the key ideas are important.
This has a lot of overlap with these definitions in the draft doc:
... but note that we reconsidered the terms "Future Work" and "Backlog" in these comments
What is the goal here?
What are the consistencies we are trying to achieve with the term "Backlog"? If we're establishing this model in order to have consistency of language and core structures across our projects, what are we asking people to be consistent about?
This diagram from the draft PM document presents "Backlog" as both a stage and a phase, where the Backlog phase includes the Backlog stage and some other stages. Is that intentional? Is that going to confuse people? If we just need a different name for the phase, someone taking a scrum approach might label the "Backlog" phase "Refining" or "Ideation".
The document defines the stages with this key:
For go-ipfs, @whyrusleeping wants a slightly different pipeline:
This re-uses most of the stages but makes these additions/changes:
Important: In both of these diagrams the "Backlog" stage means the same thing. Is that the point of consistency that we're aiming for?
An attempt at Concise Statement
Is this an accurate representation of the consistency we're trying to achieve?
Alternatively, are we just saying:
What else are we trying to communicate?
Background - References to Past Comments on this Topic
These comments talk about this topic at length and include one definition of Backlog
The comments seem to converge on some recommended names for sections within the Backlog called either inbox and ready or TODO and Ready
The text was updated successfully, but these errors were encountered: