A Web-Based Complaint Desk - Pace University

Transcription

Proceedings of Student Research Day, CSIS, Pace University, May 9th, 2003A Web-Based Complaint DeskGaneshram Boodhoo, Xiang Gao and Bobby Ramamurthythe course of the next few years. Morefunctionality will be added on andconcerns not addressed at the presenttime, like legal and ethical issues will beaddressed. At the present time, theseissues are beyond the scope of thisproject. As per the vision of our client,the compliant desk is based on threemodels:AbstractThe “complaint desk” is a web basedsystem that records grievances. Users ofthe system can report their grievancesusing a web interface, and all theinformation is stored in a backenddatabase.To quote Josh Billings, “the wheel thatsqueaks the loudest, is the one that getsthe grease” Or in other words, the aimof the compliant desk is to empowercitizens so that "their voices areheard".1. Revenue ModelThe user will have to pay a nominal feefor reporting a grievance, only using avalid credit card. The system will recordthe user’s personal details and be able torecognize the kind of credit card the useris using. The system will not however,be validating the credit card. This is outof scope of the present project.The idea behind this complaint desk isto build a mechanism which will notonly be a source of revenue but willalso provide a service to the communityby giving people an opportunity toparticipate in an endeavor that willmake their voices heard. To discourageusers from abusing this service, a useris required to have a valid credit card,this serves two purposes, it will not onlyvalidate the identity of the user but willalso generate revenue as a small feewill be charged for reporting agrievance.2. Data Capture ModelThe aim of this system is to provide asimple interface, so that even a noviceuser will be able to record a grievancewith ease. Keywords or hints areprovided so that the user can navigatethe system and report his/her grievance.3. Reporting ModelThe database design enables creation ofreports by querying the database. It is apowerful tool, which can keep track ofthe types of grievances reported. Lateron, as more functionality is added on,reports can be generated to give detailsabout resolution.In addition, to reporting, the database isalso designed so that a user can seeIntroductionThe scope of this project is limited todeveloping the user interface of thecomplaint desk. A fully functionalcomplaint desk is to be developed over6. 1

organizations. People’s complaints neednot be limited to just businesses oragencies. This complaint desk isdesigned to empower citizens to reportcomplaints about any issue that theywant to be addressed.details of problems reported by all theusers of the system.RelevanceFinding similar types of systems provedto be a difficult task. We did find someinstances of complaint desks orconsumer welfare desks that recordcomplaintsfromcitizensaboutbusinesses, organizations or agenciesthat were operating in a particularcountry, county or city. These welfaredesks were either set up governmentagencies or better business bureaus butthey had limited powers. They justrecorded the grievances that weresubmitted by the citizens. There was noevidence of any action being taken bythe authorities.Since the user is paying a fee to report acomplaint and use the system, the issuewill be followed up with the rightauthorities and the user will also havethe capability to checking the status ofhis complaint at each step of the process.MethodologyThe complaint desk is a web-basedsystem. The complaint desk can beaccessed through the web interface,which connects to the backend database.Users will need to login to the compliantdesk before they can report a grievance.Figure 1 describes the data design of thecomplaint desk.We also found references to help desks,which addressed some specific issueslike student complaints, computing helpdesks etc. In fact, our team haddeveloped a computing help desk in thefirst part of this Capstone course. Thisproject involved putting together acomputing help desk system for PaceUniversity students, faculty, andemployees, and also for members of thelocal community, particularly for nonprofit organizations. The help desksystem consisted of a Web interface tothe backend database. The database wasdesigned to deal with problemmanagement. We used Oracle as ourbackend database, and Perl scripts wereused to connect to the database.What distinguishes the complaint deskfrom the ones mentioned above is thatthe complaint desk’s scope is muchbroader than the welfare desks. Thecomplaint desk will enable people fromall walks of life to report with “any type”of grievances they may have againstFigure 1 Data Flow DiagramThe database has been created usingMySQL. Since the project is expected to6. 2

The complaint desk is now being hostedon the Pace University server. The URLto the web site is:grow over time, our team felt we shoulddesign the system that would bescaleable. So, MySQL was chosen as thedatabase of choice, as it is easy to use,free and compatible with PHP. PHP isalso an open source, server-side, andHTML embedded scripting languageused to create dynamic Web team8/To make navigation simple, thecomplaint desk is using a login and logoff sessions. The system is making useof PHP sessions to check theauthentication the user. If the user is notlogged in, the user is redirected to thelogin page. But, if the user is a first timevisitor to the desk, he needs to register,giving his details. He will also need tochoose a user id and password.MySQL is very easy to set up,administer, manage and manipulate andlearn. Also, since it is open source, thereare a lot of resources available freely,that can be used to make futureenhancements.The web application consists of HTMLpages, PHP pages/scripts and JavaScript. PHP was chosen as the preferredscripting language because of itsbenefits, capabilities and our limitedresources. A fact that was also takeninto consideration was that once thisproject was implemented, there would becertain maintenance requirements toconsider. It must be possible for teamsin the future, to come to maintain theproject, and we felt that PHP would bethe easiest language to maintain and dofuture enhancements on.The complaint desk’s model is based ongenerating revenue by charging a fee forreporting a complaint. To use thesystem, the user will have to provide avalid credit. At the present time, oursystem only accepts Visa, Master Cardor American Express. The complaintdesk system recognizes the type of thecard the user is using. If the user entersan invalid credit number, the system willrecognize it. Cash transactions andvalidation of the credit card is out of thescope of this project.The system, will guide the user throughthe process of registering. Errorsmessageswillshowmissinginformation. After the user has enteredall the information correctly, the user isnow ready to login to the system andsubmit a grievance.The hardware requirements of thecomplaint desk are comprised of adatabase and a Windows based server.As the scope of this project is limited tothe development of the user interface ofthe complaint desk, the database designonly involves the creation of tables thatwill capture the user information and thekind of grievance the user is reporting.This is stored in the database, so the usercan come back later and search thegrievances that were submitted. Theusers will need to login into the systemto report grievances.Figure 2 is a screen shot of the Loginpage. The user can search the databasefor other grievances after logging intothe system.6. 3

The grievance can be reported byclicking on the “submit grievance” link.There are two parts to the grievancepage: submit a grievance and add a newcategory. Associated with them, are twoPHP files named grievance.php andaddCategory.php. The user will need toprovide a subject for the grievance.The user must be logged in and shouldhave completed payment prior tosubmitting a grievance. The userid inthe session is used to check the user’sidentity. To illustrate, a user named“Mr. Q A Tester” has logged in and paidfor submitting a grievance using hiscredit card. After clicking on submit agrievance, this form where the QATester can submit a grievance.Figure 2Login PageAll the information captured from thecustomer is secure. We are encryptingthe user password using MD5 hash[md5()] provided by PHP. The creditcard number is encrypted using Base64encryption[base64 encode()]alsoprovided by PHP version 4.1 and above.The user need not have to login to usethe search the grievances that werereported. The user can search forgrievance based on grievance subject,category, against whom it was made andthe address where the grievanceoccurred.The user can also search based on thegrievance itself. The user can also do awild card search on the grievance field.The result of this query will be a list ofthe grievances that fit the criteria chosen.The complaint desk’s functionality isdriven by the submit grievance page.When the user clicks on the submitgrievance tab, he/she will be redirectedto the login page. If the user has notregistered on the web site, the user willneed to complete the registration formand then login. But if the user is alreadyregistered, he/she can log in and start tosubmit the grievance. Once the user islogged in, he/she will be directed to thesubmit grievance page.Figure 3Submit Grievance Page6. 4

To make the process of submitting agrievance simply, keywords are madeavailable for the user to choose from thecategory drop down menus.This addition will be added to thedatabase as an available category if it isapproved by the admin or added in by 10or more users reporting grievances.However, the user can submit agrievance using this new category once.Category information is stored in thekeyword table. They are read out andpartitioned into groups and then are usedto create the “category” options list inthe grievance page. The user must selecta Category, there are two requirementsneed to be meet: Category1 can not beempty, and Category2 must be selectedbefore user chooses Category3. An alertmessage will pop up if any of theserequirements fail the checking. If theuser has selected an option in the firstcategory, the second category option listwill automatically be refreshed to reflectonly the category which was alreadyselected in the first category.Logic has been built into the system, toprevent a user from misusing thecomplaint desk. For example, a usercannot submit a grievance using a futuremonth or date, this means that theselected date cannot beyond the currentdate.The same logic is applied to the thirdcategory. The database operation and thepartition logic are done on the serverside using PHP logic, and the dynamiceffect of the option list is implementedusing Javascript functions.Figure 5Error Message about submitting agrievance with a future dateAnother distinctive feature of thecomplaint desk is that the grievance pagehas a button that allows the user to addnew categories. Figure 4 illustrates hownew categories can be added to thekeyword list.An alert message like the one illustratedin Figure 5 will pop up if the date chosenis a future date.All the details about the grievance thatthe user entered will be stored in thedatabase, so that the user can come backand search for the grievance and as morefunctionality is added to the system inthe future, he will also be able to trackthe progress of the grievance.Figure 4Add New Category6. 5

But with hard work, open and clearcommunication and due diligence wehave completed the design andimplementation of the user interface forthe complaint desk.ResultsThe complaint desk, as of today, onlythe user interface of the complaint deskhas been designed and implemented asper the client’s requirements.Areas for Future developmentSo we as yet, do not have anyinformation regarding the usefulness ofthe product in the intended environment.But as it stands today, the user can loginto the complaint desk, reportgrievances, search the database forgrievances that were reported.Some of the issues that need to beaddressed in future development are:1. Thedesignoftheagency/organizationinterface:This interface will contain all theinformationabouttheagency/organization, or personwhom the complaint is beingmade. This will also need tohave a backend database, whichwill store all the informationabout the grievances and whatactions were taken to address it.But once all the aspects of the complaintdesk have been completed and it is readyto be implemented, this product will bevery unique and one of it’s kind.As a team, we had experiencedeveloping a system like this. We haddeveloped a computing help desk in thefirst part of this two-part capstonecourse. In many ways, this product issimilar to the help desk, in that, both areweb-based products that link to abackend database.2. Validation of the credit cardinformation of the user: We arejust getting this information andstoring it in an encrypted form inthedatabase.Futuredevelopment will have to addresshow this credit card informationcan be validated.But when the team started on thisventure, designing the complaint deskproved to quite a challenge, as we had totranslate our client’s vision into afeasible product. Added to this, we hadproblems setting up the database.3. Ethical and Legal Issues: Theseissues will have to be addressedbefore the complaint desk canbecome a fully functionalsystem.We had decided to use Oracle as ourbackend database, but we had change toMySQL as we found it more compatiblewith PHP. Also, in future, given thatMySQL is free, enhancements to thecomplaint desk can be made without anyadded cost.6. 6

ConclusionThe complaint desk “has miles to go”before it can become a fully functionalproduct. We, as a team, have justfinished development of the first phaseof the complaint desk.Since the idea behind this complaintdesk is to build a mechanism which willnot only be a source of revenue but willalso provide a service to the communityby giving people an opportunity toparticipate in an endeavor that will maketheir voices heard.We have implemented the user side ofthis complaint desk, more developmentis necessary over the next few years toadd more functionality to make this intoa viable commercial product.References1. S.K. Kalia, C.C. Tappert, A. Stix,and F. Grossman, A PervasiveComputing Solution to Asset,Problem and KnowledgeManagement, E-Learn 2002World Conf. by Assoc.Advancement of Computing inEducation, Montreal, Canada,October 20022. Computing Help Desk: Team /6. 7

computing help desk system for Pace University students, faculty, and employees, and also for members of the local community, particularly for non-profit organizations. The help desk system consisted of a Web interface to the backend database. The database was design