As part of our thesis, we wanted to demonstrate the importance and effectiveness of digital transformation, so we took on the challenge of digitising the payment of the tourist tax. With the help of digital transformation theory, market analysis and a good understanding of the problem, we managed to overcome the challenge. We developed a web application in the form of software as a service using different technologies.
We started by looking at the theory of digital transformation, learning about the basic building blocks that are digitalisation and digitisation and the process of digital transformation itself. We compared its advantages and disadvantages and found that successful transformation can help businesses increase their profits, create better customer relationships and become more agile. This puts them at the top of the industry and allows them to set new standards and lead the way. To get to this point, companies need to put in a lot of effort and work through the disadvantages of digital transformation, which can be very complex (especially for larger companies) and come with high costs. Its success also depends on the digital literacy of employees and especially customers, so it is not necessarily the best route for all companies. We have also learned about the technologies that enable digital transformation, the main ones being cloud computing, mobile technology and application programming interfaces (APIs). We then applied these technologies to the development of our solution. To help us get a better idea, we researched the most well-known examples of digital transformation, with Adobe standing out as the company that set the standard for software as a service by changing to a subscription-based business model.
After a theoretical introduction to the concept of digital transformation, we turned to the problem of digitally transforming the payment of tourist tax. We started with an analysis of existing solutions, using Porter's model to analyse the competition in the industry. Here we found that the tourism industry in Slovenia (to which our solution belongs) is statistically growing, which means that there is room for our solution. In addition, we found that we are exposed to the risk of new companies entering the market, especially those that are already well established in the sector (Booking.com). We then set about identifying the competition, where we found two companies, SnapGuest, which represents our direct competition, and Bentral, which is our indirect competition. Both solutions, including ours, were then analysed using the SWOT method. The result of the analysis showed that our solution has the advantage of being simple and accessible. Our main advantage is the complete automation of the payment of the tourist tax and the registration of the guests, as this is done by the guest himself. Of course, we also have some disadvantages, such as the lack of a mobile app and, above all, the possibility of scanning documents.
After the analysis, we prepared ourselves for the development of the web application, we defined the problem we are trying to solve and our target audience.
With this understanding of our target audience, we set about designing the user interface. First, we created a wireframe, laying out the basic elements and defining the rough layout of our web application. Based on the wireframe, we set about designing the user interface. We decided that the main colour would be yellow, as it is reminiscent of tourism. To make it as user-friendly as possible, we decided to make the elements more round and also to use a font in a similar style. Both the wireframe and the user interface were designed in Figma.
Next, we turned to the choice of technologies. We separated them into three parts, the front-end, the back-end and payment. The first one includes the technologies for creating the visual image of the web application and, after a review, we chose the React framework with the TypeScript version of JavaScript, together with the PrimeReact, PrimeFlex and Formik libraries. For the back-end, we defined the technologies we need for the web application to be functional. We chose Next.js for server-side rendering and Firestore database from Firebase for storing the data, which is then sent to the AJPES service using the SOAP protocol. The web application is hosted on Vercel and the implementation of payment was done with Stripe, which offers a lightweight implementation. All the technologies we have chosen are free at our scale, but offer scalability.
After we had everything ready we started developing the web application, where we first defined the structure of folders and files. Then we started working on the front-end, here we described the process of creating the individual pages and components, along with code snippets. After that, we started to build the back-end, where we took care of storing the data in the database, making payments with Stripe, sending guest data to the AJPES service and hosting the web application. At the end of the chapter, we put ourselves in the shoes of a guest of a tourist accommodation who uses our check-in service to present its workflow.
Finally, we used the Lighthouse tool in Google Chrome and manual testing to ensure the quality of our solution. This allowed us to identify user-induced errors in the web application, and fix them with error handling in the code. This has prevented misuse and abuse of the web application.
|