GithubHelp home page GithubHelp logo

mainvas's Introduction

Table of content

Business process

Increase Basket cost value by providing Delivery fee discount

User stories and cases

User stories

DD-1. As a customer of the Delivery service, I want get delivery fee discount so that a my order will be cheaper.

Note: I always want to get most profitable suggestion on a market.

DD-2. As a manager of the Delivery service, I want increase cost of orders so that it gets more revenue.

Note: I keep track at a business metrics, and the revenue is one of them.

Use cases

DD-1.1 - A Customer gets the discount after added new items in a basket

Actors Customer, Delivery Platform, Mobile App
Stackholders Manager
Preconditions
  1. Manager set target value of basket cost for Delivery fee discount on Delivery platform
  2. Manager set values in discount grid on Delivery platform
Triggers Customer adds item in basket by Mobile App
Main success scenario
  1. Delivery Platform calculates Basket cost value
  2. Delivery Platform suggests to Customer adds new items in basket by Mobile App
  3. Customer adds new items within enough total cost in basket by Mobile App
  4. Delivery Platform calculates Delivery fee discount
  5. Customer creates order with Delivery fee discount by Mobile App
Alternative paths Alt case 1
  1. Customer ignores a suggest
  2. Customer creates order without Delivery fee discount by Mobile App

DD-1.2 - A Customer gets the discount after change quantity exists items in a basket

Actors Customer, Delivery Platform, Mobile App
Stackholders Manager
Preconditions
  1. A Manager set a target value of basket cost for the discount on the Delivery platform
  2. Manager set values in discount grid on Delivery platform
  3. There are quantity of items available for order
Triggers Customer adds item in basket by Mobile App
Main success scenario
  1. Delivery Platform calculates Basket cost value
  2. Delivery Platform suggests to Customer changes quantity of items in basket by Mobile App
  3. Customer increase quantity of items until enough total cost in basket by Mobile App
  4. Delivery Platform calculates Delivery fee discount
  5. Customer creates order with Delivery fee discount by Mobile App
Alternative paths Alt case 1
  1. Customer ignores a suggest
  2. Customer creates order without Delivery fee discount by Mobile App
Alt case 2
  1. Customer increase quantity of items in basket by Mobile App, but doesn't rich to enough total cost
  2. Delivery Platform suggests to Customer changes quantity of items in basket by Mobile App
  3. Customer ignores a suggest
  4. Customer creates order without Delivery fee discount by Mobile App
Alt case 3
  1. Customer increase quantity of items in basket by Mobile App, but doesn't rich to enough total cost
  2. Delivery Platform suggests to Customer changes quantity of items in basket by Mobile App
  3. Customer increase quantity of items until enough total cost in basket by Mobile App
  4. Customer creates order with Delivery fee discount by Mobile App

DD-2.1 - The Delivery platform suggests the discount

Actors Manager, Delivery Platform
Stackholders Customer
Preconditions
  1. A Manager set a target value of basket cost for the discount on the Delivery platform
  2. A Manager set a target revenue metric on the Delivery platform
Triggers A forecast of the revenue metric doesn't rich target value
Main success scenario
  1. Manager checks sign of revenue metric on Delivery Platform
  2. Manager activates discount program on Delivery Platform - Delivery fee discount from definition amount
  3. Delivery Platform suggests to groups of Customer Delivery fee discount from definition amount
  4. Delivery Platform periodical checks the revenue metric
  5. Delivery Platform gives sign of the change revenue metric
  6. Manager checks sign of revenue metric on Delivery Platform
  7. Manager deactivates a discount program on the Delivery Platform - Delivery fee discount from definition amount. If forecast of revenue metric has riched target value.
Alternative paths Alt case 1
  1. Manager leaves without changes launched discount program on the Delivery Platform - Delivery fee discount from definition amount. If forecast of revenue metric hasn't reached target value.
Alt case 2
  1. Delivery Platform automatically activates discount program - Delivery fee discount from definition amount
  2. Delivery Platform suggests to groups of Customer Delivery fee discount from definition amount
  3. Delivery Platform periodical checks the revenue metric
  4. Delivery Platform deactivates a discount program - Delivery fee discount from definition amount. If forecast of revenue metric has riched target value.

Metrics

Business metrics

  1. ARPDAU (average revenue per daily active user). This value shows dynamic changes revenue before/after suggest of the discount.
  2. DAU which accepted the suggest. This value shows interest of a Customer to the discount.
  3. Forecast ARPMAU (average revenue per monthly active user). Accept decision about suggest the discount depends from changes of this value.

Technical metrics

  1. Count of attempts when quantity of items didn't available.
  2. Count of attempts when a Customer's favorite item didn't available.
  3. Count of attempts when a Customer was continuing to make order with minimal the discount.
  4. DAU per Use case which accepted the suggest.

Functional Requirements

Use case: DD-1.1 - A Customer gets the discount after added new items in a basket

Code Name Description
DD-1.1-1 Settings for the discount User with Manager role must gets opportunity set up Target value of basket cost for Delivery fee discount, discount grid on Delivery Platform. Discount grid contains from values the settings above which correlates each other - if basket cost more then discount more. Max value of Delivery fee discount = 100%
DD-1.1-2 Consider the discount settings in algorithm of calculate basket cost value Delivery Platform must considers the discount settings (DD-1.1-1) in algorithm of calculate basket cost value. New algorithm TBD
DD-1.1-3 Suggestion discount for Customer Delivery Platform makes suggestion of Delivery fee discount to Customer by Mobile App. Suggestion appears per each Customer's order which reached Target basket cost for discount. Delivery Platform recalculate discount after each change of basket cost
DD-1.1-4 Dashboard for metrics of feature Reporting services should has a dashboard with business and technical metrics of feature. Metrics was describe in separate file "Metrics"

Development tasks

Task 1 - [backend] Delivery platform. Add settings for discount

Description:
1. Create new table Discount grid.

2. Change algorithm of calculate basket cost value - include in the formula new variable for Delivery fee discount which is subtracted from the cost total. The variable takes a value within depends from include the cost total between neighbours value of discount grid. Max value for "Discount" field = 100.
3. Add new attributes in response GET /app/v1/calculate to Mobile App: "extra_sum_disc":int.
Formula if CalcCost greater than Minimal Target Cost in the grid: extra_sum_disc = min(TargetCost) - CalcCost
Formula if CalcCost between two values Target Cost in the grid: extra_sum_disc = max(TargetCost) - CalcCost

Links:
1. UserStory
2. Use case
3. REQ

Task 2 - [frontend] Mobile App. Add pop-up for discount

Description:
1. If there is attribute "extra_sum_disc" in response GET /app/v1/calculate by Delivery platform the Mobile App shows Customer suggest pop-up with this additional amount diff.
2. Show extra items on the main screen and on the screen of basket. Extra items must be able to available for order. UI/UX mockups attached by link.

Links:
1. UserStory
2. Use case
3. Figma mockup

Task 3 - [backend] Reporting services. Add dashboard

Description:
1. Create Dashboard at table view include all metrics of new feature - Delivery fee discount.
2. Create Dashboard at bar chart with comparison plan/fact for ARPDAU.

Links:
1. UserStory
2. Use case
3. REQ - DD-1.1-4

mainvas's People

Watchers

 avatar

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.