IT companies or companies even in other industries must cope with a growing number of projects and clients over time. Employees generally work on the same project simultaneously, performing various tasks, which are issued and supervised by the project manager. In case there is no registration system where information about projects, tasks and working hours is stored centrally, tracking process may cause some difficulties. However, the above-mentioned needs can be met by using a software that facilitates task management and increases productivity, as well.
For my thesis work, I designed and implemented a web-based working time tracking application built on a client-server architecture that provides an appropriate solution to the previously mentioned challenges. The application can increase productivity dramatically, providing an integrated interface for both managing individual clients, projects, tasks and for tracking working hours by employees spent on the project. Project managers can filter and review the data according to various criteria. Moreover, they get a detailed overview of the progress on the project, based on estimated and already-booked working hours. The server side of my application is implemented on .NET framework, whereas, the client side is based on Angular framework. Both components use REST based HTTP protocol for communication.
The compliance of the application with non-functional requirements and the preciseness of implemented functions were verified by both client and server side tests. Also, at the end of my thesis, I provide an analysis of my application from security point of view.
Due to the architectural design of the application, it consists of easy-to-maintain and easy-to-replace components, making it simple to add new features, components or replace existing implementations. Thus, considerable amount of development time can be saved.