Coder Social home page Coder Social logo

microsoft-engage-2022's Introduction


by Alisha Kamat
Microsoft Engage 2022 Mentee | GSoC 2022 Contributor

The application is based on the 2nd project (data analytics for the automotive sector) and provides quantitative insights into the car industry

Application concept and overview

CarDB is designed to be a freemium application with the B2C features open to all (unregistered) users
and the advanced B2B features (such as detailed analytics) available to only the registered users.

UI design principles

The application adopts a clean, minimalistic, responsive and intuitive UI design

Agile Methodology - Scrum

Features of the Application

B2C features

  1. Provides B2C users with a list of specification details based on a number of filtering criteria
  2. Keeps the users informed about the most popular choices (of Make, Model, Fuel Type, etc.) among different groups

B2B features

  1. Provides B2B users (industry experts) with an in-depth analysis of the trends in the automobile industry based on different filtering criteria
  2. B2C features available for all users; B2B features available for only registered users
  3. Provides demography based details and various analytics
  4. Supplies information to automobile experts related to total sales and revenue of the industry so far
  5. Both grid and graph visualisations have been enabled for B2B as well as B2C users

Admin features

Allows admin access to perform CRUD functionality for

  1. Data maintenance
  2. User management

Process flow diagram (Top level)

Database schema


Note: The demography table isn't entirely optimized in the current form. Ideally it should be split into several smaller tables. For the prototype, I've prioritized simplicity over optimization to reduce the administrative overheads.

Challenges

  1. Industry knowledge - The complexity was not just on the technical side but also had the challenge of learning about a completely new field - automobile industry.
  2. Creating realistic datasets - Even before starting on the application design, the bigger challenge for me was to first create the realistic datasets for this application to work well, without falling in the garbage-in-garbage-out trap.
  3. Code reusability - My original application on the local server was optimized for code reusability. However due to problems encountered after hosting it online (possibly due to cross-platform compatibility issues), I had to drop the guard a little (and allow a little code duplication) so I could build a single codebase that works locally as well as online.
  4. Time management - Out of the 3.5 weeks we had for this program, my final exams took up 2.5 weeks, splitting the focus, effort and time for 2 high priority tasks.

Future Scope

  1. Provide a separate detailed popup page for each car specifications along with individual car images
  2. Include a 'User Review' section
  3. Q&A section and discussion forum for increasing user engagement and time spent on the website
  4. Comparison section for 2 or multiple cars
  5. Show different financing options and tools (like EMI calculator)
  6. Include a predictive analysis feature that allows industry experts to understand future market trends
  7. Provide analysis results to users in textual format (conversational)
  8. Have transactional level data to help provide better and diverse analysis results to users
  9. Allow uploading of csv file for adding data through admin screens of the database to save data entry effort for bigger datasets

Tech Stack

HTML5 CSS3   PHP JS  MySQL Bootstrap

Requirements

  • Software

    • XAMPP version 3.3.0 or higher
    • PHP version 7.4.22 or higher
    • MySQL version 10.4.19 or higher
  • Hardware

    • 4 GB RAM or higher
    • An open and analytical mind :)

Instructions for setup

  1. Clone this repository using git clone https://github.com/alisha-kamat/Microsoft-Engage-2022
  2. Move the Microsoft-Engage-2022 folder to C:\xampp\htdocs
  3. Run the http://localhost/Microsoft-Engage-2022/admin/setup-db.php file to setup the database on your local machine
  4. The website is now running on http://localhost/Microsoft-Engage-2022/homepage
  5. For accessing the admin pages:
    • Username: cdbadmin
    • Password: cdbpw

Troubleshooting tips

Issue Solution
The website is not loading i.e. URL in point 4 above is not working
  • Ensure all the files have been copied, without errors, to replicate the github structure
  • Locate the .htaccess file and move it into the right directory
  • Also ensure that Apache and MySQL are running
The website is loading but the tables and graphs are missing
  • Use phpMyAdmin or MySQL Workbench to check whether the database and tables have been created
  • Also ensure that the data insertion scripts have been executed successfully

Links

List of screens

HomePage

Research

Overview Car Research

Analytics

Registration Login
Dashboard Region Age
Gender Colour

Admin Screens

Admin login Admin Dashboard
View Specs records Edit Specs data Add Specs record
View Sales records Edit Sales data Add Sales record
View Demography records Edit Demography data Add Demography record
View Users records Edit Users data Add Users record

Special acknowledgement

Shoutout to my mentor Parvinder Kaur ma'am for providing invaluable feedback and suggestions.

Need Help?

Feel free to reach out to me via LinkedIn

microsoft-engage-2022's People

Contributors

alisha-kamat avatar

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.