Requirement of Assignment 2 (30%)
For Assignment 2, you have the flexibility to choose between SQLite or MySQL as your database management system. It will be a group decision to determine which one to use for your project.
If you decide to create a Laravel project called "myApp," each group will have access to a MySQL per
account that can be utilized for your project. This option is available if you prefer to use MySQL.
Alternatively, if your group prefers to use SQLite, you can utilize the account of one of your group members to set up and manage the SQLite database for your project.
The choice between SQLite and MySQL will depend on your group's preferences, familiarity with the database systems, and the specific requirements of your project.
Initial page
For Assignment 2, it is required that the login/logout section of the site authenticates users with encryption. This ensures secure access to the system.
In addition, the website should be fully functional, incorporating interactions with the database. This means that the necessary interactions between the client-side and server-side must be implemented and working effectively.
To achieve this, you need to ensure that user authentication is handled securely, encrypting sensitive information such as passwords during login and logout processes.
Furthermore, the website should support seamless communication between the client and server sides, allowing for smooth data retrieval, storage, and updates in the database.
By fulfilling these requirements, the website will be fully functional, providing a secure and reliable user experience while effectively managing interactions with the database.
Registration page
The registration page is responsible for storing the registration data provided by users. Ensuring the proper storage and management of registration data is crucial for maintaining the integrity and security of the system,as well as facilitating user management and system functionality.
Dashboard
The Dashboard page is exclusively accessible to registered users. Depending on their role, the dashboard will display different summaries of expenses and relevant information:
1. Registered Staff:
• Ongoing Expense Summary: This section displays the expenses that are currently awaiting approval from the Head of Department.
• Approved Expenses Summary: This section shows the expenses that have been approved by the Head of Department.
2. Registered Manager:
• Expenses Waiting for Approval Summary: This section lists the expenses that are currently awaiting their approval.
• Ongoing Expenses Summary: This section displays the expenses submitted by the Manager themselves that are yet to be approved by the Head of Department.
• Approved Expenses Summary: This section provides an overview of the expenses submitted by the Manager that have been approved.
3. Head of Department:
• Expenses Waiting for Approval Summary: This section shows the expenses that are currently awaiting approval from the Head of Department.
• Staff/Manager Summary: This section provides information on the number of staff and managers under the responsibility of the Head of Department.
4. System Manager:
• User Summary: This section displays the number of registered staff, managers, and Heads of Department.
• Expense Summary: This section presents the number of expenses based on their status, including the count of drafted, submitted, and approved expenses.
By presenting these summaries, the Dashboard page provides a concise overview of expense statuses and relevant information based on the user's role, facilitating efficient management and decision-
making within the system.
Expense Page []
This page should be available only for the registered staff and managers.
All the requirements described in expense page in assignment 1 (I.e., expense submission form) should be interacted with the database.
Staff and managers also can view list of the expenses that have been drafted/submitted with the status of their submitted expense reports with details (e.g., pending, approved or rejected).
Expense Review and Approval Page []
The Expense Review and Approval page is exclusively accessible to Managers and Heads of Department. It serves as a platform for reviewing and processing pending expense reports. The page provides the
following functionalities:
1. Display of Pending Expense Reports: The page presents a list of expense reports that are
awaiting review and approval. Only reports in the pending state are visible to Managers and Heads of Department.\
2. Detailed Expense Report View: Managers and Heads of Department can access the complete
details of each expense report, including the submitted documents attached to the report. This allows for a thorough evaluation of the expenses incurred.
3. Approval or Rejection of Expense Reports: Managers and Heads of Department have the
authority to approve or reject expense reports based on their assessment. They can make
informed decisions after reviewing the details and supporting documents associated with each report.
4. Comment and Feedback Provision: Managers and Heads of Department can provide comments or feedback on the expense reports as needed. This allows for effective communication
between the reviewer and the employee who submitted the report, facilitating clarification or additional information if required.
By leveraging the functionalities offered on the Expense Review and Approval page, Managers and
Heads of Department can efficiently assess, approve, reject, and provide feedback on expense reports, ensuring adherence to organizational policies and effective financial management.
Approval process
The approval process for expenses follows the following guidelines:
1. Manager Approval: Expense reports need to be approved by the Manager before they can
proceed to the Head of Department for further review. If the Manager approves the expenses, they will advance to the next stage.
2. Head of Department Review: After receiving approval from the Manager, the expenses are
forwarded to the Head of Department for final review and approval. The Head of Department will evaluate the expenses and make a decision.
3. Rejection by Manager or Head of Department: In case the Manager or the Head of Department rejects the expenses during theirrespective review stages, the expenses are directly sent back to the staff member who submitted them. This allows the staff member to address any
concerns, make necessary revisions, or provide additional information as requested.
By implementing this approval process, the expenses undergo a thorough review by both the Manager and the Head of Department, ensuring appropriate scrutiny and decision-making. If any rejection occurs, the staff member is promptly notified, enabling them to take corrective actions before resubmitting the expenses for approval.
Profile page
The Profile page is accessible only to logged-in users. It provides registered users with the ability to modify their department and password. The following functionalities are available:
1. Department Change: Registered users can update their department information on the Profile page. This allows users to reflect any changes in their department affiliation within the system.
2. Password Update: Users can change their password on the Profile page. This feature ensures
that users can maintain the security and integrity of their accounts by periodically updating their passwords when the user updates the password, it should validate the original password first.
By offering these functionalities on the Profile page, registered users have control over their department information and the ability to maintain the security of their accounts by managing their passwords
effectively.
Master Expense page
The Master Expense page is exclusively accessible to System Managers and serves as a centralised
platform for managing expenses. It enables System Managers to interact with the database and perform various actions related to expense reports. The following functionalities are available:
1. Comprehensive Expense Report List: The Master Expense page provides System Managers with a complete list of expense reports across all stages, including draft, submitted, approved, and rejected reports. This comprehensive view allows System Managers to oversee the entire
expense management process.
2. Edit Expense Status: System Managers have the authority to modify the status of expense
reports based on requests from the Head of Department. For example, they can change the
status of an approved report to rejected if instructed by the Head of Department. This flexibility ensures that expense statuses accurately reflect the decision-making process.
3. Expense Removal: Regardless of the status of an expense report, System Managers have the capability to remove expenses from the system. This functionality allows for the deletion of unnecessary or outdated expense reports, promoting data cleanliness and system efficiency.
By leveraging the Master Expense page, System Managers can efficiently view, edit, and remove
expense reports, ensuring seamless management of expenses throughout all stages. This centralized
platform empowers System Managers to maintain accurate records and facilitate effective communication with the Head of Department.
User Management page []
The User Management page is accessible exclusively to the System Manager and the Head of
Department. Each role has specific privileges and responsibilities within this page. The following functionalities are available:
Head of Department:
1. Staff and Manager List: The Head of Department can view a comprehensive list of staff and managers within their department. This provides them with an overview of the personnel under theirresponsibility.
2. Role Modification: The Head of Department has the authority to change the role of individuals within their department. They can promote a staff member to a manager or demote a manager to a staff member based on organizational requirements.
System Manager:
1. University User List: The System Manager has access to a complete list of staff, managers, and heads of departments across the university. This enables them to have an overview of all users within the system.
2. Department Management: The System Manager can add or remove departments within the university. This allows for the dynamic configuration of departments to align with organizational changes.
3. Head of Department Assignment: The System Manager has the privilege to assign or remove the Head of Department for each department. Only one Head of Department can exist per department at any given time.
Summary of Deliverables
For the completion of the project, the following deliverables are expected:
1. Fully Functional Web Application: A web application that meets all the specified requirements, including user registration, login/logout functionality, expense submission, expense review and approval, profile management, and any other relevant features.
2. Source Code: The source code of the web application should be stored in the group directory
within the usermin environment. This directory should contain all the necessary files and folders related to the application's development.
3. Database Schema: The database schema, outlining the structure and relationships of the database tables, should be included in the project documentation. This schema helps in
understanding the organization of data within the system.
4. Documentation: A Readme file should be prepared and submitted to the designated MyLO submission folder. It should contain essential information, including:
• Path to the group's account in usermin, specifying the location of the web application
• Credentials of the System Manager, Managers, and Staff members. This information enables access to the application with different user roles for testing and evaluation purposes.
5. The last modified dates of the assignment files hold significance, and it is crucial to adhere to them. It is essential that no modifications or changes are made to the files after the specified due date.