valueflows / valueflows

valueflows repo has moved to https://lab.allmende.io/valueflows/valueflows
Creative Commons Attribution Share Alike 4.0 International
134 stars 24 forks source link

Resource Type behaviors #345

Closed ahdinosaur closed 5 years ago

ahdinosaur commented 8 years ago

harvested from https://github.com/valueflows/valueflows/issues/10.

@bhaugen: Here are some of the behavior quirks of tools and equipment, at least as they relate to processes:

Common behavior as output, different behavior as input: You can make tools, so as an output, tools behave like any other manufactured product. But as an input, they behave differently: they are used, but not consumed (unless you count a little wear and tear).

Different units for input and output: Equipment units of measure differ depending on whether they are an input or an output. As an input, their use might be measured in hours or some other unit of use. > As an output, they are usually measured in eaches (by count).

Available by schedule in addition to count: To inventory tools, you might want a count (how many of that tool do we have on hand). But when it comes to availability, tools are different from (for example) nuts and bolts or apples. Availability of tools not only depends on the count but on the time you want to use them.

For example, Sensorica has a 3D printer. You must schedule its use. So its availability might be managed by a resource scheduling app.

Maintenance process input resource = output resource: Equipment also requires maintenance. Machine maintenance is one of the cases where the input resource to a process is also the output resource: the machine comes in needing repairs, for example, and maybe some replacement parts. It comes out repaired with some new parts.

Access rules: A machine will often have some natural constraints on who can use it effectively without damage, which might be enforced by those responsible for maintenance.

Work spaces have some (but not all) of the same behavior differences (for example, the Sensorica lab).

Food also has some quirks as an Economic Resource Type, especially perishable food, which has an edible life beyond which it becomes compost.

Food also has seasonal rhythms of planning, planting, growing, harvesting, and storage. Manufactured products these days often use "just-in-time" planning, driven by demand. Food has its own timing, which does not care about what is just in time for you, and it is at least partly driven by supply (as in, the food is ready now, we need to do something with it).

This is not an exhaustive list of the behavior differences of tools, just a starter.

ahdinosaur commented 8 years ago

while subclassing was mentioned before, i'm wondering if traits would be a more appropriate pattern. each trait would describe the behavior, and each resource type could have many such traits. may or may not be related to #2, idk.

bhaugen commented 8 years ago

Traits are an interesting idea. They seem also related to faceted classification. I first ran into them in Smalltalk, which was the language of the original version of what has now evolved into NRP and now wants to evolve into a web of LOD. But I never actually used them, just heard other Smalltalk programmers talk about them.

elf-pavlik commented 8 years ago

Do you see modeling of Port(Input/Output) somehow similar to modeling of Intent(Want/Offer)? https://github.com/valueflows/valueflows/issues/62 :mag:

bhaugen commented 8 years ago

@elf-pavlik - similar but at a previous stage of evolution. Here's a fairly typical outline of the evolution: funnel

Offer and Want are on the top Propose Idea row. Input and Output are on or close to the Commit or Fulfill row, depending on whether they have happened or not.

For example, the Mutual Aid Network wants to advertise needs for projects (skills, materials, money, etc). Those are Wants, but they would be stated fairly specifically. If somebody offers a match, they will evolve to the Commit stage, where the doer and the timing may become known.

People who post on their marketplace often Want something much more vague, defined only by text, or text and a category or two and maybe a tag. Those Wants will either evolve through the funnel, or not. And if they do, they will become increasingly clearly defined.

elf-pavlik commented 8 years ago

Thanks @bhaugen for sharing your insights!

Do you think that we could find certain degree of isomorphism between

And see them as Qualified Relations?

Similar as with roles and verbs currently it seems to me that

direct: Agent - wants -> Resource qualified: Agent <- subject - Want - object -> Resource ( relationship/property: wants )

direct: Process - takes -> Resource qualified: Process <- subject - Input - object -> Resource (relationship/property: takes )


direct: Agent - offers -> Resource qualified: Agent <- subject - Offer - object -> Resource ( relationship/property: offers )

direct: Process - yields -> Resource qualified: Process <- subject - Output - object -> Resource (relationship/property: yields )

https://github.com/valueflows/valueflows/issues/63

bhaugen commented 8 years ago

@elf-pavlik - glad you are taking the evening off :relieved:. I will comment on this tomorrow some time, after I study your recent diagrams and examples.

ahdinosaur commented 8 years ago

another list in the wild at https://github.com/elf-pavlik/currency/issues/3#issuecomment-217310310:

equipment "consumables" work, skills, factors of human labor liquids, powders, etc vs discrete pieces like nuts and bolts ideas, designs, citables

also related to the recent conversation about monetary currencies being resource types with pecularities

bhaugen commented 8 years ago

@ahdinosaur thank you for your recent curation efforts. They help.