Precise timekeeping on clients’ projects is certainly an important task in every contractor company. Even small businesses face the problem of storing and searching such data but as the firm grows in terms of colleagues and clients, this becomes and pressing an issue. Using and outdated system for solving such tasks can prove counterproductive, as they can cause more administrative overhead than it was meant to abolish.
The purpose of this document is to guide the reader through the creation of such a system. The new application mainly uses Java and its related technologies to satisfy the requirements of all the stakeholders, easing its use by integrating with several enterprise systems used within the company.
In the first chapter the old and outdated system is presented, followed by describing the preparation phase with the lessons learned from the legacy application and identifying the business requirements. The next section contains some important design decisions from an architectural or from an integration standpoint, followed by the largest chapter detailing the implementation of the new software stack. This section shows how certain technologies fall into place as building blocks, goes into detail regarding the integration points and shows some interesting problems, and the way they were solved. Last, but not least is a chapter about the lifecycle of the new application from design through implementation to release and live usage. In the final chapter the new software is evaluated from the perspective of different stakeholders.