Revised Project Vision Document - Amel94/ITC309 GitHub Wiki

Revised Resource Allocation System Vision

Introduction • Resource Allocation System is a platform that contains the allocations of each resources of the projects for IT companies. This system Identify the problems faced by project managers and the effects of those problems on efficiency when allocating the resources. It helps to gather the details of each project and allocate resources according the current allocation of the employees. This system helps to keep a record of each employees’ allocation without conflicting the project work. The main user of this Resource Allocation System is the project manager. Project Manager can allocate the employees to a project with their skills. In the IT department there are Developers, Quality Assurance professionals, Business Analysist. Based on their skills and the requirement of the project work each project manager will assign the resources considering about the availability of the employees. That’s why this Resource Allocation System is important to the Project Mangers. Because usually project managers used to check the available resource on the team meeting before projects starts. But from this Resource Allocation System, Project Manager can check the available recourses for the project timeline based on the requirement. This system helps the project managers to get an idea about the current ongoing projects and project manager can book resources for the upcoming projects. So that there will be no clash between the Resource Allocation. The main user of this system will be the project manager. Project Manager is the one who allocate the employees for the projects and handling the project details. The top-level managers of the company can access to the admin portal of this system. They can add users and check the project reports. That’s the main advantage of building this system for accurate the work of project managers.

Purpose

The purpose of the building this system is we found that there is a problem in clarifying the available resource when allocating to a new project. Because for the mangers there should be an easy way to identify the resources without spending the time with thinking and checking the documentations. Comparing to the other resource allocation systems, in this system we can booked the employees for the upcoming projects and also get each project report containing the project details with the employees allocation of that project.

Goals The main goal of the Resource Allocation System is to accurate the project work and support the project managers work when allocating the employees to the project which are ongoing or upcoming. Using this system will help the project managers and top-level managers to see the clear view of each project with the Report view. So that the management can use the project reports for their decision making.

Positioning

To build the Online Resource Allocation System for managing and allocating resources to the Project. This System can be used by any Organization who is interested in enhancing Operational efficiency at their workplace. Problem Statement

The problem of Find the available recourses when allocating to a project and check the current allocation for the team members of the project. affects Internal Employees & Managers the impact of which is Increase the efficiency in allocating resources and keep a record on each project allocations. a successful solution would be A system that enables project managers to allocate resources by checking the current allocation of the resources. Product Position Statement

For Project Managers Who need to allocate for the projects The (product name) is a Resource Allocation System That increase the productivity and efficiency of allocating resources Unlike Thinking Our product helps to track the allocations of the resources and find the available resource for allocating

Stakeholder Descriptions 1.1.1 Stakeholder Summary

Name Responsibilities Amel Niroshan This stakeholder: ensures that the system will be maintainable ensures that there will be a market demand for the product’s features monitors the project’s progress

Pramodya De Silva This stakeholder ensures that the system will be run without any trouble in any condition and check the market demand for this system.

User Environment

As the start-up we thought of doing a web-based application. And we planned to add some reports in this application which unique from the other resource allocation system out in the industry. We have planned to build this system as a multi-tier architecture because it has business layer, presentation layer and database layer in one place to speed up the performance. To map the modelling with these mapping we have used entity and hibernate framework with Spring-boot. In client layer as Chrome, Application server as Apache Tomcat and Database MySQL.

Functional and Non- Functional Requirements

1.1.2 Functional Requirements

Functional requirements can define as the requirements that user expiations of the performance of the system. For this Resource Allocation system, we are using MVC structure for the code structure. Some of the functional requirements of the system are mentioned below.

Admin Interface: • Top-level managers can access to the reports of allocations and projects. • Admin users can create users for the system • Admin users can Delete projects with the approval of the Top management.

Client Interface: • The project manager can add resources and add the allocations for particular resource. • The project manager can add the projects, update project timeline. • The project manager can book the employees for the upcoming projects. • Error massages should pop up whenever they over allocate for any resource. • Managers can check the under allocate and over allocate resources for the selected time period. • Project manager can check the allocations for each project.

1.1.3 Non- Functional Requirements Non-Functional requirements can define as quality of the system. These requirements help to maintain the effectiveness and usability of the system. Some of the Non-Functional requirements are mentioned below.

Performance: We planned to use jQuery for data manipulations because it is faster than other queries. And also, for the security we used Spring security. • Employees cannot access to co-worker’s data. • Home page will include a summary of the current month project with allocated resources.

Evolution quality: For the ease of maintainability and scalability we planned to use Spring Boot. • All the reports will generate quickly, and managers can generate the pdf copy of each report.