ElektraInitiative / PermaplanT

https://www.permaplant.net
BSD 3-Clause "New" or "Revised" License
16 stars 13 forks source link

write use cases #1

Closed markus2330 closed 12 months ago

markus2330 commented 1 year ago

Usability Improvements (@tschawax)

Timeline (@danielsteinkogler)

BELOW ALL ARE DONE

Last ones:

@NurramoX

@Bushuo

@absurd-turtle

Thorben

Benjamin

already done:

markus2330 commented 1 year ago

"seeding time" usecase we can remove, it is too much.

So is now only one use case missing?

buenaflor commented 1 year ago

automatic layer display/hiding, e.g. in Moisture, Infrastructure should be shown

If I understand this correctly, if I hide everything else but display the Moisture layer for example, the Infrastructure will automatically be displayed as well?

markus2330 commented 1 year ago

Exactly, but this is only an example. It is probably enough to write in the "layer visibility" use case that switching to another layer might influence which layers are active.

But we forgot about other use cases (I added them above). Please in a new PR.

We should start with the implementation of the entry+list of which seeds. It is much smaller and nevertheless needs the full way from backend to frontend.

buenaflor commented 1 year ago

Could you elaborate on:

list of which plants were planted where you do not yet have seeds for (calculated from map)

I'm not sure I completely understand this one

markus2330 commented 1 year ago

list of which plants were planted where you do not yet have seeds for (calculated from map)

Probably it is better if we also speak about it. The basic idea is: The users plan the garden with either seeds they have (their own seed catalogue) or other plants from our plant catalogue. (I.e. for some plants they have own seeds already but for others seeds are missing.) This use case is about to determine which and how many seeds the person needs to buy to be able to realize the garden as planned.

markus2330 commented 1 year ago

@aidnurs I updated the top post with all new use cases we fancy. Probably best if we have a chat about it :wink:

aidnurs commented 1 year ago

Hey team,

I have a suggestion for use cases or better to say a question to be researched once we get the first version of our canvas tool:

Figma provides a good example to inspire from, take a look at the screenshot below:

Screenshot 2023-03-09 at 13 51 23

They have a hierarchy of elements, so the user can choose an element directly from the sidebar to work with.

This question probably belongs to the later timeline of our project, just wanted to keep the idea somewhere. Let me know what you think.

Sincerely, Nursultan

@markus2330

markus2330 commented 1 year ago

Thank you for the input!

In general it is better if you open new issue, unless it is about clarification of existing issues.

CAD software usually also has such hierarchy and allows visibility etc. on every subtree of the hierarchy. While it provides much more flexibility, it is also much less user friendly.

Our solution is that selection only selects objects on the enabled layer in the current time. If several layers would be selected (which is rather untypical), then you would multi-select all the elements. And exactly this is more-or-less the only reason of selecting several layers: to move whole blocks with all its objects (with all its layers). Most of the daily work happens completely within a layer.

markus2330 commented 1 year ago

@badnames can you create the timeline use case? It is about changing dates for planting/harvesting/removing plants etc. and date ranges for selection.

markus2330 commented 1 year ago

I moved a few usescases up to "unassigned". They are for people who didn't write any up to now.

markus2330 commented 1 year ago

Great job so far, we are nearly done with the use cases!

@Bushuo, Ramzan (has not yet accepted the GitHub invitation) please split the unassigned use cases between you.

Benjaminimal commented 1 year ago

@markus2330 I have a few questions regarding the use cases that are assigned to me.

  1. suggesting plants in-between other plants (selection based on position, without a selected plant)

    How is this different from https://github.com/ElektraInitiative/PermaplanT/pull/120?

  2. adding companions to database on different levels

    Would anyone be able to do this or would this be restricted to some kind of admin role? If it can be can be done by anyone should those rules be effective for all users or only be considered for the user that added it? I don't think that we have defined any kind of user roles yet

  3. reviewing companions in database (increasing confidence of companion indicators)

    Do I understand this correctly? A user creates a new companionship rule which is publicly viewable. Any other user can comment but can't make changes. Would there be any kind of approval process needed?

markus2330 commented 1 year ago

How is this different from https://github.com/ElektraInitiative/PermaplanT/pull/120?

See requested change in #120, then there is no difference anymore.

Would anyone be able to do this or would this be restricted to some kind of admin role?

Anyone can suggest it but it only gets available when other people with enough points reviewed it, this is part of the gamification use cases, on which @ThorbenStaufer works on. So for your part, you describe how the count of different proposals or possibly conflicting db entries/reviews lead to an overall confidence. Maybe the meeting with Pavlo with also shine new light on this.

If it can be can be done by anyone should those rules be effective for all users or only be considered for the user that added it?

Both is possible, see above: users can globally add it or specific for a map. In map-specific rules users might say something like that they want plants with their favorite colors next to each other. This use case is not really necessarily a biological companion. Ideally there should be even a different visual representation for these map-specific rules.

Do I understand this correctly? A user creates a new companionship rule which is publicly viewable.

Yes. Additionally there are also map-specific rules, which might be also public (depending on the map) but are not relevant for other maps.

Would there be any kind of approval process needed?

Yes, but also non-approved relationships can contribute to a very low confidence.

Bushuo commented 1 year ago

I just assigned the remaining use cases to ramzan and me.

markus2330 commented 1 year ago

@NurramoX @Bushuo I am missing PRs from you. Use cases should be finished in the first milestone, they should have been submitted already last week.

@NurramoX I added one more use case to you: "inform users on login when plant DB got updates and plant shouldn't be positioned anymore where it is"

I reordered the sections above according to for which person is missing most.

markus2330 commented 1 year ago

Great progress! Only 3 use cases missing! (@absurd-turtle @ThorbenStaufer)

markus2330 commented 1 year ago

Please let us get the last use cases done! We already started the implementation and this would get confusing.

So please recheck your open PRs, finalize what is open and request reviews.

@Bushuo @absurd-turtle @ThorbenStaufer @NurramoX

markus2330 commented 1 year ago

@absurd-turtle @ThorbenStaufer @NurramoX There are still a few last use cases to be merged. Can you please update the PRs?

EDIT: I added them in the top-post.