Developing a cloud-based budgeting web application

OData support
Dr. Asztalos Márk
Department of Automation and Applied Informatics

Today, our incomes may stem from several sources, our expenses may also be fulfilled from different sources. Where several people live under the same roof, it becomes an even more difficult task to keep track of our budget in one central spot. When developing a solution for this problem, it is important that we pay attention to clarity and usability, and the solution should also provide a way to compile reports and collaboration with other users. One should also consider the possibility of managing the budget anytime and anywhere.

An obvious solution is to use recent web technologies for development that make it easy to develop and use such an application. The task of being able to access the application from anywhere may be solved by developing a web application, and by deploying the application to the cloud, it will be able to handle sudden changes in user volume.

For my thesis, I developed a web application running on the Microsoft Azure platform. The budgeting application allows for recording incomes and expenses. The transactions may be categorized and a report can also be compiled. Users who would like to use this service may log in and can view their own budgets, however they can also invite other users who can then also manage the same budget.

It was my goal during development to give an introduction to multiple client side and server side technologies. On the client used, the Knockout JavaScript-based MVVM framework is used with ECMAScript 6 along with UI component libraries. The client communicates with the server over a REST interface implemented with ASP.NET Web API. The application is deployed to Microsoft Azure, showing cloud-specific technologies, for example Worker Roles, Identity Management with several providers and DocumentDB.


Please sign in to download the files of this thesis.