Sunteți pe pagina 1din 34

Stage VIIa - Final Project Report

Inception: Team Identification


Team name: M3TA
Project Name: V-Drive
Names:
Matthew Izzo - ​izzom3@tcnj.edu
Matthew Kilcher - ​kilchem2@tcnj.edu
Michael Altschuler - ​altschm1@tcnj.edu
Tomer Singal - ​singalt1@tcnj.edu
Anthony Russo - ​russoa15@tcnj.edu
Inception: Objectives and Overview

After visiting MSF’s food bank, we realized that they are often short on donations. With

more donations, they would be able to help a larger number of people or provide more

support to the ones they already interact with. Furthermore, the employees mentioned that

monetary donations are often preferred as they are able to select what to purchase with

each donation, as well as other reasons. We also learned that the food bank receives many

useless donations, specifically at certain times of the year. For example, they receive a lot of

chocolate around valentine’s day, which they are unable to use because of health concerns.

This issue appears to be caused by people’s lack of knowledge of what items are useful for

the food bank. Our goal was to spread more knowledge and encourage people to provide

monetary donations.

We created our project to allow people to see items needed by the food bank and be able to

interact with those items to see how their donations might be used. Users are able to add

items from MSF’s wishlist to their own shopping cart, seeing the cost, priority and quantity

goal for each item. Users are able to modify the quantity for different added items and view

the total cost of these items for the food bank. We believe that this application would

encourage people to donate, as they would be able to visualize the benefits of their

donation. Additionally, people would be able to know the items needed by the food bank in

real time, rather than viewing a constant list of generally useful items. This is meant to keep

users informed on the needs of the food bank so that they may contribute more with their

donations.
When considering this project, we aimed to learn how to apply good software engineering

practices, such as creating a modular design and responding to user feedback. We expected

that working with MSF would give us a fairly realistic experience of working with a

customer. Working with the MSF website, we hoped to learn how to contribute to an

already existing system. We also knew that this project would be complex enough that we

would be able to get realistic experience with building application designs.


Elaboration: Requirements Modeling and Analysis
All revisions are done in this shade of green.
Removals are marked with a line through the text like so ​bank.
Stage II:
● Project Name:​ MSF V-Drive
● GitHub Wiki:
https://github.com/TCNJSwEngg/msf/wiki/Spring-19-Team-07-Project-Descriptio
n
● Description of problem to be solved:
○ Often food donations to MSF’s food bank don’t align with its needs. Many
times unusable donations are made or there is already enough of the donated
item in inventory. This can lead to overflow in inventory, which takes up
much needed space. Furthermore, there are often needed goods that people
don’t often enough donate (such as bottled water). Donors also usually don’t
really appreciate how much their items are needed or which items
specifically.
● Objectives of the project:
○ We think it is important that the donor knows what items are in need, in
order to make the most useful donation. Our plan is to create a platform for
potential donors to interact with those in need of food donations. They will
be able to see what items are in need and fulfill inventory requests.
○ Furthermore, if a food ​bank​ is in special need of a certain food (whether it is
due to allergies, holidays, or preferences), they can make a request to ​donors
on this web application. ​Either the food bank or the donors can fulfill such a
request.
● Stakeholders:
○ Mercer Street Friends Food Bank
■ Make sure the idea is feasible and useful
■ Also helps to manage inventory and forecast what is going in and out
○ Food pantries that receive food from the food bank
■ Make sure their needs are being met
○ Individuals who receive food donations
■ Make sure they are getting the required food at the food pantry
○ Donors
■ Need to make sure the user interface is easy enough for them to see
the food demand
■ Easy enough to “fulfill” requests
■ Don’t over complicate it so that they are deterred from giving food
● Current approach and where our solution differentiates/innovates:
● http://mercerstreetfriends.org/get-involved/food-donations/
● The current system (web page does the following):
○ Tells donors who and how to contact for questions
○ Tells donors which food should normally be brought in
● Our proposed system would bring the following enhancements:
○ Allow donors to interact with a real-time list of goods that are in need
○ Allow food ​banks​ to make requests ​to the food bank
○ Help the food bank better forecast incoming and outgoing supplies
● Technology:
● Front end development (HTML/CSS/​Javascript​)
● Back end development (Ruby on Rails)
● Database to manage the list (Postgresql)

● Licensing:
Open source licensing is important for source code and projects to allow them to be
used and distributed by companies. Open source code allows other companies to
take over projects and expand on them with their own ideas. The GPL license is
similar to other open source licenses however the GPL license prohibits companies
from locking down and protecting changes they make to current open source
projects. This allows projects to be advanced by other companies, while still
remaining open source and available to everyone.

● Use Case Diagram:

Stage III:
Description:
There are many times that the available foods at MSF’s food bank do not align
with needs of people or maybe be unusable because of the amount of donated item,
such as Valentine’s chocolates. The purpose of MSF V-Drive is to provide a sort of
virtual food drive for the food ​bank ​to request food on the website, and donors can
go on and donate the specified food. ​A pantry will submit a list of requested items, it
will be checked what items the food bank has, and then any excess needed items will
be told to donors. We feel it is important that donors know what items are in need
and what the ​food bank actually needs or want. This will simplify the process of
donating by making it easy for users to login on the site and easily donate food
through a webpage. Donors will be able to see what items are in need and fulfill
inventory requests.

Priority List:
1) Our main priority is to allow the food bank to post needed items, and the
donor to fulfill donations online.
2) The next priority is to have food pantries able to make lists of requested
items and send them to the food bank for review.
3) Next we wish to allow donors to share their donation to social media for
more exposure.

Issues to be addressed:
❖ Social
➢ Demand is high, and more donors are always needed
■ By creating a virtual food drive, it will be easier than ever for
donors to contribute to MSF. People will not even have to leave
their homes to donate. By making donations a simple and easy
process, more people will be inclined to donate to the food
bank.
❖ Economic
➢ Sometimes too many unneeded items are donated, or needed items
are not donated (Demand is vague)
■ With our application, MSF will have the ability to display
needed food items on the virtual food drive page. This will give
donors a better idea of what is needed by the food bank, and
will help prevent unnecessary donations (i.e. too many
chocolates around valentines day).
❖ Real-World
➢ Storage is often occupied by unnecessary items
■ By giving donors a better idea of what is needed by the food
bank, space can be better optimized. If MSF has a decent
amount of a food item, they can discourage more donations of
that item by requesting different food items on the virtual food
drive.
Functional Requirements:
The system should allow general users to...
❖ view needed items
❖ create a donation including selected items and their quantities
❖ confirm a future donation
❖ enter contact information
The system should allow the food bank to…
❖ log in
❖ add or remove needed items
❖ view the ​confirmed​ donations
❖ view ​what​ the list of needed items ​would be after the donations are received
The system should allow the food pantries to…
❖ log in
❖ send needed items to food bank
❖ view the confirmed donations
Internally, the system should…
❖ store needed items
❖ store confirmed donations

Non-functional Requirements:
The system should…
❖ have a simple and eye-pleasing user interface
❖ manage users and logins securely
❖ be fast and responsive
❖ Be robust to different cyber attacks

Description of Feedback
In our email to Brian from MSF we included our project description, priority
list, and requirements list, and asked Brian if he had any suggestions for our
proposal. We also asked him a few specific questions, such as:
❖ Does our specified priority order match MSF’s vision for the application?
❖ When donors use the V-drive, should they be giving monetary donations or
food item donations (or both)?
❖ Should donors be required to log in to make a donation?
Brian informed us that our project description, as well as the priority and
requirements lists, coincide with MSF’s need, and also mentioned that the priority
order we have come up with matches what they are looking for. Brian went on to
suggest that we request monetary donations for the virtual food drive, as each dollar
donated can translate to 10 meals with the food bank’s partnerships. In regards to
our third question, Brian suggested that we gather some user information (name,
address, email, and phone number specifically) when a donation occurs. That way,
MSF will be able to send donors thank you letters, as well as their newsletter. In
addition, Brian also gave us the food bank’s current wish list, so we have an idea of
what foods are most needed by MSF. Brian provided us with a lot of useful
information, and we are hoping to incorporate all of his suggestions into our existing
design.

Legal Issues
The only legal issue to deal with is the fact that people are donating food
which could possibly cause harm to recipients. The ​Federal Bill Emerson Good
Samaritan Food Donation Act is a law that passed in 1996 which protects good
samaritans who donate food to non-profit organizations for people in need. In full
this law protects individuals who donate food to nonprofits and protects them from
civil and criminal liability if the item turns out to be bad, but was donated with good
intent. This law standardized this liability across the US and also set a “floor of
gross-negligence” for those who donate food with ill-faith in mind. This law should
protect our donors and MSF.
https://www.feedingamerica.org/about-us/partners/become-a-product-partner/food-partners

Use Case Descriptions

Use Case: ​Create List of Needed Items

Primary Actors​: Food Bank/Admin

Goal in Context: ​Create a list of what foods are needed.

Precondition​: ​System fully configured and actor is logged into their specific
account.

Trigger: ​The actor needs new items so they develop a list of needed foods.

Scenario:
1. Actor goes to MSF V-Drive website.
2. Actor logs in.
3. Actor clicks option to create a new list of items.
4. Actor selects all items that they need and quantities from dropdown lists or
pictures.
5. Actor clicks option to submit the request.
6. Actor is asked for verification of submittal.
7. Submission is final.

Exceptions​:
1. Incorrect username or password. Validate.
2. Invalid quantities of items. Validate.

Priority: ​High. Vital to project.

When Available: ​First increment.

Frequency of Use: ​Frequent.

Channel to Actor: ​Web browser and internet connection.

Secondary Actors: ​Food Pantry and Individual Requestor.

Open Issues: ​Sufficient security.

Use Case: ​View Desired List of Needed Items

Primary Actors​: Donor

Goal in Context: ​View a list of what foods are needed.

Precondition​: ​System fully configured, actor is logged into their specific account,
and an item list has been made.

Trigger: ​The actor wants to view a list of requested items so they visit the list.

Scenario:
1. Actor goes to MSF V-Drive website.
2. Actor logs in.
3. Actor clicks option to view lists of requested items.
4. Actor selects the certain list of items they want to view.

Exceptions​: ​Incorrect username or password. Validate.


Priority: ​High. Vital to project.

When Available: ​First increment.

Frequency of Use: ​Frequent.

Channel to Actor: ​Web browser and internet connection.

Secondary Actors: ​Food Bank/Admin, Food Pantry, and Individual Requestor.

Open Issues: ​create efficient, intuitive design

Use Case: ​Fulfill Requests

Primary Actors​: Donor

Goal in Context: ​Fulfill requests for items from a certain item list.

Precondition​: ​Actor has completed the “View Desired List of Needed Items” use
case and is viewing a valid list.

Trigger: ​The actor wants to donate a requested item from an item list.

Scenario:
1. Actor has completed “View Desired List of Needed Items” and hasn’t left
list.
2. Actor clicks option to fulfill requested items.
3. Actor selects all items they want to donate.
4. Actor’s information is verified and donation method is selected.
5. Actor is asked for verification of donation submittal.
6. Submission is final.

Exceptions​:
1. Invalid quantities of item donation. Validate.
2. Actor does not supply enough info. Validate.

Priority: ​High. Vital to project.

When Available: ​First increment.

Frequency of Use: ​Frequent.


Channel to Actor: ​Web browser and internet connection.

Secondary Actors: ​None.

Open Issues: ​Sufficient security.

This will be part of future work.


Use Case: ​Share Premade Facebook Post with Donation Info

Primary Actors​: Donor

Goal in Context: ​Share completed donation to Facebook as a post.

Precondition​: ​Actor has completed “​Fulfill Requests” use case and hasn’t left the
page.

Trigger: ​The actor wants to share their donation to their friends on Facebook.

Scenario:
1. Actor has completed “Fulfill Requests” use case and hasn’t left page.
2. Actor clicks the share to Facebook button.
3. Facebook post is made in the background.
4. Actor is brought to Facebook and can view, edit, and submit the post.

Exceptions​: user must be linked with Facebook account

Priority: ​Low-Medium. Third in ranking of priorities.

When Available: ​Third Increment.

Frequency of Use: ​Moderately frequent.

Channel to Actor: ​Web browser and internet connection.

Secondary Actors: ​None.

Open Issues: ​none specified

Use Case Diagram


Analysis Class Diagram
Security

The security features that will be required is that all login credentials (including
passwords) will need to be stored securely. This is to prevent account hacking and
to keep confidential information like passwords secured and hashed. Furthermore,
all users will need to be logged in to ensure that people are truthly filling out
requests (to ensure some level of accountability). Finally, it will need to be ensure
that people aren’t injecting dangerous snippets of code (like SQL injections). There
are many possible threats that websites are prone to, and every precaution must be
made by following good, secure Ruby on Rails coding practice as given in this
tutorial (​https://guides.rubyonrails.org/security.html​).

Preliminary security requirements include not storing any confidential or large data
during the sessions and correctly ending the session when necessary. Furthermore,
keep all session information stored in an encrypted hash. Countermeasures against
cross-site request forgery must be met. Furthermore, prevent the use of file
uploads. Finally, prevent SQL injections with whitelisting.

Backup and Recovery

The database containing needed food items and passwords will need to be
backed-up properly using a DBMS like Postgresql. Using Postgresql properly, we
can ensure that our data stays robust to certain failures. Furthermore, we will keep
our code backed up on GitHub.

Elaboration: Design
​Stage IV:

● Detailed Design Class Diagram


● System Sequence Diagrams
○ Make Donation
○ Edit List
● Detailed Statecharts for each of the major functionality.
○ Admin
○ User

● Detailed Test Case Design

Functionality Inputs Expected Output Actual Output


Tested

Admin requests ‘Admin Login’ Admin is brought


log in button is pressed to login screen

Admin logs in Admin enters System validates


username and admin credentials,
password in admin is brought
designated field, to edit food list
‘Submit’ button is page
pressed

Admin requests to ‘Manage V-Drive Admin is brought


edit list List’ button is to the edit list
pressed page

Admin requests to ‘Custom Item’ Page updates with


add new item to button is pressed Name and Price
list fields, as well as
‘Add’ button

Admin adds new Name and Price Page updates with


food item to list fields are new food item
populated, ‘Add’ added to wishlist
button is pressed

Admin removes Garbage can icon Selected item is


item from wishlist next to removed from
corresponding wishlist and added
food item is to ‘Past Items’ list
pressed

Admin selects item Plus sign next to Selected item is


from ‘Past Items’ corresponding removed from
list to be put back item is pressed ‘Past Items’ list
on the wishlist and added to
wishlist

Admin saves ‘Save’ button is List is saved and


changes to list pressed admin is brought
back to home page

User wishes to ‘V-Drive’ button User is brought to


fulfill food item pressed request fulfillment
requests page

User accesses food ‘Donate’ button is User is brought to


item list pressed virtual food drive
page

User adds item Check box next to Check box is


from wishlist to corresponding populated and
donation cart food item is donation cart is
pressed updated, total cost
is updated
User Plus or minus Quantity field next
increases/decreas signs next to to corresponding
es quantity of item corresponding food item in
in donation cart food item are donation cart is
pressed updated, total
price is updated

User removes item Garbage can icon Item is removed


from donation cart next to from donation
corresponding cart, check box for
food item is corresponding
pressed item is updated,
total price is
updated

User checks out of ‘Proceed’ button is User is brought to


donation cart pressed donation
confirmation page
where
personal/credit
card info is
entered for
donation

Updated and completed test case design

Functionality Tested Inputs Expected Output Actual Output

Admin requests to edit ‘Manage V-Drive Admin is brought to Admin is brought to


list List’ button is pressed the edit list page edit request page

Admin cancels list edit ‘Cancel’ button is Admin is brought Admin is brought
pressed back to wishlist back to wishlist
page page

Admin requests to add ‘Custom Item’ button Page updates with Admin is brought to
new item to list is pressed Name and Price add new item page
fields, as well as
‘Add’ button

Admin adds new food Name, Priority, and Page updates with Admin is brought to
item to list Price fields are new food item wishlist page with
populated, ‘Add’ added to wishlist updates applied
button is pressed
Price input when Textfield input for Error message Corresponding
adding food item is price does not match displayed error message is
invalid ‘X.XX’ format displayed, admin is
asked to change
offending fields

User doesn’t input Textfield input for Error message Corresponding


food name when food name is left displayed error message is
adding food item empty on submit displayed, admin is
asked to change
offending fields

Admin removes item Garbage can icon next Selected item is Admin is asked to
from wishlist to corresponding food removed from validate the request
item is pressed wishlist and added for deletion, then
to ‘Past Items’ list item is removed
from wishlist

Admin saves changes ‘Save’ button is List is saved and Changes are saved
to list pressed admin is brought on submit of
back to home page new/edited item

User wishes to fulfill ‘V-Drive’ button User is brought to Request fulfillment


food item requests pressed request fulfillment page is opened
page

User adds item from Check box next to Check box is Item is added to
wishlist to shopping corresponding food populated and shopping cart and
cart item is pressed donation cart is total price is
updated, total cost is updated
updated

User up or down signs next Quantity field next Quantity and price
increases/decreases to corresponding food to corresponding are updated
quantity of item in item are pressed food item in
donation cart donation cart is
updated, total price
is updated

User removes item Item checkbox is Item is removed Item is removed,


from donation cart clicked to uncheck it from donation cart, price is updated
check box for
corresponding item
is updated, total
price is updated
User checks out of Donate button is User is brought to User is brought to
donation cart pressed donation donation page to
confirmation page fulfill the donation
where
personal/credit card
info is entered for
donation

● Mockups of user interface


○ https://drive.google.com/file/d/1nmhvG9TYoahEgCo9kcF5Vi-LwGCrixDV/v
iew?usp=sharing
○ PDF is attached the end of this document.
● A discussion of the types of user testing that can be conducted on the project.
○ User testing on the project is an important source of feedback for the
development team, because it comes straight from the people that are using
the project on a daily basis. User testing allows the developers to get
feedback from a different perspective which can be very beneficial in finding
problems that the development team may have not thought of.
○ One type of user testing that can be conducted on the project is simply to
present our prototype builds to the Mercer Street Friends team, and allow
them to interact with the product, use it, and then hear their feedback on
how it performs and functions. Based on what their thoughts on the product
are we can then either make changes, updates, or improvements to the end
product to better suit their needs.
○ Having an open line of communication between the developers and the end
users would also be beneficial for user testing cases. When the project is
finished and pushed out to the internet, users will be able to use it and will
most likely have feedback or opinions on how the UI feels or how the project
works overall. Creating an online forum for the project would allow for end
users and developers of the project to communicate and share their thoughts
on the project. This would give the end users a place to share their feedback
and opinions and possibly lead to a more user friendly, or pleasing project.
○ Having small test groups can also provide beneficial feedback on a more
personal level. Inviting small groups to use a prototype of the project with a
moderating developer can provide the project team with a small focus group
of testers to use the project and then provide their feedback to the
moderator. This style of testing can give the development team concise, and
immediate feedback directly from the people that are testing it. The testers
would be able to show the moderator bugs they might find, or explain their
opinions on how the system feels or things that they feel should be changed.
○ Another easy and simple way of receiving user test feedback is to simply let
the users share their opinions directly after interacting with the project. This
can be accomplished by attaching a simple survey form to the end of the
donation process that is optional. If users feel the need to share their ideas or
opinions about the project, they may do so, however they won’t feel obligated
to do so.
● A discussion of innovative ways to encourage public volunteers and future students,
whether programmers or social innovators, to maintain, improve and grow the
project.
○ Innovative ways to encourage other people to help maintain the project can
exist in multiple ways. Either through direct contribution, by joining the
project and contributing to existing designs and bug fixes. Outside
participants can contribute to the project to gain experience, add it to their
resume, or just help out for the betterment of the overall project, and the
benefit of Mercer Street Friends. Another way we can get outside
contributors to help maintain the project is by attaching simple surveys and
bug reports to the project. After donating, a donor would be able to fill out a
survey and provide any criticism or feedback that they might have about the
platform. This would be a simple way to get users involved with the
development of the project, and it would be beneficial for Mercer Street
Friends to continually be able to improve the V-Drive over time based on
what the end users feel about the donation process. This would allow any
group of students working on the project to be able to receive feedback while
developing the V-Drive.
○ Other ways the project can be improved is through bug reports, such as if the
program crashes or if bugs appear in any form there should be a way to
report them directly to the development team so that they can be addressed
immediately.
○ In terms of growth, one huge way in which this project can grow
tremendously would be to open source it, and create a community project
that more people can contribute on and use. This would enable other food
banks in different areas to implement their own virtual food drive and in
turn would help feed a greater amount of people overall. By increasing the
footprint of the V-Drive nationally or even potentially on a global scale, the
presence the V-Drive would have on the internet would also increase
tremendously, and be able to reach more donors.
○ One of our final reach goals for the V-Drive project is a social media outreach
capability, and the ability to share the V-Drive to social media. Once a user
donates, and completes their own donation, they would have the ability to
share what they have donated, on platforms across social media, most
importantly Facebook. This would have a domino effect and hopefully get
other people to donate as well.
Construction: Implementation
All source code is located in the following GitHub repository:
https://github.com/TCNJSwEngg/msf/tree/s19-07
Construction: Testing
Below is the link to all code review comments left by other students on GitHub at the
following link:
https://github.com/TCNJSwEngg/msf/pull/227

Feedback and Testing Our Response

MSF recommended we implement a goal of We were able to implement this. An MSF


sorts for food items for donors to see. employee can set the goal and a donor can
see it and see how it changes as items are
added.

MSF recommended we give the donor a tax We were not able to implement this yet,
refund report after donating. but it is an ‘Future Work’ issue added on
GitHub.

Bug was discovered during testing that This bug was fixed
made items not add to the shopping cart if
the V-Drive page was accessed twice
without reloading

Transition: Maintenance
All source code is properly documented, and report is properly labeled and organized.
Transition: Product Hand Over
Include a listing of functionality that was not completed or can be added in a future version
of the application. All documents should be uploaded to GitHub wikis.

Functionality Tested Inputs Expected Output Actual Output

Admin requests to edit ‘Manage V-Drive Admin is brought to Admin is brought to


list List’ button is pressed the edit list page edit request page

Admin cancels list edit ‘Cancel’ button is Admin is brought Admin is brought
pressed back to wishlist back to wishlist
page page

Admin requests to add ‘Custom Item’ button Page updates with Admin is brought to
new item to list is pressed Name and Price add new item page
fields, as well as
‘Add’ button

Admin adds new food Name, Priority, and Page updates with Admin is brought to
item to list Price fields are new food item wishlist page with
populated, ‘Add’ added to wishlist updates applied
button is pressed

Price input when Textfield input for Error message Corresponding


adding food item is price does not match displayed error message is
invalid ‘X.XX’ format displayed, admin is
asked to change
offending fields

User doesn’t input Textfield input for Error message Corresponding


food name when food name is left displayed error message is
adding food item empty on submit displayed, admin is
asked to change
offending fields

Admin removes item Garbage can icon next Selected item is Admin is asked to
from wishlist to corresponding food removed from validate the request
item is pressed wishlist and added for deletion, then
to ‘Past Items’ list item is removed
from wishlist

Admin saves changes ‘Save’ button is List is saved and Changes are saved
to list pressed admin is brought on submit of
back to home page new/edited item

User wishes to fulfill ‘V-Drive’ button User is brought to Request fulfillment


food item requests pressed request fulfillment page is opened
page

User adds item from Check box next to Check box is Item is added to
wishlist to shopping corresponding food populated and shopping cart and
cart item is pressed donation cart is total price is
updated, total cost is updated
updated

User up or down signs next Quantity field next Quantity and price
increases/decreases to corresponding food to corresponding are updated
quantity of item in item are pressed food item in
donation cart donation cart is
updated, total price
is updated
User removes item Item checkbox is Item is removed Item is removed,
from donation cart clicked to uncheck it from donation cart, price is updated
check box for
corresponding item
is updated, total
price is updated

User checks out of Donate button is User is brought to User is brought to


donation cart pressed donation donation page to
confirmation page fulfill the donation
where
personal/credit card
info is entered for
donation
Presentation Slides:
Manual for Use:

To set up the software:

>> git clone ​https://github.com/TCNJSwEngg/msf.git


>> cd msf/src
>> bundle install

If bundle install doesn’t work, the issue is probably related to postgresql compatibility.
Perform these steps.

>> systemctl restart postgresql-9.6


>> sudo yum install postgresql96-libs
>> sudo yum install postgresql96-devel

Then run:
>> rake db:create
>> rake db:migrate
>> rake db:seed

To then run the website:

>> rails server

And then go to the server name on the browser (i.e. csc415-s19-team07.hpc.tcnj.edu:3000)

To go to the V-Drive page, type:


csc415-s19-team07.hpc.tcnj.edu:3000/v_drive/index

To go to the Internal Wishlist page, type:


csc415-s19-team07.hpc.tcnj.edu:3000/internal

The rest is pretty intuitive, just play around.

Username: ​admin@email.com
Password: password

Then go to
csc415-s19-team07.hpc.tcnj.edu:3000/internal/wishlist/index
The rest is intuitive, just play around.

List of functionality that was not completed/can be added in future version of the
application:
● Allow for tax receipts to be received by people who actually make the donation
● Allow for price in shopping cart to be sent right to donation module
● Allow donors to share their donations on social media

S-ar putea să vă placă și