https://vocab.methodandstructure.com/process-model#pmThis vocabulary encodes a model for expressing generic business processes. Its purpose is to provide a language and exchange format for software applications designed to facilitate project management. This vocabulary extends the IBIS vocabulary in the natural fashion that once we have framed an issue and decided to solve it, we must then specify a method, nominate a person responsible, and allocate time and material resources to carry out the solution.
In deliberate contravention to the received wisdom of management gurus and their airport books, as well as countless project management and to-do applications, this vocabulary separates the concept of a qualitative goal from the task of achieving it. It likewise separates these two concerns from the allocation of quantitative resources, such as time and money. Finally, it separates a concrete task from the abstract method by which it is completed.
By separating these concepts into distinct logical objects, we gain new capabilities:
The classes in this vocabulary are refined as follows:
The central concepts, pm:Goal (which further refines to pm:Target) and pm:Task, extend the ibis:Issue and ibis:Position types, so that goals, tasks and targets can be mixed into, as well as graduated from, generic collaborative argumentation and decision-making sessions. Likewise, the pm:Action class extends prov:Activity and ev:Event so that actions and tasks can be mixed in with generic events on a timeline.
GoalA pm:Goal extends an ibis:Issue by way of being explicitly desired by a foaf:Agent.
ibis:Issuepm:achieved-bypm:wanted-byTargetA pm:Target connects a qualitative pm:Goal to a specific pm:Task, and a concrete, quantitative allocation of resources.
pm:Goalpm:anchorspm:budgetpm:duepm:initiatesActionA pm:Action specializes an ev:Event in that it is performed by (at least one) real, living foaf:Person.
prov:Activityev:Eventibis:Statepm:contextpm:dependencypm:performerpm:outcomepm:variantMethodA method specifies an abstract sequence of events.
pm:Actionibis:Statepm:instanceTaskA pm:Task specializes a pm:Action in that it has one or more pm:Goal, and connects a pm:Method of execution with a responsible foaf:Person who will carry it out.
pm:Actionibis:Positionpm:achievespm:methodpm:responsiblepm:recipientpm:statuspm:subtaskThe properties in this vocabulary are refined as follows:
dependencyAny ibis:Entity (and thus pm:Goal, pm:Task) may depend on the resolution of an ibis:Issue the pm:Action depends on to be actionable.
ibis:Entityibis:Stateibis:impliespm:dependency-ofcontextualizesAn ibis:State lends context to a pm:Action.
ibis:Statepm:Actionpm:contextdependency-ofThe object ibis:Entity depends on the resolution of the subject ibis:State to be resolved, or otherwise proceed.
ibis:Stateibis:Entityibis:implied-bypm:dependencyprocessWhen an ibis:State is the outcome of a pm:Action.
ibis:Statepm:Actionprov:wasGeneratedBypm:outcomeachieved-byA pm:Goal is achieved by at least one candidate pm:Task.
pm:Goalpm:Taskskos:semanticRelationpm:achievesanchored-byA pm:Goal is anchored to reality by a pm:Target.
pm:Goalpm:Targetibis:generalizespm:anchorsexpiresThis serves as a hard expiry date for a given pm:Goal, such that after it elapses, any valuation ascribed to the goal goes to zero.
xsd:dateTime1valuationA pm:Goal can be ascribed a quantity that represents, in some unspecified unit, the marginal, potentially discounted value of achieving the goal.
pm:Goalxsd:decimal1pm:ARQwanted-byThe identifying feature of a pm:Goal is that somebody wants it to happen.
pm:Goalfoaf:Agentibis:endorsed-bypm:wantsanchorsBy anchoring a pm:Goal to a pm:Target, we give it a concrete budget and deadline.
pm:Targetpm:Goalibis:specializespm:anchored-bybudgetEvery pm:Target has to have a quantitative budget of resources assigned to it. It need not be denominated in currency (e.g. it could be person-hours).
pm:Targetxsd:decimalpm:valuation1pm:ARQdueThe due date of a pm:Target is a conventional deadline.
xsd:dateTimepm:expires1initiatesA valid pm:Target must initiate exactly one pm:Task to carry it out.
pm:Targetpm:Taskibis:responsepm:initiated-by1contextA pm:Action may have an ibis:State as a context.
pm:Actionibis:Stateskos:semanticRelationprov:usedev:factorpm:contextualizesinvolvesA pm:Action may involve one or more foaf:Agent.
pm:Actionfoaf:Agentpm:involved-inmethodA pm:Action can identify an associated pm:Method which will be used to complete it.
pm:Actionpm:Methodpm:instanceoutcomeEvery pm:Action has an outcome, which is some kind of ibis:State.
prov:generatedev:productpm:Actionibis:Statepm:outcomeperformerA performer is a real, live (at the time of performance) person who performs a task.
pm:Actionfoaf:Personpm:involvesprov:wasAttributedToev:agentpm:performsvariantA variant is an alternate method of performing the same action.
pm:Actionpm:Actionskos:relatedinstanceA pm:Action is an instance of a pm:Method.
pm:Methodpm:Actionpm:methodachievesThe purpose of a task is to achieve a goal. Every pm:Task specified in this vocabulary must also specify the pm:Goal they are intended to achieve.
pm:Taskpm:Goalskos:semanticRelationpm:outcomepm:achieved-byinitiated-byThis connects a selected pm:Task to the pm:Target that initiated it.
pm:Taskpm:Targetibis:responds-topm:initiatesrecipientA recipient of a task is a (real, live at the time of receipt) person who receives and approves its product or products.
pm:Taskfoaf:Personibis:principalresponsibleThe person responsible for a task may not be the one performing it, but they are the one accountable for its completion.
ev:agentpm:Taskfoaf:Personpm:responsible-forstatusThe status of a Task at any instant is a State.
pm:Taskibis:StatesubtaskThis property narrows the domain and range of ev:sub_event to pm:Task.
pm:Taskpm:Taskibis:generalizesev:sub_eventpm:supertasksupertaskpm:Taskpm:Taskibis:specializespm:subtaskinvolved-inA foaf:Agent may be involved in a pm:Task
pm:Taskfoaf:Agentperformsfoaf:Personpm:Actionrecipient-offoaf:Personpm:Taskpm:recipientresponsible-forfoaf:Personpm:Taskpm:responsiblewantsA foaf:Agent may want a pm:Goal.
foaf:Agentpm:Goalibis:endorsespm:wanted-byARQThis is a stand-in datatype for an abstract resource quantity. Its purpose is to differentiate from xsd:decimal, which is indistinguishable from other real numbers.
An abstract resource quantity can mean anything you want: dollars, practitioner-hours, something else entirely. Treat it as the base unit of account for resource planning decisions.
xsd:decimalnon-monetary reference currencyintroduced in the 1990s to curb hyperinflation in Brazil.
Currently, the only individuals defined by this vocabulary are those common, reusable States which can be used as values for pm:status. Most other statuses, such as whether a Task has a responsible person assigned or a valid Method, should be able to be derived from other data.
ABORTEDThe task is aborted.
COMPLETEThe task is complete.
IN-PROGRESSThe task is in progress.
STALLEDThe task is stalled.
This process model vocabulary connects and extends the following vocabularies: