GithubHelp home page GithubHelp logo

pe's People

Contributors

dickongwd avatar

Watchers

 avatar

pe's Issues

Unintuitive command names

The app has separate command names for volunteers and events, like vcreate and ecreate, which is fine.

However it starts to get confusing when the command names become elistv, vliste, eremovev (but no vremovee?). Makes it difficult to test for a someone who is completely new to the app.

Moreover, some commands need us to specify the flag eid/, while some doesnt require to.
For example, eedit does not require the index to be in the flag eid/ while the command eaddv requires the index to be in the flag eid/.

Skills do not necessarily match role

Under skills for volunteers, one of the skills mentioned could be Carrying heavy goods:

image.png

However, when specifying roles for events, the role format is [quantity] [role name]. The role name can be a bit awkward to match with the skill.

For example, having a role name as 'carrying heavy goods' may not be so apt.

Inconsistent naming of roles/materials

The user guide examples suggests that we can specify the role as 30 farmer and the material as 30 potatoes.

image.png

I understand that 30 potatoes is okay since when we add materials, we use the maddv command with the m/ flag to specify m/x potatoes. But the role is singular which is a bit inconsistent with the rest of the app.

Object diagram does not match class diagram

Under 'Event Add Volunteer Feature', the object diagram for Event is shown:

image.png

Class diagram for Event:

image.png

However, the class diagram for Event shows that there should be 2 DateTime objects for each Event object. The user guide says that even if the end date is not specified for the event, the app will automatically assign an end date:

image.png

Error message for `ecreate` does not match the error

When using the command

ecreate n/food donation r/10000000000000000 chef r/20 packer sd/23/9/2023 1500 l/hougang dsc/helpfood distribution m/50 potatoes b/50.00

This gives the error message

Role should have the format [role quantity] [role name], role quantity should be a whole number (0 or positive), and it should not be blank

This doesn't give a correct error message since the role (r//10000000000000000 chef) is of the correct format.

No definition for key terms in user guide

Developer guide explains key terms like 'volunteer coordinator' in the glossary.

However, user guide explains terms like 'CLI' and 'GUI' but does not explain other key terms important to the app like 'volunteer coordinator'. A glossary section in the user guide might be useful.

Cannot edit name of event/volunteer

The name parameter cannot be specified for eedit or vedit which may be required for people managing volunteer events.

Especially for events, the names of events can change, and if the coordinator has to delete the event an recreate it with all the assignments of volunteers to the event, it can take a very long time instead of just allowing the user to directly edit the name of the event.

Confusing `vfind` functionality

The vfind command allows us to specify multiple flags to search for volunteers (either by names or skills).

Finding by more than one name will return a list of volunteers that has at least one of all names.
Finding by more than one skill will return a list of volunteers that has ALL of those skills.

Feels a bit unintuitive and confusing for the different functionality.

What happens if I combine multiple name parameters and multiple skill parameters?

Can exceed the volunteer limit for events

The user guide encourages the users to edit their json data file directly. However, this allows events to exceed their volunteer size limit by changing the max volunteer size limit in the json file.

However, this conflicts with the functionality in app when I tried to reduce the maximum number of volunteers below the current number of volunteers and the app issues a warning.

To reproduce:

  1. I first created an event without specifying the max size limit. The app automatically sets it to a large number in the storage json file.

  2. Assign 2 volunteers the the event.

  3. Edit the json file to reduce the max volunteer size limit to 1.

  4. The app does not issue any warning after starting again.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.