vteam #450 was formed to work on custom programming modules and maintenance of an order management system. This was a huge OMS software built on top of ASP.NET web forms and vb.net. The client had significantly a large ticketing management system for its support. He initially started this project in PHP, but it lacked key features like login, clickable charts, search and maintainability for which he needed us to improve the application for his organization’s daily tasks management. Following were the needed key features:
- Login: Create users login for signing into the order management system
- Roles: Define roles according to the type of users so that certain portions of the application should be visible to them
- Tickets Log: This page should display all the opened tickets along with various filters
- Search: This feature should enable users to search the tickets along with some criteria
- KPIs: This page should represent organizations key performance indexes along with their details
- Daily Tasks Listing: This page should consist of user’s daily tasks and have the ability to perform actions like send email notification, reply to a ticket, issue some orders to the user etc. by using Kayako API
vteam# 450 suggested Client to use ASP.NET MVC for this application to make it more robust, scalable and maintainable. For back-end, it was preferred to use replicated MySQL database and the Kayako API. He agreed to our proposed solution and the development begun.
Converting the existing PHP code to .NET and to take it to the next level by working very little everyday was a challenge in itself. Reason being client did not want to spend so much time for this project and asked the developer Khurram Raza to focus for only 2 hours daily on this project and perform other custom programming tasks on priority basis. By keeping all these points in mind, Khurram had to manage the time and work.
For this application, Khurram used Bootstrap for responsiveness and jQuery animations to make it more contextual and user-friendly. All filters were converted to be performed on client side. Separate business layers and data access layers were used which made it more modular. AJAX calls (used to populate data) were needed for getting data. For this, replicated MySQL database was used. It was also used to update data along with the Kayako API for ticket management system. Hence, the powerful combination of both API and database gave a real boost to the operations of this website.
The outcome of this implementation was a more fast, robust and user friendly application that met all the expectations of our Client. He was very happy with the progress till that time and more features were expected to be added as per his further requirements.