Business Case
1
Table of Contents
Executive Summary .................................................................................................................... 5
Ethical Consideration ................................................................................................................. 6
Software Project Management Plan (SPMP) 1. Introduction ................................................................................................................... 9
1.1 Project Overview ......................................................................................................... 9
1.2 Purpose ...................................................................................................................... 10
1.3 Project Deliverables ................................................................................................... 11
1.4 Feasibility Study ......................................................................................................... 12
2. Project Organization .................................................................................................... 13
2.1 Software Process Model............................................................................................ 13
2.2 Roles and Responsibilities ......................................................................................... 14
2.3 Tools and Techniques ................................................................................................ 15
3. Project Management Plan ............................................................................................... 15
3.1 Tasks .......................................................................................................................... 15
3.2 Requirements (high, security & low level) ................................................................ 17
3.3 Milestones ................................................................................................................. 20
3.4 Risks and Contingencies ............................................................................................ 23
3.5 Timetable ................................................................................................................... 25
Software Requirement Specifications (SRS) 1. Introduction ................................................................................................................. 27
1.1 Purpose of the system ............................................................................................... 27
1.2 Audience and Intended use....................................................................................... 27
1.3 Scope ......................................................................................................................... 28
1.4 Overview .................................................................................................................... 29
2. Overall Description ...................................................................................................... 29
2.1 Product Perspective .................................................................................................. 29
2.2 Product functions or Features ................................................................................... 30
2.3 User Characteristics ................................................................................................... 32
2
2.4 Operating Environment ............................................................................................. 32
2.5 Constraints................................................................................................................. 33
2.6 Assumptions and Dependencies ............................................................................... 33
3. Specific Requirements .................................................................................................... 33
3.1 External Interface Requirements .............................................................................. 33
3.2 Functional Requirements .......................................................................................... 35
3.3 Non-Functional Requirements .................................................................................. 38
Software Design Description (SDD) 1. Introduction ................................................................................................................. 40
1.1 Design Overview ......................................................................................................... 41
1.1.1 Use Case Diagram .............................................................................................. 41
1.1.2 Sequence Diagram ............................................................................................ 42
1.1.3 Class Diagram .................................................................................................... 44
1.1.4 E-R Diagram ....................................................................................................... 45
1.1.5 Activity Diagram ................................................................................................ 46
2. Requirement Traceability Matrix ...................................................................................... 47
3. System Architecture Design ............................................................................................ 48
3.1 Chosen System Architecture ..................................................................................... 48
3.2 Chosen Design Pattern .............................................................................................. 49
4. Components of Software ..................................................................................................... 52
5. User Interface Design ........................................................................................................... 54
5.1 Description of User Interface Design ........................................................................ 54
Software Test Plan 1. Introduction ................................................................................................................. 56
1.1 System Overview ....................................................................................................... 56
1.2 Testing Approach ....................................................................................................... 56
2. Test Plan ..................................................................................................................... 56
2.1 Features to be tested ................................................................................................ 56
2.2 Feature not to be tested............................................................................................ 59
2.3 Testing Tools and Environments ............................................................................... 59
3. Test Cases and Results .................................................................................................. 60
3
3.1 Unit Testing ............................................................................................................... 60
3.2 Security Testing ......................................................................................................... 62
3.3 Functional Testing ..................................................................................................... 63
3.4 Integration Testing .................................................................................................... 66
DEPLOYMENT PLAN ................................................................................................................. 66
CONCLUSION ............................................................................................................................ 67
RECOMMENDATION & FUTURE WORKS ................................................................................. 67
Appendix 1: Digital Prototype .................................................................................................. 68
Appendix 2: Jira Reports .......................................................................................................... 68
Appendix 3: GitHub .................................................................................................................. 71
REFERENCES ............................................................................................................................. 71
4
Executive Summary
Overall, the world is experiencing a technological resolution where all businesses are starting to
use smart software to perform their business task online. This project is about a smart
application, the application is a software application which is going to be used by subcontractors
for their daily business tasks. In this report we will be developing a time tracking application for
recording time and making roster and the application will also let the users to report their daily
work task online.
The report will discuss about the software management plan (SPMP) where the overall project
plan, project requirement and project deliverable will be discussed in detail.
The project will discuss the project feasibility and financial feasibility in detail as well as discuss
about the “project organization” important for project development.
The project will discuss the project software processing model for the project. The application
software process model is an agile process method. The report also includes roles and
responsibility chart for every individual teammate and discuss the overall structure and planning
phase of the project.
The project will also discuss brief about the “ethical” part of IT business and procedure., the report also includes the tools and techniques used to develop the application as well as to
execute the project.
The project will include the software requirements and project requirements in details, high
level requirements and lo level requirements as well functional requirements and nonfunctional
requirement are stated below in the report.
Report consists of step-by-step method and milestones to complete the project, risk for project
and risk assessment for application will be done and provided in the report. Team risks and
timetables has discussed for the project.
The (SRS) software requirement specification has been done and software requirements chart
has been created in the report. The over all system architecture the design pattern, the
component of the software and software test plan has been given below. Software test plans
includes the test cases and results.
The time tracking application has been created, the application is running and had been tested
the Digital Prototype linked the Jira software linked have been attached to the file.
5
Ethical Consideration
There are two major ethical questions arises when it comes to the software ethics review
system.
Q1. Can these systems represent the different codes of ethics of the groups affected by
software-mediated decisions?
Q2. What ethical considerations should guide the design and development of the software
itself?
As we are about to develop a Timesheet Tracker apps for the sub-contractors and contractors
to manage businesses easily; we have to consider and review the software ethics for this
timesheet management apps.
We have to consider few things to review the software ethics to develop this Timesheet Tracker
apps. They are briefly discussed below Ethical approach to system design:
We have to consider more on technical issues rather than on human issues. Breaking down the
app system development information into smaller tasks which consists of sequence of stages,
work feasibilities, requirements analysis, business system options, requirement specifications,
technical systems options etc.
1. Software privacy:
Improper access to personal information is the issue that privacy brings out. Privacy for this
apps should be examined from the standpoint of data fusion, locational privacy, publicly shared
information, and internet technology used.
1.a. Data fusion - Any unauthorized access to information can be an invasion of privacy.
Similar apps shared different data which can be in same name or in format can collided with
ours apps data which can be called as data fusion.
1.b. Locational privacy - Innovative approaches are required to facilitate resource
monitoring and protection while simultaneously ensuring there is no loss of privacy resulting
from location disclosure by the contractors or sub-contractors in the apps.
1.c. Publicly Shared Information - there’s always a chance to breach the privacy if the apps data being shared publicly without proper safety measures and/or voluntarily shared the
directory to the public; it would be considered as ethical conduct.
1.d. Internet Technology- The internet technology being used for the apps we are developing
should follow autonomous software agents and inter-agent protocols will be couched in
social/ethical terms and push technology, which delivers specific content automatically to
the user’s app setting.
6
2. Accuracy:
We are about to develop a timesheet management app for our clients and if the app accuracy
is not measured well then, the app will lose its system control and users will not be able to use
that system for further. Accuracy needs systems inputs, internal processing, and systems
outputs development. Software accuracy follows:
2.a. Software complexity and accuracy- Every software is a complex software to develop so,
in our software we have created interactive time and date recorder, task converter,
generation of valid work-related documentation and work process request and acceptance
system, which needs validation, verification through us. So, we need to focus solving this
complexity of the app and correct the system errors accurately on request.
2.b. Indicators and models- Another problem related to accuracy is determining which
specific information to use in the app. For example, it is often difficult to select appropriate
scheduled data and tasks within sub-contractors and contractors when it might go to be
overlapped situation in the work. So, we need to set an indicator which will give us an
overview of the outcome or condition and then develop a simulation model which will lead
for the immediate solution of the problem.
2.c. Subjective judgement - If we can set subjective probabilities, accuracy of the software
can be affected by a whole array of biases which require us to make ethical decisions based
on the biases we get such as; work date and time missed match, task distribution by the
contractors, invoice overdue and time overlapped biases etc.
2.d. Language and culture - Before developing the app; we need to follow the language rule
so that every aspects of the app can be used by the different language user and clients.
Moreover, we should focus on how well we use key words which are familiar for every
cultural dimension for the users of the app.
2.e. Software system output - Software system ethics also apply to the accuracy with which
results of our actions portrayed by software system we develop. We should provide more
value and options to give a clear picture of understanding to the users for performance
accuracy.
2.f. Information filtering - Information given in the app should be filtered by MIS which
provide direct access by the information summaries which helps bypass intervening
distortions, resulting in more accurate perceptions about the apps information.
3. Property:
Property includes the knowledge possessed by us and the users and used in the software
development process and the communication medium that delivers the software to users. We
7
have to contribute to develop the app with knowledge and skills which may create intellectual
property rights.
3.a. Authorship- We can claim and acknowledge the intellectual property rights of this app
for the sub-contractors as we have developed it for the different users. In this app we will
use metadata that will acknowledge contributions of information and knowledge.
3.b. Bandwidth- in the ethical issues of software bandwidth is most common as in the
common platform environment, it always poses great difficulty owing to the large number
of participants affected. In those cases, dominance by single user can be readily identified
and corrected.
4. Accessibility:
Every software needed appropriate access to its systems as they have technical and
intellectual components. So, we will provide this accessibility to our authorized users.
4.a. Physical access- To use the system we will provide the physical access to our users to
the required hardware and software technology, so one must be able to provide any
required input and must be able to comprehend the information presented.
4.b. Language access- The role of language and culture has already been discussed in
relation to accurate the software system use, where concepts unfamiliar to end-users can
be a problem. We will provide the language access for different language users.
4.c. Skill level- we have to keep in mind that we need to provide sufficient information for
domain experts to validate a system, even though typical software output may be geared
toward a particular target audience. It is more appropriate to develop a separate system
geared to the requirements of each target group rather than try to develop a single generic
system for all users.
4.d. Decision making environment- Decision tools should not be used blindly; thus, we
must fully consider the interactions of all people using and/or affected by a system and
ensure appropriate training to avoid the misuse of the app and parallelly inform them how
they can use it easily.
5. Quality of Life:
Computer systems are generally intended to improve the quality of life- initially in the
workplace, but now in peoples’ personal lives, also. However, systems may actually degrade the quality of working life through deskilling the workforce, which reduces control,
responsibilities, and job satisfaction, increasing stress, depersonalization, fatigue and
boredom, and health and safety concerns.
We have focused to develop our app to be more friendly to the users, end-user’s environment in the app, upgraded technology relevant, economic for the author, easily accessed with
widespread of technology devices.
8
Discussion:
Computer system involvement in decision making leads to new versions of old moral approach
issues- right and wrong, honesty, reliability, loyalty, responsibility, confidentiality, trust,
accountability, and fairness. Without an ethical approach, systems may be put into operational
use in spite of faulty trials and persistent errors and without appropriate consideration of the
people affected.
So, we have to consider privacy, accuracy, accessibility, and effects on quality of life to develop
and deliver for a computer software system. Choosing a particular approach to system
development can either hinder or facilitate addressing these issues in an ethical manner.
SOFTWARE PROJECT MANAGEMENT
PLAN(SPMP)
1. Introduction
The project is to create an application for businesses to track time times. The application is a
time tracking application, the application can be also used for roster managing, updating, and
monitoring the work for business. The application development, need resources and a special
number of members in a team to achieve the final product.
The application will have different functions that require analyzing, creating testing and
monitoring phases.
Each phase is a milestone to progress and create a new function. The planning phase is sub
categorized as groups. The first group is the initial phase where the business case of the
application will be proposed after that the second phase is resources managing phase following
up to creating then testing, monitoring and the costing phase of the project.
The technique used is an agile method technique.
1.1. Project Overview
This project is a business proposal document for businesses who are struggling coping up with
complex business time and roster managing issues. The business case solution is a solution for
time tracking and roster managing for big and small businesses.
The solution of this project is to create an application which can manage these activities and
some extended functions for businesses.
The core objective of this software application solution project is on the Timesheet
Management application for the sub-contractors. In order to focus on the timesheet tracker
9
concept for the sub-contractors. The entire project focuses on different modes of the timesheet
management concepts for the sub-contractors, for which we are developing the application,
that should be able to generate report and show the Interactive record of time and date, allows
user to add the task on which they have worked, generates work invoice from the timesheet,
Submit the work automatically to the contractors and many more flexible features which a
timesheet tracking application needed like accessibility functions.
1.2. Purpose
The purpose of this project is to build an application. The application is a high-tech application
with lots of technical features that will help the business to meet their business requirements.
The application will have to accounts one staff account and one administration account. The
major function of the application is sign in and sign off function, this function will let staff and
administrative worker sign in and sign off online on this application and the time will
automatically store within the database.
The other major function for staff account is the description function, task timing and date
function, and for administration account the major functions are project creation function,
assigned project function, access report function, and can access to see date and time and
working of staff.
The application has two accounts function one administration account and the other one is staff
account function. The administration account is a monitor system account, where the staff
account is the working function.
The administration account will be access only by the managing team like subcontractor, roster
manager and other admiration team depending on the business. The administration function
will provide the management to create project, can assigned the project to staff or teams, can
calculate the timing of the workings done by the staff members can update and can monitories
the working done buy the staff members, and can also manage different project at a time.
The staff account access by the site workers/staffs and can also access by administration teams
if required. The staff account will let staff members can log in when they start their work and
will provided with log off function to sign out when the staff finished their work. This function
will also provide with description table where staff can write the work report daily or weekly
tasks. The description can also be used for hazard reports which can directly Access by managers
or administration team.
The application will calculate the working hours by sign in and sign out function and can also
record.
10
1.3. Project Deliverables
The project deliverables are the requirements of the users or businesses who will use this
application. The project should provide the final smart solution for their business. The
application features and functions need to meet the requirement of the client/business. The
business applications will be completed with different task, like system functionality and that
task can sub dived into smaller task every single task has dependency on the next tasks.
The project will use agile method for this project as communication for the project with client
will be done on regular bases to provide the maximum output of the project results.
The project deliverables have some project constraints such as time frame constraint,
requirements constraints, and functions constraints.
The project application is built on Vuec js framework and use Html, CSS, and Java script language
and some open-source plugins. The software used are Jira software, MS teams and git hub were
the software used for project management activities.
11
1.4. Feasibility Study
1.4.1. Technical Feasibility
The software is as a solution contribute to resolve the business dispute between
constructors and subcontractors, protecting them from unfair and risks; save time, cost
and supports construction project management.
Features requires for contractors:
Create projects with detailed requirements and assigned employees working in the project.
Tracking and know the status of different employee progress across a variety of different tasks and projects.
Track work hours of employee (subcontractors) to the minute and produce accurate Payroll & Invoice Reports
Keeping records and can review timesheet reports before payroll & billing. Chat messages and in-app notifications improve the relationship with employees,
keep work transparent and employees stay positive.
Features requires for subcontractors:
View detailed project requirement with deadline, helping them stay actively with project.
Check-in for work session with time-in, time-out and clear tasks have done. Review check-in records have done and reports of works each fortnight. Chat messages and in-app notifications improve the relationship with contractors,
get work transparent.
The development of the application using Vue JS framework. Vue JS is a modern
framework which is quite similar with React, the runtime performance is similar fast
while Vue Js is easy adopt and each its component can be pre-view and helps
development teams have ideas about the application.
12
1.4.2. Financial Feasibility
The price for similar software in the market ranging about from $50 - $3,000 for one-off
payment a user depending provided functionals. Some similar software in the markets:
Software Price Client OS
STACK $1,999/year/user web, MAC, WIN
eSUB $60/month/user Web, iOS, Android
PlanHub $59/month/user Web JOBPOWER $3,000 Window
2. Project Organization The project organization is a very important part of the overall projects. In a project organization
Everyone knows what is expected of them, what their authority is, and what they need to do in a well-
organized project. It provides the framework for a project's execution. A project will be in shambles
without it.
In an organization, the team consist of several members with special and high-level qualities from
different department put together their expertise to achieve project success. All the members of a
teamwork under the supervisory of project manager. Our team has 5 members from different
specialized courses working as a team to complete this project. We worked together and help each other
out if a teammate needs help. Every team member in our group put their effort to develop this
document and time tracking software application.
2.1. Software Process Model
The time tracking software use the agile method working frame to provide the project
solution for this the team used MS project application, Jira application, MS team’s application to complete this project. As this project is a smart application with a lot of functionalities, the
agile method technological method is the best practice.
The main task is divided into smaller parts and each part segregate accordingly to developing
teams. After achieving each milestone, there is arrange team meeting for the approval of the
work done from the client.
For agile method we use scrum technique using Jira software, we create requirements and
then add requirements to a scrum specified the time limit and process each scrum to
13
complete the project. The team includes a scrum master for organizing the team and the
project.
Agile method:
Description:
After completion of each part/requirement or scrum, the requirement will be shared with the
client and get feedback and approval before moving to the next requirement. For example, after
analyzing the business requirement produce a project requirement send it to the client and
confirm for approval to work before developing phase and like more over.
2.2. Roles and Responsibilities
2.3. Tools and Techniques
For project management, this project approach agile method because with short period
development, Agile is more flexible and effective compared with the other methods. Jira is main
tool used to manage and tracking the process of the project.
For team communication and documentation storage, Microsoft Team is main flatform and
WhatsApp is also use for quick contact and get supports team members.
For the development, GitHub is used for code backups, version control and collaboration.
Tools and resources:
Database: Firebase real time database. Hosting: Firebase hosting. Integrated development environment (IDE): Visual Studio code Framework: Vue JS. Language standards: HTML5, CSS3, JavaScript ES6, jQuery.
14
3. Project Management Plan
3.1. Tasks
The Timesheet Management Application for subcontractors is the main goal of this tech solution
project. The entire research focuses on various modes of timesheet management application for
sub-contractors in order to concentrate on the timesheet tracker concept for sub-contractors,
which allows the software to produce and display the Interactive record of time and date. Allows
the user to add the tasks that they have completed. Creates a job invoice from the timesheet,
submits the work to the vendors immediately, among several other versatile functions that a
timesheet tracker app need. The following sections would go into the specifics of the project's
activities.
Constraints:
Collaboration with subcontractor’s IT staff is required in order to coordinate the
framework into the subcontractors am and its business users and all clients.
15
The lack of a datasets, such as stuff information and details may not specify
properly and clearly which may makes gathering information for the system
incredibly difficult.
Exclusions:
The system will not store or use any private information, such as understudy or
staff personal information, and it will not use any data that is not provided by
subcontractor.
Structure: The internals of the structure, such as functionalities and compositions, will not
be remembered for the description.
3.1.1 Getting started.
It is the first phase of the project, which involves project leader formation and norming. To
determine if the project is feasible to carry out or not, the examination determines the market
for the task features key project objectives based on statistical surveying and maps out
potential detours and offers alternate arrangements; and considers time, budget, legal, and
Labor requirements to determine whether the project is not only feasible but also beneficial.
Organizing:
The team will prepare the project extensively at this time, with a lot of subsidiary
plans in place to implement the project, such as arrangements for working with HR,
arrangements for overseeing costs, and preparing elements, as well as a plan to
identify possible risks and minimize them.
Starting work:
One of most important stage of development is to carry it out according to schedule.
The team members will move into site creation and scripting, as well as research, after
continuing to meet and prepare with all members.
16
Performance Judgement:
This would be the process in which the client evaluates the success of a project to
determine if the client is satisfied with both the design and if it is ready to proceed.
Finishing:
This is now the project's final step, during which compliance protocols will be
implemented and the documents will be handed over to the developer and customers
in a systematic manner.
3.2. Requirements
Project management requirements are a bunch of objectives or rules that should be
met all together for the task to be done effectively. It can include product details of
feature behaver, and even methodology can likewise be utilized. The point of these
details is to safeguard that by the finish of the task, funds and the organization's
drawn-out needs are in a state of harmony.
3.2.1. High Level Requirements
High level requirements are those requirements that will gives you overall birds
eye views about the deliverable goods and services. It will also help to determine
is that product or project vulnerable or not and is it beneficial or not for the
company.
Seral
No
Requirements Description of work
01 Business requirement It’s mainly defined what effect or impact
will be in the organization if they chose
that proposed application or technology.
02 Technological requirement In this stage its mainly focus what types
of technology and system needed to
17
completion of successful project and its
level of requirement s high.
03 Reporting Reporting is one of the most important
requirement in any types of project and
application development. Reporting will
deal with communication with the
timesheet user and report to the
subcontractor about the progress of the
application or project.
04 Validation of data The data or information has to be
relevant and valid for the stuff members,
subcontractors or users to produce
successful time sheet management
application or project.
05 Prerequisites Exercising You'll begin the strategic planning by
interviewing and researching the wishes
and requirements of others, just as you
will for any well-planned project.
3.2.2. Security Requirements
User authentication, storage allocation in offline mode, file system safety, alternatives,
and computer and system resources are all areas where security requirements must be
addressed.
Serial
No
Security requirement How it works
01 Account management and authentication Authentication of account is one of the
core security requirement in any types of
software development. Multi-functional
authentication method can be used for
password and login management.
02 System and information stability Maintain system and information
stability will help to the application
developer to protect application from
hacking. Reliable source of internet and
18
network connection can help to protect
system and database.
03 Verification and code integrity checking Strong verification process and code
integrity can non vulnerable security
protocols to protect application from
unauthorised access.
04 Role supervision and authorisation Role management can play vital rule to
protect from cyber-attack. So project
manager and supervisor have to
supervise access of lower level
employees and have to control role of
them.
05 Key control and cryptography Login key and access control should be
protect with non-vulnerable codding
and cryptography so that access key
should be protected.
3.2.3. Low Priority Requirements:
Low priority requirements are those consistency and/or practical procedure improvements that
are undesirable and less important and allow to avoid unless time and money allow those are:
Serial
No
List of low priority requirements Effects on application
01 Communicating Communication with project or
application developer with the
subcontractor is another requirement to
produce subcontractor oriented
timesheet management application it
will collecting reviews and regular
feedback from subcontractors can help
on this issue you can put it on less
priority but not fully avoidable.
02 All staff members' integrity and attitudes Staff member integrity and behaviour is
important but it’s not first priority to
develop any software or any application
management.
19
03 Make decisions based on several factors Multifactorial decision making is good
among team members but it’s not
mandatory only high priority should be
on quality of work to create successful
application.
04 Ability and conduct of all colleagues It’s still okay to give less focus on ability
to maintain conduct among the team
members but for better result it’s better
to have good communication skills as
team member and as a part of
application development.
3.3. Milestones
Key Milestones Tasks Explanation Projected Time
Starting the
Documentation
Process
The formation
of a team, the
formation of a
contract, and
the formation
of a team
When it comes
to ethical
questions,
Methods of
contact
creation Make
a meeting with
the
subcontractor
and customer.
During first weeks,
project team members
should have been
formed, a contract drawn
up between team
members, and ethical
problems encountered
during the project
identified and resolved
using the ACS code of
ethics. Furthermore,
improving team
coordination is an
important aspect, so set
up MS Team for
communication and Jira
for role allocation.
Additionally, schedule a
meeting with the
customer to go over all
of the project's
specifications.
5 th
April 2021 – 20th April 2021
20
Working with tools
and application for
planning and setup
Meeting with
the customer
and
subcontractor
to complete the
final
specifications,
database
creation, and
design
documentation
We would efficiently
split the tasks among the
group members and
build the Time sheet
Management
Application once we
finish all the criteria for
the client meeting. We
must focus on to the
subcontractor’s requirements and we
would build a system
which will have all of the
relevant database and
information about
employees and stuff
members of the
Timesheet Management
Application user those
involved with the
subcontractors. After
that, in order to
demonstrate the concept
to the subcontractor and
user, we must build an
application by using
HTML and CSS
programmed. After that,
we will schedule another
meeting with the
Timesheet Management
Application user within
the next two weeks and
we will discuss about
rest of the requirements.
20 th
April 2021 – 30th April 2021
Formulation and
Implementation
Check the
prototype and
concept with
the
subcontractors
and users and
make any
further changes
if needed.
HTML and
CSS is a great
platform and
great
programing
language to
learn if you
We must adjust the
concept model and
prototype in HTML and
CSS Application to the
subcontractors and
client's specifications,
then proceed designing
the application and
coding in VUE JS
platform, split the text
for Application
Requirement
Specification, and write
the first drought paper.
After that fix a day to
speak with the customers
1 st May 2021 – 15th May
2021
21
want to create a
website.
Generate a
Software
Requirement
Specification
and evaluate
the impact and
find out proper
solution.
and take suggestions
from them if needed.
User assessments and
statements
In this stage
analysis of the
Timesheet
Management
Application ,
preparation of
the design
model and
model view
controller,
training, and
necessary
database and
information
upgrade.
We will introduce them
to the client Timesheet
Management
Application in this
meeting for the first
time; the client will
validate it and provide
feedback for future
updates. The client will
also be shown the first
drought paper. After that
we will also demonstrate
software requirement
model and Model view
controller to the
subcontractors and
Application user. Then a
next consultation with
the customer and
subcontractors would be
scheduled for further
demonstration and
discussion.
16 th
May 2021- 30 th
May
2021
Timesheet
Management
Application and
security issues
In this stage we
will design
application
concepts,
website
monitoring,
and
compliance
procedures and
security factors
will be
considered.
This Meeting will be
considering demonstrate
how we will secure the
database and stuff
information including
personal and sensitive
details from hackers and
cyber-attack by
presenting the safety
measures for Time sheet
management application.
We'll also continue to
test the Time sheet
management application
and add new
functionality to it if
needed and we'll
1 st June 2021- 10
th June 2021
22
schedule another
meeting with our
subcontractors.
Final approval of the
documentation and
the finished product
which is timesheet
management
application
In this stage we
will finalize
Timesheet
management
application and
final product
testing and
reporting with
the high
security
procedures.
This meeting will be
considered to finalize
our product timesheet
application management
and we will allow our
customer use as testing
stage and will take final
approval from them and
will launch it for final
use.
11 th
June 2021 – 17th June 2021
Completion Documentation
for release and
completion
Finally, product
Timesheet management
application will be
release in this stage and
hand over control to the
subcontractors and other
users for their use and
completion all the
necessary document with
the users.
18 th
June
2021– 20th June 2021
3.4. Risks and Contingencies
Risk management is a major task for project managers. Whatever the case might be,
what does this word really imply? When calculating probability, a risk will undoubtedly
influence the project. Perhaps you're creating a prototype for your project and decide
to skip the consumer audit phase because you're late. If this is the case, the customer
will reject the project.
There is some common risk that may arise at the time of Timesheet management
application development those are may-
23
Risks Associated with Technology
Unexpected modifications in codding platform can cause the system to become
unusable, not to be working and failing due to code resemblance.
Unorganized or poor codding may cause failure of produce successful timesheet
management application.
Not having backup arrangement for application development may be an
alarming risk to develop timesheet management application.
System or software failure may be a risk for project or application development.
Subcontractor can avoid or not accepting timesheet management due to poor
development.
1. Risks associated with data processing.
Database or stuff information is the most important component that is related with
high risk there some risk that may be associated with data those are-
Unexpected data changes may cause the failure of produce successful timesheet
management application.
Hacking of personal information can put customer in high risk
Users personal and confidential data may steal by system developer and can use
their information somewhere else intentionally.
Unauthorised data installation or input may cause application failure.
Use of wrong data or un-relevant information may cause produce system which
may not support actual user or subcontractors.
24
2. Risk associated with team and project development members.
There is some common risk that is always related with team members to develop
any system of project those are-
During the project development project member may be sick or ill and unable
to work
Team member can be busy with their other staff and not able to come and
join meeting.
Some members may not understand project guideline and project
requirement which will be challenging to complete application.
Some members may leave or withdraw unit at last moment which may lead
to arise extra pressure for others group members.
Some members may come from different educational background which may
delay submission.
Complex may arise among team members during project development which
may be lead to delay completion and delivery.
3. Risk associated with inefficient risk control poses a danger.
Inefficient risk control also a risk for any kinds of project or application development
because if risks were not controlled or mitigate properly it leads to the overall failure
of system or application which causes overall project and timesheet management
application failure.
3.5. Timetable
25
4. Step Responsibilities Work starts Work finish Availability of
resources
01 Starting the
Documentation
Process
Week 01 Week 02 Its 1 st Meetings of
team members
and
subcontractors,
clients and users
02 Working with tools
and application for
planning and setup
Week 02 Week 03 Find out external
Sources of
information and a
Customer
Briefing
03 Formulation and
Implementation
Week 04 Week 05 Start software
development and
study more
sources of data
04 User assessments
and statements
Week 06 Week 08 Continuing
Software
development and
collecting
information from
external sources
05 Timesheet
Management
Application and
security issues
Week 08 Week 11 Continuing
Software
development and
collecting
information from
external sources
06 Final approval of
the documentation
and the finished
product which is
timesheet
management
application
Week 11 Week 12 Continuing
Software
development and
collecting
information from
external sources
26
07 Completion Week 12 Week 12 Our won source
SOFTWARE REQUIREMENT SPECIFICATIONS
(SRS)
1. Introduction
This SRS describes the functional features, perspective, user characteristics, operating
environment, and characteristics. Timesheet tracker manages user to manage the time
with project description and requirement.
1.1. Purpose of the system
The main purpose of the document is to provide the track of the project requirements and also can be checked and monitored the status of the project. It is a tool of smooth project operation where an administrative operator can easily control projects.
1.2. Audience and Intended use
There have two types of user role, staff, and admin. An admin user can create new
projects with project description and timeline and can also assigned any staff for the
project.
27
Figure: Project creation
A staff can see the assigned tasks and work on that.
Figure: Project list
1.3. Scope
1.3.1. Benefits
To describe the benefits, it is helpful for time consuming, proper assigning and
best for controlling the manpower. By taking the data of the assigning tasks,
management or admin can analyze the effectiveness of the staffs and utilize
future. Management can manage the staffs properly and can also take
necessary measures for cost minimization.
1.3.2. Objectives
Objective of timesheet tracker is to maintain the staffs properly in business.
The software is configured for the management of time and cost and
28
forecasting for the future implementation of the project. Besides, a timesheet
tracker can also be used for paying the staffs with more accuracy.
1.3.3. Goal
The goal of this timesheet tracker system is to implement the time among the
staffs properly to complete a project. Another goal is to monitor any project at
a glance and make faster decision for the assigned tasks.
1.3.4. Limitations
Staff can monitor their tasks from a timesheet tracker system but cannot
change their status in the current version. Here it cannot take part in any
determination to use the staff in this system. Consistency and effectiveness are
also a limitation because it depends on proper user response. These limitations
sometimes may fail the tracker system. To implement the next versions, we
must keep the major limitations in mind and have to implement with more
accuracy.
1.4. Overview
A timesheet tracker is tracking the timeline of a project which is done by the staffs and
coordinator (admin). To implement a timesheet tracker, there, have some requirements
to fulfill, have to focus on the main goal, properly assign the staffs, which are
implemented in the system. Then the concerned users have to be updated in the system
after completing the tasks. We have maintaining the status in system to monitoring the
tasks. Maintaining these simple steps, this system can be reached its goal. The system is
initialized by the main concept with timesheet tracker, and this can be developed by
more features. Though the system has limitation, but this is very important tool to
complete projects smoothly and comfortable.
2. Overall Description
2.1. Product Perspective
The use of timesheet tracker is efficient for business operation. The focus is to make
tasks easier by some simple digital steps. New user registration is too easy to create and
after login into the system, unlimited tasks can be created for the staff. There also has
29
temporary messaging option for discussion in between the users. This system can
simplify the updates of the tasks. There have customizable options. All in all, the system
can be used for accurate task completion.
2.2.Product Functions or Features
This is an initiation of timesheet tracker process. In the product functions and features,
there has two types of user permission in the registration panel those can be assigned.
Figure: Login interface
30
Figure: Registration interface
After login, an admin user can see the list of the projects that is created by the user and report as well.
Figure: List of Created Project
Figure: Project Report In the project creation panel, there have been features that are shown in the below figure.
31
After creating the project, the project will have shown in the list of created projects.
2.3. User Characteristics
After creating project, assigned personnel will do tasks according to instruction in the
provided timeline. An admin will monitor the process and update the status in the
project and after completion this will be updated as completed. These are the main
characteristics of the system.
2.4. Operating Environment
This software can be used in any operating system like windows, Linux and MacOS as
well in the android and IOS mobile phones. To maintain the operation there must need
internet access and after going to the link (https://timesheet-tracker-
eae58.web.app/login) from any browser.
32
2.5. Constraints
Fluent internet service will be the constraint of the system. There need to proper use
from both admin and staff ends to maintain regular updates which can be challenges in
operations as well.
2.6. Assumptions and Dependencies
The software assumes to its working depends on internet working, then if the
application is not connected to internet and the application can miss or cannot record
the summited data.
3. Specific Requirements
3.1. External Interface Requirements
3.1.1. User Interfaces
Login 4 2 The presentation should be consistent and function
well.
007 F
Login 5 2 Navigation should be simple and effective. 006 F
Login 5 2 Effectively handling operating systems 005 F
none 5 1 User can login into the system as a staff 004 F
none 5 1 The interface response speed should be quick so the
screen should not be leggy.
003 F
none 4 1 The interface should be simple and organized so that
the system can use and access easily.
002 F
none 4 1 The user interface (UI) is one of another important
parts of software application.
001 X
Function Feature requirement
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t
33
F 008 The system Interface should have feedback mechanism. 2 4 Login
F 009 The UI should be responsive. 3 4 Login
F 010 The UI should have a default setting. 3 4 Login
F 011 The UI should have a purposeful layout. 3 4 Login
F 012 The UI should be a centric approach. 3 1 Login
F 013 The UI should have a group base view setting. 4 4 Login
3.1.2. Hardware Interfaces Description
The time tracking application is designed for tracking time for staff and put
work description from site. So, this application will be run on computer as well
as this application will also run on mobile. This hardware interface for this
application can be a desktop, could be laptop or could be a smart phone use in
our daily life routine.
3.1.3. Software Interface Description
The time tracking, the coding part the team used language HTML, CSS and Java
Script at back hand and some open-source plugins to develop the website. The
framework used is Vue js (visual studio code) for interface of the software
application. for storing the data, the application will have a database, created My
SQL quarries and the software used is SQL developer.
3.1.4. Communication Interfaces
34
The time tracking application communication interface is an essential part
where all part of the application is connected to another to work out fine. The
communication interface of time tracking application will be the following:
Email Teams Bluetooth Voice call through application.
3.2. Functional Requirements
3.2.1. Feature Requirements
Login 4 3 Staff can view list of assigned projects from different
admins.
009 F
Login 4 2 Admin can view detail of a project by choosing from list
of created projects.
008 F
Login 4 2 Admin can view list of their own created projects 007 F
Login 5 2 Detail of a project have requirements, deadline, status
(In-process, verifying and complete) and total of
worked hours of staff.
006 F
Login 5 2 Admin can create a project, then assign a staff for the
project from the list of registered staff.
005 F
none 5 1 User can login into the system as a staff 004 F
none 5 1 User can login into the system as an admin 003 F
none 4 1 The system should allow user to register into the
system as a staff
002 F
none 4 1 The system should allow user to register into the
system as an admin
001 F
Function Feature requirement
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t
35
F 010 Staff can view detail of a project by choosing from list of
assigned projects.
3 4 Login
F 011 Staff can submit a work check-in in only in-process
project with worked date, time-in, time-out and task
have done.
3 4 Login
F 012 Staff can send request to admin of a project (project
owner) to verify the project.
3 1 Login
F 013 Staff can view their own list of check-in records of a
project they are assigned.
4 4 Login
F 014 Admin can view list of check-in records from assigned
staff for a project.
4 4 Login
F 015 Admin can edit details of a project they created. 4 2 Login
F 016 Admin can delete only a complete project they created. 4 2 Login
F 017 Admin and staff of a project can view the fortnight
reports with starting date, ending date and total working
time for that fortnight period.
5 4 Login
F 018 Admin and staff of a project can chat or send messages
together.
5 3 Login
F 019 Admin and staff are notified when having new
messages.
5 1 Login
F 020 The system should allow staff or admin to reset the
password by email.
5 1 Login
3.2.2. Reporting Requirements
none 5 1 System report formatting for information delivery to
the user should be paper based and soft copy based.
024 F
none 5 1 User manual or instructions to use the system. 023 F
none 4 1 The system should give details of employees or visitors
who visit this site every day.
022 F
none 4 1 system should give the total number of registered
users.
021 F
Function Feature requirement
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t
36
F 025 Report contents should be customizable so that
customer can do customize based on their demand
which can be front size, front color, and text.
2 5 Login
F 026 Delivery reports via company network system and
sharing excel file with users. Reports also could be
delivered to their destination in the format desired.
2 5 Login
F 027 The reporting system should be safe as there could be
extremely sensitive information including name, email,
phone no and so more.
2 4 Login
F 028 Reporting systems create an automatic list for the
clients.
2 4 Login
F 029 System should supply sequential data based on visitors
Id and first alphabet of their name.
3 4 Login
F 030 The system should have a report header. 3 4 Login
F 031 The system should have a report footer. 3 4 Login
F 032 The system should have reported highly standard
formatting development tools.
3 1 Login
F 033 The system should have a simple and effective report
design look.
4 4 Login
3.2.3 User Access Requirements
none 5 1 Multi – level system access can work on the software system
024 F
none 5 1 cloud-based based authentication can support the
system.
023 F
none 4 1 The software system can work on authenticating a
smartcard and dual-factor USB tokens.
022 F
none 4 1 The system has an internal network connection, front
panel, and authentication process at all entry points.
021 F
Function Feature requirement
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t
37
e n
c y
F 025 The system will provide protection to business user
accounts to avoid attackers.
2 5 Login
F 026 This allows you to save and secure historical logging
records.
2 5 Login
3.3 Non-Functional Requirements
3.3.1 Performance Requirements
T y
p e
ID
Function Feature requirement
S ta
g e
P ri
o ri
ty
D e
p e
n d
NF 001 The application works normal speed and properly when
1000 users access same page
5 1 none
NF 002 The application works properly on different internet
connection speed.
5 1 none
NF 003 Starting website should response under 5 seconds 5 1 none
NF 004 Navigating to another page should response under 2
seconds
5 1 none
C o
m m
e n
t
38
e n
c y
3.3.2 Security Requirements
3.3.3 User Experience Requirements
T y
p e
ID
Function Feature requirement
S ta
g e
P ri
o ri
ty
D e
p e
n d
NF 012 Application should be free bugs or errors 5 4 none
NF 013 Images is loaded and no broken links are present 5 4 none
NF 014 Proper color, text and alignment, all content is readable
and not causing uncomfortable feeling for user
5 2 none
NF 015 Content without misspelling and grammar mistakes 5 2 none
NF 016 All link has proper navigation to the target page 5 2 none
3.3.4 Compatibility Requirements:
Function Feature requirement
NF 005 Output errors from database will not be displayed.
NF 006 Password should not display
NF 007 Password must not less than 6 letters
5 4 none
5 4 none
5 3 none
NF 008
NF 009
Password could be changed or reset by registered email
Data of staff and admin cannot be viewed when user
have not login or have login failure
Staff can not access admin sites and vice versa
User can not access the staff or admin sites after logout
5 2 none
5 5 none
NF
NF
010
011
5
5
4
5
none
none
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t C
o m
m e
n t
39
Function Feature requirement
NF 018 Website can use on most of PC with different OS 5 3 none
NF 019 The application support most of browser version 5 3 none
SOFTWARE DESIGN DESCRIPTION(SDD)
1. Introduction
The application is a software application which will provide the business to manage
their business activities like the time of working calculation, and description and
specification of the work done, or work task report can be generate on the time
tracking application online as well the hour of work individually for each employee can
be calculate on this software application.
The software application used agile method, for delivering part of the application. For
the designing phase the diagrams and charts are develop on Lucid chart, excel, and
online designing tools. The diagrams used to describe how the system will work and
how to create for client and the programmer, to write and understand the software
application completely.
For the coding part the team used language HTML, CSS and Java Script at back hand
and some open-source plugins to develop the website. The framework used is Vue js
(visual studio code) for interface of the software application.
For managing time and meeting the software that used were MS team, Jira for sprints
and scrums and git hub used to develop this software.
T y
p e
ID
S ta
g e
P ri
o ri
ty
D e
p e
n d
e n
c y
C o
m m
e n
t
40
1.1. Design Overview
The Design Summary is a section that introduces the design and gives a quick
overview of it. The System Architecture is a method of presenting a system's
ultimate view and placing it in context with other systems. This gives the reader
and viewer of the paper a chance to get a sense of the design and see a description
before diving into the specifics.
1.1.1. Use Case Diagram
The use case diagram is following below. The diagram shows the overall
structure of the business. The diagram is illustrating the work procedure
between the company, subcontractor, and staff. The diagram clearly showing
the outside and inside working of the time tracking application it illustrates that
a company send their project to one of their subcontractors and then the
subcontractor sub divides the work between the administrative team and staff.
41
The diagram also showing the working of time tracking application that will be
used by the subcontractor to complete the management part of the project.
Figure 1: Use case Diagram
1.1.2. Sequence Diagram
42
Figure 1: Sequence Diagram of user register
Figure 2: Sequence Diagram of user login
Figure 3: Sequence Diagram of project creating from admin and assign for staff.
43
Figure 4: Sequence Diagram of work check-in from staff
1.1.3. Class Diagram
44
1.1.4. E-R Diagram
Figure 1: Entity Diagram
1.1.5. Activity Diagram
45
Figure 1: Activity Diagram of the working process of a project.
46
2. Requirement Traceability Matrix
The requirement traceability matrix is given below:
Requirement’s traceability matrix
Project Name: Time tracking application
Functional and non-functional
requirements
Functional Requirements Priority Test Result
Nr_1 Tracking application FI-001 Register
account
HIGH Positive
FI-002 Login account HIGH Positive
FI-006 Data
uploading
HIGH Positive
FI-0015 Data
managing
HIGH Positive
NFI-007 Report
generating
HIGH Positive
DESCRIPTION:
The requirement traceability matrix includes time tracking software application 5 of main
requirements of the software.
The first main requirement is to register account, all staff and administration team has to
register for sign up to the application via email and have to choose a specific password.
The second main requirement is log into the account, for login the user need to be signup
with the application and need to use the email address.
The third main requirement is data uploading which is dependent on login after login to
the application administrative team or staff member can upload documents or reports of
work.
The fourth main requirement is data managing and the last on of the most important
requirement is reporting or generating, all signed members can create a report on this
application.
47
3. System Architecture Design
3.1. Chosen System Architecture
Server/Client model Server provides services to client devices for client access through the internet. Client
devices can access staff webpages by login as staff or can access admin webpages by
login as admin. These webpages get data from database from firebase API.
Figure 1: Server/Client model
Model Control View (MVC) model
The development of the application using Vue Js framework, so it is not traditional MVC
model. Vue JS focus on View Model and it connects the View and the Model via two-
way data bindings as can be seen in the figure 2 below. View is the DOM (interface
components using HTML) and Model is JavaScript data object.
Figure 2: Two-way data bindings of View and Model in Vue JS
3-Tier Architecture model
The website adopts 3-tier architecture design which is the object-oriented design as
3 logical layers including presentation layer ( view player in client side), logic tier (the
48
business logic layer in server side) and data access layer (database system). Client
cannot access database directly, but through server layer.
Figure 3: 3-tier architecture model
3.2. Chosen Design Pattern
There are some design patterns are applied to build the software.
Singleton pattern for data and router. There is only one Vue instance is instantiated throughout the whole application.
There is one instance of store (vuex) as data object and one instance of router
for mapping the component with route. Those instances of store and router are
passed in the Vue instance throughout the whole application. Therefore, store
(data) and router are designed as singleton in this project.
Prototype pattern for sort and filter methods.
49
As the prototype pattern refers to a partially or fully initialized object that copy,
clone or make use of other objects, it is designed for sort and filter methods in the
application.
For example, in the section showing list of created projects “in process”, list of projects getting from database needs to be filtered by project status and only
projects in-process is shown in the section.
Figure: Getting data as prototyped partial or full object in prototype pattern
50
Builder pattern for building each Vue components.
Builder is a separate component for building an object, either give it an initialize or
return it via a static function. For example, the project-list Vue component below is
built of the small data components such as “getListProjectFilter”, “getLastMessageById” and “currentUser”.
Factory Methods for help methods (library methods) and getting data methods. As factory function refers function that return new objects or instances (return of
factory methods are as the builders). Using factory functions is a pattern that helps
to remove code duplication and keep test code easy to read and understand. Method
is to format Date is an example of factory function as can be seen below.
51
Figure: How factory methods work
4. Components of software
This software is built as a Single-Page application and there is only a main page (App.vue)
with different components, but Vue-router is used to switch to view between the
components and map the components with the route link.
52
There only one page of website is App.vue.
There are two guest pages: Login and Register. When router go to Login page, router view
the component Login.vue. The Register is similarly with component Register.vue.
After user login and authenticated successfully from Login page, router will view the portal
component and then it will view staff components (StaffHeader.vue & Staff.vue) or admin
components (AdminHeader.vue &Admin.vue) by checking role from login and
authenticated it from database.
When login as a staff and navigating to different pages, router will switch and view
different components in Staff.vue component
When login as an admin and navigating to different pages, router will switch and view
different components in Admin.vue component
53
5. User Interface Design
1.2. Description of User Interface
Digital design link: https://timesheet-tracker-eae58.web.app/
Login account for test:
Role: staff - username: staff@gmail.com - password:123456
Role: admin - username: admin@gmail.com - password:123456
GUEST PAGES: login & register
AUTHENTICATED PAGES: Staff and Admin
Assigned project list in Staff mode Created project list in Admin mode
Project create page
Project check-in page
54
Project Detail in Staff mode
Project Detail in Staff mode
Staff can click on work check-in button
for check-in their work, after project
complete, they click on request to
verify button. Blue button on right top
for chat message
Admin can use yellow and blue button on right
top for editing project detail and chat message
Both staff and admin can view reports
Both staff and admin can use chat message
55
SOFTWARE TEST PLAN
1. Introduction
1.1. System Overview
A timesheet tracker system is a system where the workplan has been assigned for
staffs within a specific timeline. Here in this system, an admin can assign tasks for
the staff with the work status and appointed timeline. Admin can also chat with
the staff in the system for discussion and can update the status of the assigned
project.
1.2. Testing Approach
1.1.1 Unit Testing
In unit testing section, there have been taken some parts of the system which are
user types, login portal, project creation and assign, chat inbox, project status,
calendar. All these features are implemented successfully. The test data has been
imported and the result is showing with perfection.
1.1.2 Integration Testing
In the integration testing, the functional entities of timesheet trackers are
combined in to the system properly and the hardware, software, network analysis
and system dynamics have met with the system.
1.1.3 System Testing
Data load and performance of the system occurs properly. It is reliable and
secured. The internal scenario of the system works properly. The system is faster
and can perform in real life loads. The application is flexible for the user and the
operation meets all the objectives of necessary requirements.
1.1.4 Acceptance Testing
The system acceptance is trustworthy and reliable. It meets the objectives of
timesheet tracker. With the updated system and fluent internet connectivity, the
system will be more efficient. Proper restrictions have been provided in to the
system by the types of the user. Each and every action works properly in the
application and in there, any bugs can be fixed if found later on. The system can be
updated on the necessary requirements.
2. Test Plan
2.1. Features to be tested
56
The features to be tested for timesheet tracking are provided below:
In the first feature, all the data in timesheet tracker are imported successfully and also showing properly in the system. The new data is imported from the
user registration, chat box and project creation are successfully done in the
system.
Figure: Registration Panel
Figure: Dashboard
Figure: Chat Box
57
Functional testing will be the second feature where is being tested the data flow of the system. Here created project by an admin user is showing in the
assign staff’s dashboard with details report. The functional flow is testes and it passes the requirement.
Figure: Project Creation by Admin
Figure: Notification of Project Creation
Figure: Assigned Projects List in Staff’s Dashboard
In the third feature, security is tested in this timesheet tracker where the data is stored securely and the web portal is hosted from secured data center. Data
backup is set up in periodic schedule which can be restored in any needful
situation. Firewall creates barrier from any untrusted network here.
58
User Interface (UI) testing is the fourth feature where system consistency, accessibility and compatibility of the system are measured there. The functions
that have been implemented in the system is user compatible and after testing
more than once, there have not found any complication. It is a web-based
application which can be used in any operating system in any devices.
Figure: Timesheet tracker in Windows
Figure: Timesheet tracker in mobile
2.2. Features not to be tested
As the system needs to add more features to distinguish business requirements,
performance test have not taken part in testing as priority. Though the system is
compatible, but no measure its performance there need to add much more
feature to get feedback for performance testing. But performance test should
measure for getting the measurement of speed, response time, stability, reliability,
scalability of the system.
2.3. Testing tools and Environments
59
To test timesheet tracker, there obviously need software and hardware
requirement. In the hardware section, desktop pc, laptop and internet connectivity
are required. And in software components, there must be needed operating system
(OS) in various platform. After that there have to install vue.js JavaScript framework
version 2.6.12.
Testing Tools:
Jest as a JavaScript testing framework, used for unit testing. Jmeter for performance testing Zed Attack Proxy for security testing
3. Test Cases and Results
3.1. Unit Testing Test cases
Test suit 1: Unit Testing – Testing elements of Login Page
TC id Scenario Steps Test Data Expected
Results
Actual
Results
Pas
s/
Fail
0001 Check role
options in Login
Go to https://timesheet- tracker-eae58.web.app
Do not choose Role Enter Email Enter Password Click Login
Role:
Email:
staff@gmail.com
Password: 123456
User cannot
submit data.
Get notify
invalid data
(empty role)
As
Expected
Pass
0002 Check email
input in Login
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email: staff12
Password: 123456
User cannot
submit data.
Get notify
invalid data
(email format)
As
Expected
Pass
0003 Check email
input in Login
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
Password: 123456
User cannot
submit data.
Get notify
invalid data
(email empty)
As
Expected
Pass
0004 Check
password input
in Login
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email
Role: Staff
Email:
staff@gmail.com
User cannot
submit data.
Get notify
invalid data
As
Expected
Pass
60
Enter Password Click Login
Password: 12345
(password less
than 6 letters)
0005 Check
password input
in Login
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
staff@gmail.com
Password:
User cannot
submit data.
Get notify
invalid data
(empty
password)
As
Expected
Pass
Test suit 2: Unit Testing – Testing elements of Create Project Page
TC id Scenario Steps Test Data Expected
Results
Actual
Results
Pas
s/
Fail
0001 Check input of
project name in
Create Project
page
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name:
Description: a a1 1
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: in-process
User cannot
submit data.
Get notify
invalid data
(empty
project name)
As
Expected
Pass
0002 Check input of
description in
Create Project
page
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABCs1
Description:
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: in-process
User cannot
submit data.
Get notify
invalid data
(empty
description )
As
Expected
Pass
0003 Check input of
start time in
Create Project
page
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABCs1
Description: a a1 1
Start:
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: in-process
User cannot
submit data.
Get notify
invalid data
(start time
empty)
As
Expected
Pass
0004 Check input of
end time in
Create Project
page
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABCs1
Description: a a1 1
Start: 17/5/2021 -
10:00
End:
Assigned members:
staff@gmail.com
Status: in-process
User cannot
submit data.
Get notify
invalid data
(end time
empty)
As
Expected
Pass
0005 Check input of
end time in
Login as admin Go to https://timesheet-
tracker-
name: ABCs1
Description: a a1 1
User cannot
submit data.
61
Create Project
page
eae58.web.app/admin/
create
Enter create project data Click create project
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 02:00
Assigned members:
staff@gmail.com
Status: in-process
Get notify
invalid data
(end time less
than start
time)
0006 Check input of
assigned
member in
Create Project
page
Login as admin Go to https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABCs1
Description: a a1 1
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
Status: in-process
User cannot
submit data.
Get notify
invalid data
(empty
assigned
member)
As
Expected
Pass
0007 Check input of
project status
in Create
Project page
Login as admin Go to https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABCs1
Description: a a1 1
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status:
User cannot
submit data.
Get notify
invalid data
(empty status)
3.2. Security Testing Test case
Test suit 3: Security Testing
TC id Scenario Steps Test Data Expected
Results
Actual
Results
Pass/
Fail
0001 Check Staff
Login with valid
data
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
staff@gmail.com
Password: 123456
User login into
Application
As
Expected
Pass
0002 Check Staff
Login with
invalid data
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Admin
Email:
staff@gmail.com
Password: 123456
User cannot
login into
Application
(incorrect
role)
As
Expected
Pass
0003 Check Staff
Login with
invalid data
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
st1234@gmail.com
Password: 123456
User cannot
login into
Application
(incorrect
email)
As
Expected
Pass
0004 Check Staff
Login with
invalid data
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
Staff@gmail.com
Password: 1234567
User cannot
login into
Application
(incorrect
password)
As
Expected
Pass
62
0005 Check admin Go to https://timesheet- tracker-eae58.web.app
Login successfully into web as admin
Go to https://timesheet- tracker-
eae58.web.app/admin
Role: admin User can As Pass login access Expected
Authenticated Email: https://timesh
in Project List admin@gmail.com eet-tracker-
page eae58.web.ap
Password: 123456 p/admin
0006 Check admin Logout Go to https://timesheet-
tracker-
eae58.web.app/admin
Role: admin User cannot As Pass not login access Expected
Authenticated Email: https://timesh
in Project List admin@gmail.com eet-tracker-
page eae58.web.ap
Password: 123456 p/admin
0007 Check admin Go to https://timesheet- tracker-eae58.web.app
Login successfully into web as admin
Go to https://timesheet- tracker-
eae58.web.app/admin/cr
eate
Role: admin User can As Pass can access access Expected
Create Page Email: https://timesh
admin@gmail.com eet-tracker-
eae58.web.ap
Password: 123456 p/admin/creat
e
0008 Check admin Logout Go to https://timesheet-
tracker-
eae58.web.app/admin/cr
eate
Role: admin User cannot As Pass can access access Expected
Create Page Email: https://timesh
admin@gmail.com eet-tracker-
eae58.web.ap
Password: 123456 p/admin/creat
e
0009 Check staff Go to https://timesheet- tracker-eae58.web.app
Login successfully into web as staff
Go to https://timesheet- tracker-
eae58.web.app/admin/cr
eate
Role: staff User cannot As Pass cannot access access Expected
Create Page Email: https://timesh
staff@gmail.com eet-tracker-
eae58.web.ap
Password: 123456 p/admin/creat
e
3.3. Functional Test case
Test suit 4: Functional Testing
TC id Scenario Steps Test Data Expected
Results
Actual
Results
Pass/
Fail
0001 Check creating
a new project
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project
name: ABC
Description: a a1 1
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: in-process
User can view
project ABC in
project list
As
Expected
Pass
0002 Check view
project detail in
admin
Login as admin Go to https://timesheet-
tracker-
User can view
details and
check-in
As
Expected
Pass
63
eae58.web.app/admin/ad
minProjectList
Click a project in list
records of
that projects
0003 Check editing
details of a
project in
admin
Login as admin Go to view detail of
project ABC
Click edit button (yellow) and enter project data
Click on update button
name: ABC1
Description: a a1 1
Start: 15/5/2021 -
11:00
End: 27/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: to verify
After
updating,
details of
project is
same as data
input
As
Expected
Pass
0004 Check deleting
a project in
admin
Login as admin Go to view detail of
project in complete status
Click delete button (red)
After deleted,
project is
removed in
project list
As
Expected
Pass
0005 Check view
reports of a
project in
admin
Login as admin Go to https://timesheet-
tracker-
eae58.web.app/admin/ad
minProjectList
Click a report button of a project
User can view
reports of that
project
As
Expected
Pass
0006 Check chatting
function in
admin
Login as admin Go to view detail of a
project
Click on chat button (blue)
Enter message and click send
Message: hi, staff User can view
message have
entered pop-
up on chat
window
As
Expected
Pass
0007 Check admin
assigned
project for staff
Login as admin Go to
https://timesheet-
tracker-
eae58.web.app/admin/
create
Enter create project data Click create project Logout then login as staff
name: ABC
Description: a a1 1
Start: 17/5/2021 -
10:00
End: 17/05/2021 – 16:00
Assigned members:
staff@gmail.com
Status: in-process
After login as
staff:
(staff@gmail.c
om), user can
view project
ABC in project
list.
As
Expected
Pass
0008 Check view
details of a
project in staff
Login as a staff Go to view detail of
project in complete status
After deleted,
project is
removed in
project list
As
Expected
Pass
0009 Check view
reports of a
project in staff
Login as a staff Go to https://timesheet-
tracker-
eae58.web.app/staff/staff
ProjectList
Click a report button of a project
User can view
reports of that
project
As
Expected
Pass
0010 Check chatting
function in staff
Login as staff Go to view detail of a
project
Message: hi, staff User can view
message have
entered pop-
As
Expected
Pass
64
Click on chat button (blue)
Enter message and click send
up on chat
window
0011 Checking check-
in function in
staff
Login as a staff Click on an in-process
project in list to view
details
Click on “work check-in” button (green)
Enter check-in data Click on submit
Date: 23/05/2021
Time-in: 10:00
Time-out: 16:00
Tasks have done:
fixing main door
After submit
check-in, user
can view that
record of
check-in in
project details
As
Expected
Pass
0012 Checking
request to
verify the
project in Staff
Login as a staff Click on an in-process
project in list to view
details
Click on “request to verify” button (red)
After request
to verify, the
project status
become
verifying.
“work check- in” and “request to verify” buttons are
disabled.
As
Expected
Pass
0013 Checking login
function in Staff
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Staff
Email:
staff@gmail.com
Password: 123456
After clicking
on login
button, it
navigates to
default staff
page: project
list
As
Expected
Pass
0014 Checking logout
function in
admin
Login successfully as an admin
Then choosing logout in the top-left dropdown
menu
it navigates to
default guest
page: login
As
Expected
Pass
0015 Checking login
function in
Admin
Go to https://timesheet- tracker-eae58.web.app
Choose Role Enter Email Enter Password Click Login
Role: Admin
Email:
admin@gmail.com
Password: 123456
After clicking
on login
button, it
navigates to
default admin
page: project
list
As
Expected
Pass
0016 Checking logout
function in staff
Login successfully as an staff
Then choosing logout in the top-left dropdown
menu
it navigates to
default guest
page: login
As
Expected
Pass
65
3.4. Integration Test case
Test suit 5: Integration Testing
TC id Scenario Steps Test Data Expected
Results
Actual
Results
Pass/
Fail
0001 Check link of
create project
in Admin
Login as admin Click on “Create” link on
header
It navigates to
Create project
page
As
Expected
Pass
0002 Check link of
project list in
admin
Login as admin Click on “projects” link on
header
It navigates to
the page of
list of created
projects
As
Expected
Pass
0002 Check link of
project list in
staff
Login as staff Click on “projects” link on
header
It navigates to
the page of
list of assigned
projects
As
Expected
Pass
0004 Check login link
in register page
Go to https://timesheet- tracker-
eae58.web.app/login
click on “register here”
It navigates to
the page to
sign up new
account
As
Expected
Pass
0005 Check register
link in login
page
Go to https://timesheet- tracker-
eae58.web.app/register
click on “login here”
It navigates to
the login page
As
Expected
Pass
DEPLOYMENT PLAN
The source code including many assets and templates in DOM and JavaScript is compiled into
bundle JavaScript using Webpack build tool. Babel also convert ECMAScript 2015+ code into a
backwards compatible version of JavaScript in current and older browsers or environments.
After all source code is pushed into Google Firebase hosting, user now can use the service
online through https://timesheet-tracker-eae58.web.app/
66
CONCLUSION
The overall project is a success, the team developed a running software, and the linked has been
provided below, the project discuss the overall completed report, the document for software
development, testing report and the complete project management plan and software
development plan with prototype of the website and the Jira and get hub application has been
linked down for worked summary.
RECOMMENDATION & FUTURE WORKS
This is small scale project for assignment of unit PRT581. In future, the application can be
developed with expansion of business requirements and system flatform.
For business requirements, subcontractor will submit check-in with invoice of tools they bought
for the work. Contractor also can pay directly for subcontractor through the application.
For the technology, application will be available as an app for android or apple mobiles.
Moreover, the application would be convenient application of it is sync with the calendar mobile
for the work reminding or better notifications on the mobile.
The application would be fast to support a greater number of users if using better hosting,
improved database system and designing.
67
- Executive Summary
- Ethical Consideration
- Discussion:
- SOFTWARE PROJECT MANAGEMENT PLAN(SPMP)
- 1. Introduction
- 1.1. Project Overview
- 1.2. Purpose
- 1.3. Project Deliverables
- 1.4. Feasibility Study
- 1.4.1. Technical Feasibility
- Features requires for contractors:
- Features requires for subcontractors:
- 1.4.2. Financial Feasibility
- 2. Project Organization
- Agile method:
- 2.2. Roles and Responsibilities
- 2.3. Tools and Techniques
- 3. Project Management Plan
- 3.1. Tasks
- Constraints:
- Exclusions:
- 3.1.1 Getting started.
- Organizing:
- Starting work:
- Performance Judgement:
- Finishing:
- 3.2. Requirements
- 3.2.1. High Level Requirements
- 3.2.2. Security Requirements
- 3.2.3. Low Priority Requirements:
- 3.3. Milestones
- Risks Associated with Technology
- 1. Risks associated with data processing.
- 2. Risk associated with team and project development members.
- 3. Risk associated with inefficient risk control poses a danger.
- 3.5. Timetable
- SOFTWARE REQUIREMENT SPECIFICATIONS (SRS)
- 1. Introduction
- 1.1. Purpose of the system
- 1.2. Audience and Intended use
- 1.3. Scope
- 1.3.1. Benefits
- 1.3.2. Objectives
- 1.3.3. Goal
- 1.3.4. Limitations
- 1.4. Overview
- 2. Overall Description
- 2.2. Product Functions or Features
- 2.3. User Characteristics
- 2.4. Operating Environment
- 2.5. Constraints
- 2.6. Assumptions and Dependencies
- 3. Specific Requirements
- 3.1.3. Software Interface Description
- 3.1.4. Communication Interfaces
- 3.2. Functional Requirements
- 3.2.3 User Access Requirements
- 3.3 Non-Functional Requirements
- 1.1. Design Overview
- 1.1.1. Use Case Diagram
- 1.1.2. Sequence Diagram
- 1.1.3. Class Diagram
- 1.1.5. Activity Diagram
- 2. Requirement Traceability Matrix
- DESCRIPTION:
- 3. System Architecture Design
- 3.1. Chosen System Architecture
- 3.2. Chosen Design Pattern
- 4. Components of software
- 5. User Interface Design
- 1.2. Description of User Interface
- SOFTWARE TEST PLAN
- 1.1.1 Unit Testing
- 1.1.2 Integration Testing
- 1.1.3 System Testing
- 1.1.4 Acceptance Testing
- 2. Test Plan
- 3. Test Cases and Results
- Test suit 1: Unit Testing – Testing elements of Login Page
- Test suit 3: Security Testing
- Test suit 4: Functional Testing
- Test suit 5: Integration Testing
- CONCLUSION
- RECOMMENDATION & FUTURE WORKS