I’m happy to hear @paul121 of this potential synergy with an actual project that is moreover about the AgExperiment UseCase. Exciting indeed! To your questions:
I would say that ‘goal
’ nails it perfectly. Description should be used as it is on all sorts of data types for elaboration that could be fairly lengthy (or not), but Goal should be as a rule quite succinct and unambiguous, if it is to be uses as a test for Project completion.
I like ‘due_date
’, because it could be used for either a deadline, an estimated date of completion, or a planned review date, as the case may be -3 distinct cases that might be addressed in some other way (i.e. a tag?).
Indeed: i would go a step further, and say, for any farm that has projects on the go (don’t we all?), some provision for Projects in our farmOS is really needed… And for that model to serve well any PM use case, those fields of ‘goal
’ and ‘due_date
’ are most essential, whatever you may chose to call them.
Taking a page from the “Getting Things Done” (or GTD) canon, its creator David Allen says “Projects are defined as outcomes that will require more than one action step to complete and that you can mark off as finished in the next 12 months.”
Regarding those 3 criteria in boldface, the last one about time is in a sense arbitrary, in that DA considers that no project should go more than one year w/o being subject to review/revision, but that “Due Date” can of course be shorter; the point is, there must be one. Even more fundamentally, it must involve a series of Actions (else it is simply a one-step Task) and a Defined Outcome (i.e. Goal) -else it is just a dream, nothing more.
Also of possible interest, the next point in DA’s advice about Projects is: “2. Think of your Projects list as a current table of contents of the current outcomes on your plate.” Having such a list would be most useful at review time (like DA, i think systematic review is the key to success in PM) -even more useful if coupled with a timeline, as @pat suggests.
And if a project has dependencies (as is typically the case), then Morgan is right:
… But i don’t know if that is always the case -and when it is, could that be addressed with links in the “asset and log reference” (default bundle fields), as Paul suggests?
Now i’m getting out of my depth here, talking about such details of implementation. I’m just excited to see where this is going!