Skip to content

Instantly share code, notes, and snippets.

@etradaniel
Last active December 31, 2015 21:09
Show Gist options
  • Save etradaniel/d92ba77f71b5bd3ca1d9 to your computer and use it in GitHub Desktop.
Save etradaniel/d92ba77f71b5bd3ca1d9 to your computer and use it in GitHub Desktop.
User stories for SoupCycle admin system * Assumes that order processing is all handled by the ecommerce system (currently Shopp, a WordPress plugin, but eventually WuCommerce). This new admin system would just be taking some output from the ecommerce db as it's starting point. * Users would need to authenticate to access this system, but there a…
Feature: Calculate batch sizes
So that I know how much soup to cook this week, I want to know the total volume of soup needed for the week and the total soup needed for the first delivery day.
Sceanrio: Calculate batch sizes
When I view the week's summary
Then I see how many pots of each soup are required to meet the week's deliveries, plus extra
Feature: Associate a customer with a delivery location
So that I know where to deliver the customer's order, I want to associate each customer with a delivery location.
Scenario: Assign customer to existing delivery location
When I select a customer
And I select the delivery location from the list of existing locations
And I save
Then the customer is linked to the delivery location
Scenario: Create new delivery location if none exists
Given I don't see the customer's location in the list of existing locations
When I add a new location
Then I see the form for creating a new location
Scenario: Require a delivery location for each customer
Given the customer does not have a delivery location
And I save
Then I am prompted to indicate the delivery location
Scenario: Process new customers
Given there is a new customer this week
When I view the new customer dashboard
Then I see the list of all new customers that need to be associated with a delivery location and route
Feature: Manage delivery locations
So that I can plan a route and know how each customer wants to receive their delivery when I arrive, I want to manage a list of delivery locations
Scenario: Create a new location
When I create a new delivery location
And I enter an address
And I enter a location name
And I enter delivery instructions
And I save
Then the new location is created
Scenario: Edit an existing location
When I select an existing location
And I edit the address
And I edit the name
And I edit the delivery instructions
And I save
Then the location is updated
Feature: Manage delivery routes
So that I can make sure our deliveries happen in the most efficient way, I want to adjust the default delivery routes each week based on the week's volume and delivery locations.
Scenario: Create a new route
When I create a new route
And I name the route
And I save
Then the route is created
Scenario: Set a default route for a delivery location
When I select a delivery location
And I add it to a route
And I save
Then the location is associated with the route
Scenario: Plan routes for the week
Given the delivery volume exceeds the capacity for a route
When I view the route planning page
Then I see which route might have issues this week
And I see which routes might have extra capacity
When I select the problem route
Then I see the list of delivery locations near the edges of the route
When I select a delivery location
And I update its route assignment for the week
And I save
Then I see the updated route capacities
Scenario: Reset this week's routes to defaults
When I view the route planning page
And I reset the routes to defaults
Then I see all the route totals with default delivery location assignments
Feature: Print packing sheets
So that I make sure coolers and trailers are packed correctly, I want to know how many of each type of soup should be packed into each route's coolers and how many breads and salads are needed for each delivery day.
Scenario: Print the packing sheet
When I print the packing sheet
Then I see a sheet for each route
And I see an inventory of what should be packed into each cooler for that route
And I see the number of salads for the route
And I see the number of breads for the route
Feature: Print route sheets
So that I know what to deliver to whom, I want to print all the route sheets for the day's deliveries
Scenario: Print route sheets
When I print the route sheets
Then I see the list of all orders for each route for the day
And I see the orders grouped by delivery location
And I see the order sorted into a route order
Scenario: Print office sheets
Given a delivery location has special instructions
When I print all the office sheets
Then I see a page for each location with special instructions
And I see the page has the list of orders for the loction
And I see the page contains the special insructions
Feature: View route history
So that I can answer questions from customers who believe we screwed up and forgot their order, I want to see a list of all the orders that were on hold for a given week.
Scenario: View route history
When I select a delivery week date
Then I see the list of orders that were on hold for the week
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment