Business Technologies & The Fresh Diet:
A Winning Combination

OUTSOURCING CASE STUDY

Fresh Diet

We do things different, deliberately.

We believe there’s power in a long-term solution versus a short-term fix.

Healthy habits versus unrealistic expectations.

Overall well-being versus the amount you weigh.

Ours is a tailored approach rather than a one size fits all mentality.

We think food should be enjoyed. Not avoided.

Fresh and fabulous. Not frozen. Simple. Not overly complex.

THE CHALLENGE

The Challenge for The Fresh Diet (TFD) project was to streamline the business process for ERP and to make provisions to improve the current implementation with improved UI and workflows for performance optimization and operational excellence and to build on the improvements to cater for The Fresh Diet’s global expansion.

Solution

To achieve this, a detailed insight and understanding of The Fresh Diet’s current business process and implementation was required. Business Technologies team travelled to The Fresh Diet’s head office in Miami, USA to acquire the necessary domain knowledge and to discuss the underlying architecture for the new system in order to establish the improvements required for optimization. After gaining the required domain knowledge and familiarizing itself with the technical and operational workflows of The Fresh Diet, Business Technologies team returned to its base office in Lahore, Pakistan to kick-start the offshore development to revamp the existing application with an improved UI and optimize the existing workflows in the current system for efficiency and user friendliness. In addition to these improvements, the revamped application would also incorporate new functional requirements raised by various TFD departments such as Kitchen, Operations, Logistics, and Customer Services. Business Technologies technical team in collaboration with The Fresh Diet’s technical team finalized the application-architecture as well as the database for the revamped application.

TFD REVAMP APPLICATION SYSTEM ARCHITECTURE APPROACHES

The architectural approaches discussed for the new application were as follows:

Approach 1

In this approach proposed and used by The Fresh Diet technical team in its existing system, the architecture of the TFD Revamp Application would be an MVC (Model-View-Controller) architecture with View (Presentation layer) physically separate from the Model (Data Layer) and Controller (Business Logic Layer) as illustrated by the diagram below:

The PROS & CONS of the above architecture are as follows:

  • Pros
    • The above architecture allows for easing catering of multiple views because the View is already physically separate from the Model and Controller and can utilize an AJAX API to show the data on the presentation layer.
    • No need for separate API to interface with a custom mobile app or any third party app.
    • Modularity, ease of maintainability, scalability and platform independence.
  • Cons
    • Performance Issue: Application response time could become slower as the application grows in no. of users and data due to communication / query by the presentation layer (VIEW) each time to the MODEL and CONTROLLER layer for presenting data on presentation layer.
    • Vulnerable Security: Potential risk of exposure of service with chance of application being hacked during network communication (HTTP GET / POST Request) or information can potentially be lost if the network traffic is sniffed.
    • If HTTP GET requests gets exposed then any web client can also hit the server with unnecessary requests, which can cause Denial of Service (DOS) attack.
    • Encryption and Decryption is required to secure the query string information, which is an overhead and requires extra effort.

Approach 2

  • Pros
    • No Performance issue as in Approach 1
    • No Security vulnerability issue as in Approach 1
    • Modularity, ease of maintainability, scalability and platform independence.
  • Cons
    • To cater multiple views, a separate API layer had to written to interface with a custom mobile app or any third party app, as per need.

The Fresh Diet technical team insisted on using the MVC architecture in Approach 1 to be the architecture for the TFD revamp application because, despite its CONS, they were adamant on keeping the View physically separate from the Model and Controller.

UI Design

The front end (TFD Website and client-side website) and member’s section were unchanged for the revamp stage. Thus, the features/functionality currently in the front end and member’s section were more or less the same with modifications to only those parts where necessary/required.

Functionality for handling the content and features used in front end and member’s section were added to their relative sections i.e., admin and member’s section. For example, gallery slider, pages content, testimonials, FAQ etc.to admin section and Profile Edit, Billing information, Food Profile update etc. to member’s section.

A Twitter Bootstrap Theme was setup for the back end (admin panel).

08

TFD REVAMP APPLICATION MODULES

01 database Design

02 APPLICATION SETUP

  1. Framework Setup
  2. Theme Implementation
  3. Basic Functionality i.e. Login, Forgot Password and Password Recovery

03 CMS BASED WEBSITE FRONT END

  1. Landing Page Gallery
  2. Newsletter Subscription
  3. Testimonials List
    1. US Weekly
    2. Others
  4. The Fresh Diet Articles External Links
A. Sample Menus
  1. Meals options (Premium, Chef and Classic)
  2. Meals sub-options (Breakfast, lunch, dinner, snack, dessert)
  3. Sample Menus Gallery
  4. Plans Features List
B. FAQ Page
  1. FAQ Categories
  2. QA Management
  3. Static/Information Pages
C. Site Meta Information (Social links, SEO related info)
D. Forms/Emails
  1. Contact Us
  2. Affiliate Program
  3. Corporate Wellness
  4. Ambassador Program
  5. Partnerships
  6. Press

04 FRONT END WEBSITE: SHOPPING CART PROCESS

  • New Member Registration
  • Delivery Information
  • Billing Information
    1. Add Promo

05 APPLICATION SETUP

A. Member Login/Logout

B. Member Password Recovery Forms

  1. Enter email to get password reset link
  2. Reset password using reset link

C. Account Overview/Dashboard

  1. Program Renewal
  2. Update Profile
  3. Order History

D. Billing Management

E. Schedule & Day Meal Management

  1. Scheduler
    • a) Show Client Delivery Days Along With Status Icons
    • b) Enable and Disable Delivery Day(s)
  2. Daily Meal Management
    • List Available Meal Categories along with meals for the day
    • Choose Meals for the day
    • c) Bind Delivery Address for the given day delivery
  3. Food Profile
    • a) Manage Client's Ingredients Dislike Basket
    • b) Dislike Counter as per Client's Current Meal Plan
  4. Delivery Information
    • a) Manage Delivery Address
    • b) Manage Delivery
  5. Static Pages
  6. Display Popup on Login Containing Key Information Like
    • a) Remaining Delivery Days
    • b) New Promotions/News

06 ADMIN SECTION

A. ACL Management (Module+ Controller+ Action based)

B. Employee Management

C. Department Management

D. Role Management

E. Resource Management

F. User/Client

  1. Profile Management
  2. Delivery Address Management
  3. Billing/Client's Payment Methods Management
  4. Tasks Management Alias Internal Ticketing System (Specific to Client)
  5. Notes Management
  6. Notes Category Management
  7. Hear About Management
  8. Client Roles Management
  9. Client Resource Management
  10. Food Profile
    • a) Manage Client's Ingredients Dislike Basket
    • b) Dislike Counter as per Client's Current Meal Plan
  11. Schedule & Day Meal Management
    • a) Scheduler
      • (1) Show Client Delivery Days Along With Status Icons
      • (2) Enable and Disable Delivery Day(s)
    • b) Daily Meal Management
      • (1) List Available Meal Categories along with meals for the day
      • (2) Choose Meals for the day
      • (3) Bind Delivery Address for the given day delivery
    • b) Delivery Tab
      • (1) Black Out Day with Additional Days Black Out Functionality
      • (2) Pull Bag Functionality as per new requirements
  12. Log Management

G. Order/Sales

  1. Add Order
  2. Upgrade Order
  3. Downgrade Order
  4. Apply Promo to Order Items

H. Tasks Management - Internal Ticketing System

I. Site Operations

  1. Brand Management
  2. Plan Management
    • a) Templates Management
  3. Delivery Types Management
  4. Kitchen Management
    • a) Lag time Manager

J. Culinary and Kitchen Operations

  1. Diet/Life-style Management
  2. Ingredient's Category Management
  3. Ingredient Management
  4. Flag Management (carb heavy, gluten free etc.)
  5. Meal's Category Management
  6. Meal Management
  7. Meal Diets Management
  8. Meal Flags Management
  9. Meal Ingredients Management
  10. Menu Management
  11. Menu Meals Management
  12. Substitute Ingredients Management
  13. Conflict Management (as per new requirements)
  14. Menu Creation/Menu Posting
  15. System Choose Client's Meal
  16. File Center
    • a) Delivery Labels
    • b) Client Menus
      1. (1). FedEx Shipping Labels

K. Logistics

  1. Distribution Management
  2. Distribution Area Management
  3. Driver Management
  4. Delivery Route
  5. Master Route Management
  6. Daily Route Management
  7. Cancel Routes
  8. FedEx/Shipment Tracking System
  9. Delivery Map
  10. Pull Bag Request Management

L. API/Library Integration

  1. ePay (Payment Gateway integration)
    • a) Client Registration on ePay System
    • b) Client's Payment Method(s) Verification and
      Registration
    • c) Munch Client's Payment Details
    • d) Batch payment
  2. Telogis (routing/geocoding)
  3. Open Street Maps/Leaflet
  4. FedEx

M. Marketing

  1. Campaign Management
  2. Promotion Management

N. CRON Jobs

  1. Auto Renew
  2. Auto Renew Reminder
  3. Cancel Pre-Open Orders
  4. Check Fax Status
  5. Choose Meal Reminders
  6. Clean Temp Directory
  7. Create FedEx Labels
  8. Create Menus
  9. Create Sequence Numbers
  10. Expire Reset Hash
  11. Kitchen Production
  12. Make Client Menus
  13. Menu Selections
  14. Migrate Users
  15. Munch Cards
  16. Process Days
  17. Remove VIP Tag
  18. Email Queue (Emails generated on different levels)
  19. Meal Reminders
  20. Renewal Reminders
  21. Generate Crunch Numbers
  22. ePay Transaction Manager

O. Reports

  1. Financial
    • a) Earned Revenue Report
    • b) Review Payments Report
    • c) Review Batches
    • d) Sales Operation Report
    • e) Delivery Summary Report
  2. Kitchen Operations
    • a) Production Obligation Report
      • (1) Incomplete Meals Order
  3. Marketing
  4. Logistics
    • a) Cancel Route Report
    • b) No Driver Report
    • c) No Distribution Report
    • d) Delivery Report
  5. Others
    • a) "VIP Report"
    • b) Signup Reviews
    • c) Birthday Report
    • d) Cancellation Report
    • e) CC Expiration Report
    • f) Auto Renewal Clients
    • g) Outstanding Help Report
    • h) Lonely Clients Report
    • i) Credit Report
    • j) Review Orders
    • k) First Day Report
      • (1) Expiration Report
    • l) Production Report
07 DATA MIGRATION
08 QUALITY ASSURANCE