Easy-Taxer Full Document
Easy-Taxer Full Document
Department of CSIT
Undergraduate Project proposal
Title: Easy-Taxer
Group Members:
No. Name ID
1. Bezawit Mesfin ETS0215/08
2. Ikram Mohammend ETS1503/06
3. Lidya Daniel ETS0707/08
4. Melkamsira Antehun
ETS0763/08
Acknowledgment
First and most we are grateful to God for the good health and wellbeing that was necessary to
complete this project. We would also like to express our gratitude to our Advisor Yayinshet
Medihn for the continuous support of the project, for his patience, motivation, enthusiasm and
immense knowledge. His guidance helped us in all the time of the project. We could not have
imagined having a better advisor and monitor for our project. We wish to express our sincere
thanks to our department of computer science for letting us experience in real world life. And
also we are grateful for ERCA IT department employees specially, Miss Ayinalem for all her
help by answering all our questions with patience, for the motivation and the materials we gain.
We thank our friends in computer science and software engineering department for the
stimulating discussions, for the sleepless nights we were working together, and for all the fun we
have had in the last four years. Most importantly, none of this could have happened without our
family. We also place on record, our sense of gratitude to one and all, who directly or indirectly,
have let their hand in this project
Contents
Acknowledgment.........................................................................................................................................ii
List of tables................................................................................................................................................1
List of figures...............................................................................................................................................2
Abstraction..................................................................................................................................................3
Chapter One: Introduction..........................................................................................................................0
1.1Background.............................................................................................................................................0
1.2 Statement of the problem.....................................................................................................................1
1.2.1 over view of the existing system.....................................................................................................1
1.2.2 Problem of the existing system.......................................................................................................3
1.2.3 Proposed system............................................................................................................................4
1.2.4 Significance of the proposed system..............................................................................................5
1.3 Motivation.............................................................................................................................................5
1.6 System scope.........................................................................................................................................6
1.7 Objectives..............................................................................................................................................6
1.7.1 General objective............................................................................................................................6
1.7.2 Specific objectives...........................................................................................................................6
1.8 Methods................................................................................................................................................6
1.8.1 Data Collection...............................................................................................................................7
1.8.2 System Design and analysis tools....................................................................................................7
1.8.3 Testing and Evaluation....................................................................................................................8
List of tables
List of figures
Abstraction
Most countries in the world have a tax system in place to pay for public/common/agreed national needs
and government functions: to expenditure on economic infrastructure, military, scientific research,
culture and the arts, public works, distribution, public insurance and the operation of government itself.
In our country, the tax system has many manual forms and does not have a clear information all about
the tax and things to provide to pay; which leads to degenerative time and money. The process have a big
effect on economic and our country growth. Having this in mind, the project main object is to overcome
this problem by computerizing the manual system to get effective work. the proposed system main
functionalities such us giving information, address/business change, business cut out, generating reports,
giving feedback, different type of forms, getting notifications and the ability to create profile and user
account. To use those functionalities every person (the tax payer and the personnel) must register. Our
system is both web and android based which user must install a browser and android application to get
the full access/functionalities provided. The document includes the models we use like sequence, activity,
state and use case diagrams for the system.
1.1Background
Statement of the problem
The Ethiopian Revenues and Customs Authority (ERCA) traces its origin to July 7, 2008 as a
result of the merger of the Ministry of Revenues, the Ethiopian Customs Authority and the
Federal Inland Revenues into one giant organization. It is the body responsible for collecting
revenue from customs duties and domestic taxes. In addition to raising revenue, the ERCA is
responsible to protect the society from adverse effects of smuggling [1]..
The Authority came into existence on 14 July 2008, by the merger of the Ministry of Revenue,
Ethiopian Customs Authority and The Federal Inland Revenue Authority who formerly were
responsible to raise revenue for the Federal government and to prevent contraband. Reasons for
the merge of the foregoing administrations into a single autonomous Authority are varied and
complex. Some of those reasons include: to provide the basis for modern tax and customs
administrations, to cut through the red tape or avoid unnecessary and redundant procedures that
results delay and are considered cost-inefficient, to be much more effective and efficient in
keeping and utilizing information, promoting law and order, resource utilization and service
delivery to transform the efficiency of the revenue sector to high level. In the current Ethiopian
tax law tax payers are classified under two major categories which are: -
I. Direct tax –these are tax types which are directly imposed on the person’s income
directly. These include income from employment, rent of house, business (trade)
activities, winning lottery, rent of patent and copyright and income from share in
company.
II. Indirect tax - this is a kind of tax which the tax payer collects it from the
customershis/her customer indirectly and not from his own income. There are
three types of indirect tax.
Value added tax (VAT) - this is type A tax which includes a person with
annual taxable transaction value which exceeds 500000birr with 15 % vat
rate. Tax payers under this category pays at the end of each month.
Turn over tax (TOT) - this tax type consists customertax payers that sell
goods and services for tax added values, they are required to pay their tax
every four months.
Excise Tax – these tax payers pay their tax annually.
Currently the Ethiopian revenue and customs authority (ERCA) carries out tax paying activities
using a centralized system named SIGTAS which is used throughout the country. This system
enables the government to keep track of each tax payer’s profile (personal and work-related
information), different tax rates and perform any tax related calculations. In addition to SIGTAS,
ERCA offices in each sub city use a local system called SIR [1] a notepad like software which
operates when there is any network delay or other problems that hinders them from using
SIGTAS[2].
Registering new tax payer
If the customertax payer is joining the business world for the first time, he/she have come to the
office in order to create a profile that includes the person’s main information like thiertheir living
address, working address, finger print , TIN number and tax category. After creating a
profileprofile, the customertax payer will issue his/her yengid fekadtrade license from the nigdna
trade ministerzerf birobiro. Finally, the profile he/she has created at the ERCA office of his/her
sub-city will be finalized by creating a tax account after he/she has received ngid fekadtrade
license. Each customertax payers paying interval differs based on the tax category he/she is
classified under the beginning of each profile creating process.
The above stated process will take some time for a the customertax payer to finalize his/her
paper work and fulfill all the equipment (cash register) needed for the tax paying process.
Therefore, if the customertax payer’s tax paying interval approaches before fulfilling all the
required equipment, a special committee will be coordinated by the organization for the purpose
of guessing the customertax payerspayers’ daily income and calculating tax of such customertax
payers.
Existing Tax Payer
When an existing customertax payers comes to pay tax on their tax paying interval they have
tomust bring their cash register report, invoice paper and receipts of any goods they purchased.
After bringing the required document customertax payers will be directed to fill declaration form
which includes the customertax payer’s basic work information (work address, tin number,
company name,…name…) and attach the documents they brought then the declaration form will
be summited to the pre-auditing office. Then the pre-auditing office will assess whether the
documents attached with the declaration form that the customertax payers summited are legal or
not.
If the documents are legal, the pre-auditing office will calculate the customertax payer’s tax by
inspecting the income and the expanses of the customertax payers then the pre-auditing office
will direct the customertax payers to pay the calculated tax with all the needed information to the
payment office/genzeb kifil/. When the customertax payers pay the calculated taxtax, the system
will give receipt with a generate ID (each sub-city have its own unique ending code) that shows
that the customertax payer has paid the required amount of money for the current paying interval.
This ID is also used further in the next paying interval to indicate the customertax payer has paid
all the previous taxes without any delay.
If the documents attached are illegal, the pre-auditing office will investigate further on the
documents and the customertax payer itself.
Regardless of the tax categories, each customertax payers performs their annual tax paying
process at the end of the year (hamle 1 up to tkimt 30) which follows the same procedure except
that it covers the calculation of tax by inspecting the overall income and expanse of the
customertax payer throughout the year. After a customertax payer pays his/her annual tax a
clearance book will be issued that shows that a customertax payer has been cleared from any
taxes he/she have to pay on that year. The issued clearance will enable the customertax payer to
renew his/her nigid fikadtrade license.
Address or business change
When customertax payer wants to change his/her business or work address and business type
he/she can do so by filling a form and the system will change the current working address or
business type from a database. If a customertax payer wants to stop a business, he/she is required
to fill a form and be summited. After a submission of a form the system will cross check whether
the customertax payer has paid all his taxes in all the functioning duration of his/her business, if
he/she is cleared, all the related documents associated with customertax payer will be removed
from the database. Otherwise the customertax payer will be forced to pay his/her tax with an
additional punishment money and be cleared.
Receipt Printing Procedure
All type of tax payers who use receipt in their business will have to print receipt in order to do
that they have tocm first fill a form which consists company name, the reason for printing receipt
and the TIN number of the printing company that the customertax payer chooses. The office
personnel will cross check the information that the customertax payer has summited alongside
the nigd fikadtrade license. Then the office will issue a printing permission paper that will be
givegiven to the printing company. Finally, the customertax payer will bring back the printed
sample of the receipt to the office after the approval of the sample the remaining receipt will be
printed out and will be used in the customertax payer’s transactions.
After collecting data from tax payers and ERCA office employees of the bole sub-city located at
Gergi we have analyzed the way that
tThe government is using a centralized system to maintain a consistent data, reduce manual work
and minimize the time needed to calculate the total amount of money a tax payer should pay.
Even though the current system provides the above benefits it also has many problems especially
with respect to the customertax payer which are:-are: -
Customer are required to fill declaration forms manually which results in wastage
of resources like energy, paper…
Since tax payer are required to fill different forms manually and also most tax
payers come to the office to initialize the tax paying process at the end of the
paying interval, the tax paying interval is specific in each month all tax payers
come to pay within that interval due to this it’s probable for a long queue will to
be formed., Aas a result tax payers are forced to waste their productive
time, energy and money, which also affects the overall development of the
country.
Because of the queue the place will be crowded consequently there is a chance of
air borne diseases (flu, TB etc.) to be spread.
The customertax payer will have to go to different offices to finish his/her
different tax paying related processes.
Because of network unavailability and lack of response by the employees, the tax
payer is forced to pay unnecessary punishment fee without his/her fault when
he/she wants to report technical difficulties.
The current system doesn’t have a means of giving a full information about the
requirements of each and every process unless the tax payer comes to the office
in person and check about it for itself. Therefore, a tax payer suffers from the
inconvenience of getting a full information on how to start the procedure of each
service, knowing what detail document is required for every service he/she wants
to get and determining which department of the ERCA office is responsible for
the service he/she wants.
Manual checking of the legality of the documents which the tax payer brings at
the declarations of the tax paying process and calculating the tax (pre-auditing)
forces the tax payer to spend unnecessary time.
The tax payer needs to come in person to the ERCA office in his/her sub city in
order to perform the following activities
Any location change in his/her business address
Reporting a change of business sector
For making a request for a (re-)printing a receipt
In order to address this problem, we are proposing a system which provide the following
services:-services: -
The system will generate a report about the number of tax payers that used the
system for their tax related activities within a month which will be used further
for a decision making by higher officials.
Enable the tax payer to send feedbacks.
Enabling the employees to check for submitted forms by the tax payers without
going through paper work and generate a response which can be archived for
further use. In addition, it will also reduce any improper inconvenience they face
as a result of frequent verbal communication.
The system will give a service of creating a profile for a new tax payer with
finger print, personal information and business information.
1.2.4 Significance of the proposed system
The significance of this system is to be able to solve the main problem stated above and to
maintain a good working place where the tax payers get satisfaction. The face to face
communication will be less and it wouldn’t be hard to manage everyone’s behavior for the office
person. As most of the tax payers may not be at the same area as where they pay their tax, this
system will enable them to save their productive time and money. Managing all this activity and
Tax payers being satisfied with the tax payer’s service; office personnel with less managing
individual’s behaviors; and a good environment in a work places will make the countries’
development grow faster which is the main significance of this system.
1.3 Motivation
Taxes are important sources of public revenue. In order for a government to provide public
services for citizens the government must collect some amount of income from each and every
individual in the country. Government intervention in the supply of public services is expected
and can only be done if the public pays taxes for the production and supply of such services. In
our country context and existing tax paying process mostmost, tax payers may be involved in
corruption activity due to the tiresomeness they undergo for the lack of transparency the current
working system partake, taxpayers also
Suffer a lot by wasting their productive time and resources which in turn wastes the country’s
resource and hinders the development.
TheseThe major problems our country is facing currently motivates us to develop the proposed
system.
From what we observed, most people grumble and as some peoples we interviewed said most tax
payers wastes 2 or 3 work days to pay. Therefor this is an urgent issue that needs to be
addressed.
In order to address this problem, we are proposing a system which provide the following
solutionsservices:- -
Enabling the employees to check for submitted forms by the tax payers without
going through paper work and generate a response which can be archived for
further use. In addition it will also reduce any improper inconvenience they face
as a result of frequent verbal communication.
The system will give a service of creating a profile for a new tax payer with
finger print, personal information and business information.
1.5 Advantage of proposed system
The significance of this system is to be able to solve the main problem stated above and
to maintain a good working place where the tax payers get satisfaction. The face to face
communication will be less and it wouldn’t be hard to manage everyone’s behavior for
the office person. As most of the tax payers may not be at the same area as where they
pay their tax, this system will enable them to save their productive time and money.
Managing all this activity and Tax payers being satisfied with the tax payer’s service;
office personnel with less managing individual’s behaviors; and a good environment in a
work places will make the countries’ development grow faster which is the main
significance of this system.
Motivation
Performing tax process manually nowadays is becoming a labor intensive and time taking
task. Automated taxation system is important in order to reduce the various costs and to
have a model of the customs process in fast, accurate and consistent way.
Avoiding the manual form filling process by digitalizing it.
Calculates the tax of each customer.
Minimizing wastage of productive time and energy by enabling the tax payer to declare his/her
tax without waiting in a line at any time and place.
Giving a specific appointment to tax payers to come and pay.
Scheduling an appointment for tax payers whenever he/she want to contact any office
personnel.
By giving office directions, reducing the time wasted in searching specific offices.
Objectives
General objective
The general objective of this project to design and develop a digitalized tax paying
system for Ethiopian Revenue and Customs Authority (ERCA).
Specific objective
In order to achieve the general objective stated above, the project would attempt to
address the following specific objectives.
Review related works in the area of electronic pay and electronic filling
Review taxation processes in Ethiopian Revenue and Customs Authority (ERCA).
The scope of this system is comprised of the main functional activities like providing different
tax related forms, assisting the tax payer to report any difficulties in some part of the tax payers’
business transaction, notifying the tax payers about their tax paying deadline and different
notices from the office, enabling the employees to assess the form that is submitted by the tax
payer and creating profiles for a new tax payer.
There will be no online money transactions since the Ethiopian government doesn’t allow online
money transaction, this system will not address that problem. The proposed system doesn’t
address any services that the current system of ERCA provide.
This system will cover Addis Ababa tax payers and there will be no online money transactions
since the Ethiopian government doesn’t allow online money transaction, this system will not
address that problem.1.7 Objectives
1.7.1 General objective
The general objective of this project to design and develop a digitalized tax paying system for
Ethiopian Revenue and Customs Authority (ERCA).
1.7.2 Specific objectives
In order to achieve the general objective stated above, the project would attempt to address the
following specific objectives.
Select and use some Designing and development tools and technique
Implement and evaluate the system
1.8 Methods
The significance of this system is to be able to solve the main problem stated
above and to maintain a good working place where the customers get
satisfaction. The face to face communication will be less and it wouldn’t be
hard to manage everyone’s behavior for the office person. As most of the
customers may not be at the same area as where they pay their tax, this
system will enable them to save their productive time and money. Managing
all this activity and Customers being satisfied with the customer’s service;
office personnel with less managing someone’s behaviors; and a good
environment in a work places will make the countries’ development grow
faster which is the main significance of this system.
Methodology
The software process which is going to be applied in order to develop the proposed system is an
iterative software developing model in which the software development process is carried out in
iterative process in each phase. The methods employed to carry out the project are listed below.
1.8.1 7.1 Data Collection
To clearly understand how the current system of ERCA operates and design the appropriate
solution, it is necessary to collect and analyze the required data. Consequently, we used the
following requirement determination methodologies.
Interview
We have interviewed the IT department stuff members of ERCA in bole sub-city to clearly grasp the
technical aspect of the system and the issues that are not addressed by the current system which in turn
affect the tax paying process.
The requirement gathering process will be done by different mechanisms like interviewing,
preparing questionnaires and observation. The main focus or target groups for this gathering
process are the taxpayers and the office personnel.
Questionnaires
We have given out questionnaires for tax payers in order to apprehend the process they have to follow
whilefollow while trying to carry out their tax paying activity, other related tasks and also the problems
they meet .meet.
Observation
We have tried to observe the major problem the tax payer faces while finalizing their eacheach activities
process.
7.2 Design and development 1.8.2 System Design and analysis tools
For the designing tools we are going to use different unified modeling language (uml) like class
diagram, use cases, activity diagrams using enterprise architecture software.
Since the system must be available at any time and place it’s going to be an online system for the
office personnel’s and a mobile application for the customertax payers. Therefore, the
development tools which will be used are
Mobile application
Android studio.
Web based application
for developing the mobile application and Nnode.js for the back end
development.
and Bootstrap, HTML 5 for the frond end development.
Database design
Mongo db.
The system testing will be performed at the completion of each module development by the
target groups mentioned above(tax payer and employees) and other professionals in the IT
sector. This iterative way of testing is useful for adding additional features and also improve the
existing ones according to the need of the users. After each module has been tested the final
integrated system will be evaluated and tested.
1. Introduction
A site observation survey was made in the taxation authority in order to study things behind the
scene and understand the problem domain in detail. Accordingly,
ERCA carries out tax paying activities using a centralized system named Standard Integrated
Government Tax Administrator (SIGTAS) which is used throughout the country. This system
enables the government to keep track of each tax payer’s profile (personal and work relatedwork-
related information), different tax rates and perform any tax related calculations. In addition to
SIGTAS, ERCA offices in each sub city use a local system called Standard Integrated Revenue
Management (SIRM) a notepad like software which operates when there is any network delay or
other problems that hinders them from using SIGTAS.
Ethiopian revenue and customs authority (ERCA) currently uses two different systems, SIGTAS
and SIR. SIGTAS is a centralized system, whose database is located at Mexico that stores all the
necessary information like tax payer profile related with his/her finger print. In the current
Ethiopian tax law tax payers are classified under two major categories which are:-
1.1.System purpose
The purpose of the system being developed is to provide reliable and accurate information to any
individual who wants to get service from ERCA; enabling the customer to access and submit any
forms related to any tax paying and other activities online, reporting any difficulties through the
system and notifying the customer through their account about any activity’s deadline and notice
from the office.
After collecting data from customers and ERCA office employees of the
bole sub-city located at Gergi with data collection methodology like
interview, questionnaires and observation we have analyzed the way
that each service is delivered to the customer and the drawback it have.
Those drawbacks are:-
The current system doesn’t have a means of giving a full information
about the requirements of each and every process unless the customer
comes to the office in person and check about it for itself. Therefore, a
customer suffers from the inconvenience of getting a full information on
how to start the procedure of each service, knowing what detail
document is required for every service he/she wants to get and
determining which department of the ERCA office is responsible for the
service he wants.
The system will enable the customertax payer to declare his tax activity online
The system must provide a way to report a customertax payer’s business address
change or business sector change.
The system must enable the customertax payer to notify ERCA when he/she
stops business.
The system should provide a way of informing a customertax payer’s cash
register malfunction.
The system will give access for the customertax payers to carry out notification
of receipt reprinting to the office.
Giving full and reliable information about each service and required documents
a customertax payer should fulfill for the services she/he require from ERCA.
The system will enable the customertax payer to know about the service provided
by and location of each departments.
The system will enable the tax payer to submit any feed backfeedback to ERCA
officials
The system enableenables the employees to create tax payer profiles.
The system must provide assessing of the attached documents and forms legality
during the inspection of tax declaration.
The system will enable employee to approve business address or business sector
change issued by the tax payer.
The system will assist the employees in approving business cut-off by the tax
payer.
The system should help the employee analyze the feedback of taxpayers.
Check reports for (cash register malfunction, receipt re-printing) submitted by the
customertax payers and come up with a solution according to the reported
problem.
The system will assist higher officials of the organization by generating a report
which could be used further on decision making process.
The system will permit the System administrator to create a user account for the
organization’s employee who will access the system.
Availability :-Availability: - The system will increase the availability of the system
by making it online
Secured interaction: - since, security is one of the important features of any
computerized system, the current system is made to be secured The system enables
the customer to create a secured account which can only be accessed by the customer
by enabling all users have their own unique and encrypted password that is generated
by the system using high-level of password encryption method which is not viewed
even by the system Administrator. The system implements user authentication so that
a user can access only his/her privileges and to avoid the accessing of the system by
unauthorized person. For all this reason we can say our system is secure.
High performance: - Even though the performance of a system depends on the
specification of the machine being used , the proposed system that is going to be
developed will maintain high performance by responding within short time span and
reloading or refreshing only the required part of a page from the database.
User friendly: - Simple and interactive user interface components should be part of
the system. The consistent user interfaces to be developed will help the system to be
user friendly. For this reason, the interfaces and components of the system will be
designed in a user friendlyuser-friendly fashion to help users interact easily with the
system.
Reliability and efficiency: The system allows consistency of data while searching
and displaying data from the database by giving only valid result and notify the
system user if no data is found with the specified criteria without crashing or give
invalid response. The system will also be consistent at the time of data insertion and
updating in the database.
Quality: The system will protect the probability of error occurrence which might
arise from unexpected inputs by implementing java script validation before the input
is sent to the database. Regardless of the above error handling mechanism, the
system will employ exception handler techniques and generates error messages that
lets the user know about the fault.
Portability: The system should be designed in such a way that it can be used in
different plat forms
Availability: As the system which is going to be developed is a web basedweb-based
system it will be accessible 24/7.
Usability: The system will include a help and support option which can assist the
interaction of the user with the system.
Maintainability and expandability: The system should be designed in such a way
that the system developer or any authorized professional can easily maintain it
Moreover, the system should be flexible enough to accommodate the future needs of
expansion of the system by the system developers or the organization itself.
by reducing the waiting time for the pre-auditing and payment process.
The system reduce the face time between employee and customer which some time led to
misunderstanding and argument.
Reduce the crowdedness
Sine this system provide reliable information, it will reduce the frequent questions which arise
from the customers. As a result the employee will use the time for another office work.
Economy feasibility
organizational feasibility
Political feasibility
Operational feasibility
Timetable feasibility
Economic feasibility
The system being developed reduces the economic disadvantage that the customertax payer
goes through by frequently going to offices for finalizing an activity because of the current
systems unavailability. in additionaddition, the customertax payer also minimize the
productive time he/she wastes. Therefore, the proposed system is economically
feasiblefeasible, and the end-users are also benefited.
The organization benefits from the proposed system since it minimizes the time needed to
serve a single customertax payer. As a result, the organization employees will serve several
customertax payer effectively at a time which the waste on serving a single customertax payer
while using the current system.
As this system trails the taxation laws of the country for every interaction addressed by the
system, there won’t be any political encounters.
2.4.4 2.3.4 Operational feasibility
Since our proposed system is a web-based, it can be operated on any operating system and
different platforms like smart phones and personal computers this makes the system
operationally feasible.
2.4.5 Timetable Feasibility
3.1 Introduction
In this chapter, explanation of the requirement analysis is made. Thus, in this chapter we will
explain the stated requirement with some technical representation. The main part of the chapter
covers on requirement modeling based on object-oriented modeling techniques which is the
UML (Unified Modeling Language). The requirement modeling approach includes the
identification, description and structuring of use cases, actors and their interaction through use
case diagrams and use case descriptions. Sequence diagrams are also used as one of the
requirement modeling method in order to show the detail sequence of actions performed by each
case and object in the proposed system. The class basedclass-based modeling approach i.e.,
UML class diagram are then used to show the different classes and their relationships. Finally,
activity diagrams are drawn to give clarity to more complex use cases.
Please Add all off your use cases 3.2.2 System Actors identification
The actor a person, organization or other systems that interact with the system. Actors should be
placed outside the system boundaries. Actors are divided into primary and secondary actors. The
primary actors are actors who initiate the use case and secondary actors are those who
participate; react to the use case found within the system which was initiated by the primary
actor.
User characteristics
Easy-taxer
Inspect declaration
Form
Tax assessment officer
Send feedback Generate error
Authorize user
message
Approve Reprint
Tax-payer
Create Profile
Login
Accept address
Receipt re-printing Change
Analyze feedback
Information provider
Higher official
Service provider
Generate report
create user account
System administrator
uc use case
Easy taxer
Generate error
Authenticate user message
Look up Information
and service provided
«include» «extend»
Inspect declaration Tax assesement officer
form and calculate
«extend» «include» tax
Login
Validate form data
«include»
«include»
Declare Tax
«include» Create user account
«include» «include»
«include» System adminstrator
«include»
Report
«include»
«include» address/business Generate report
change
Higher officials
Create profile
Tax payer «include» «include»
Issue reciept-
reprinting
uc use case
Easy taxer
Generate error
Authenticate user Sign up
message
Look up Information
and service provided
«include» «include»
Declare Tax
Create user account
«include»
«include» «include» «include»
System adminstrator
«include»
Report
«include» address/business «include» Generate report
change
Higher officials
Create profile
Tax payer «include» «include»
Issue reciept-
reprinting
ID 1
Flow of events The tax payer enters his/her user name and password.
ID 1
Use case name Login
Use case description The tax payersystem user login to the system through
authentication.
Actor Tax-payer, tax assessment officer, tax audit officer, law
enforcement officer, tax appeal officer, higher official,
system administrator.
Pre-condition Open the login page and know the user name and
password.
Flow of events.Main sequence The tax payer activates login page
Flow of events The tax payer enters his/her user name and password.
Alternative course B the user did not B3. The system displays error message
sign up/user account not
B4. The signup form Displayed
created/mismatch
Alternative course A blank field A3. The system displays error message and inform
the blank fields
A4. The sign up Page Displayed
A5. The use case ends
Alternative course B the user used B3. The system displays error messagequired
password length
an existing username
B4. The signup form Displayed
1.2.7
Flow of events.
1. Fill the declaration form.
Main sequence 2. Attach the documents.
3. Press the submit button. (Alternative course A :the
tax payer fills invalid information. Alternative
course B :blank field)
4. The system validates the form and the attached
documents.
5. The system displays a success message.
6. The use case ends.
Post condition Close the page.
Alternative actioncourse A (if the A3.4.a The system notifies the customer that the form is
customer fills invalid information) invalid and to re-submit the form.
Alternative course A blank field A3. The system displays error message and inform
the blank fields
A4. The sign upsign-up Page Displayed
A5. The use case ends
Alternative course B the user used B3. The system displays error message
B4. The signup page Displayed
an existing username
B5. The use case ends
Alternative course C the user did C3. The system displays error message and required
password length
not enter the correct password length
C4. The signup page Displayed
or format C5. The use case ends
Use case ID 3
Use case name Declare tax
Use case description The tax payer will fill the declaration form, attach the
necessary documents and submitted it to the system.
Actor The tax payer.
Flow of events.
7. Fill the declaration form.
8. Attach the documents.
9. Press the submit button. (Alternative course A: the
tax payer fills invalid information. Alternative
course B : blank field)
10. The system validates the form and the attached
documents.
11. The system displays a success message.
12. The use case ends.
Post condition Close the page.
Alternative course A the tax payer fills A3. The system notifies the tax payer that the form is
invalid information) invalid and to re-submit the form.
Flow of event. 1. Check if there is any submitted form and attached document.
2. Search the profile of the specified tax payer using his/her TIN number.
(Alternative course A: the system didn’t find specified data)
3. Cross check if the information associated with the form matches the
tax payer’s profile and the legality of the document. (Alternative
course A: the data doesn’t match or illegal document)
4. Calculate tax.
5. Notify the tax payer about his/her calculated tax through e-mail or the
notification module of the system.
6. Press the payed check box after receiving payment.
7. The system generates a Transaction ID and give cleared status to the
tax payer.
8. The system sends an email which contains thecontains the
transaction id to the tax payer.
9. The use case ends.
Post condition Close the page.
Alternative course A2. The system will notify the tax assessment officer that there is no such tax
A the system payer.
didn’t find
specified data A3. The page is displayed.
Alternative course A3. The tax assessment officer will send a message to the tax payer to inform
A the data doesn’t that the form and his/her profile doesn’t match or that his documents are
match or illegal illegal through his/her email.
document
A4. The page is displayed
Use case ID 5
Use case name Report address/business change
Use case description The tax payer reports about his/her address or business change by filling
a form
Flow of event
1. The tax payer fills form.
2. Attach the documents.
3. Press report button. (Alternative course A : the tax payer fills
invalid information. Alternative course B: blank field)
4. The system validates the form and documents.
5. The system displays success message.
6. The use case ends.
Flow of event
7. The customer fills form.
Main sequence 8. Attach the documents.
9. Press report button. (Alternative course A : the tax payer fills invalid
information. Alternative course B:blank field)
10. The system validates the form and documents.
11. The system displays success message.
12. The use case ends.
Use case description The customer notifies the office when he/she quit his/her
business activities
Alternative actioncourse A(if the A4.4.a The system notifies the customer that the form is
customer fills invalid information) invalid and to re-submit the form.
Use case description The tax audit officer changes the information of the tax payer’s
address or business sector on the system.
Alternative course A there A1. The system will notify the tax audit officer that there is no
is no tax payer with the such tax payer.
specified TIN number)
A2. The page is displayed again.
Use case description The tax payer notifies the office when he/she quit his/her
business activities
Alternative course A the tax payer fills A4. The system notifies the tax payer that the form is
invalid information invalid and to re-submit the form.
Use case description The tax audit officer removes any information about the tax payer from the
system.
1. The tax audit officer searches for the specific tax payer who requested
Flow of event
the service by using his/her TIN number. (Alternative course A: there
is no tax payer with the specified TIN number.)
2. The tax audit officer checks if the tax payer have been fully cleared of
tax throughout his business transaction. (Alternative course A: the tax
payer havehas any debt ).
3. The tax audit officer marks the tax payer’s profile as dead file on the
database.
4. The use case ends
Post condition Close the page.
Alternative course A A1. The system will notify the tax audit officer that there is no such tax payer.
there is no tax payer with
A2. The page is displayed.
the specified TIN number
A3. The use case ends.
Alternative course A the A2. The tax audit officer notifies the tax payer to clear his unpaid tax by sending
tax payer has any debt. an email.
Use case description The customertax payer reports the malfunction of his/her cash register to
the office through the system.
Main sequenceFlow of event 1. The customertax payer inserts TIN number and cash register
numberattaches the soft copy of his/her cash register book.
2.
3. The tax payer presspresses the report button. ( Alternative course
A: the tax payer fills invalid information)
4.
5. The system generategenerates a unique code notifies for both the
tax payer and customer service officer.
6. The system displays success message.
7. The use case ends
8. The customer press the report button.
Post condition Close the page.
Alternative course A the tax A2. The system notifies the tax payer that the form is invalid and to re-
payer fills invalid submit the form.
informationAlternative action(if A3. The system informs the user that unique number is not generated
the customertax payer presses
A4. The system displays the page.
the report button without
attaching the documents.) A5. The use case ends.1.a The system will inform the customertax payer
that he/she haven’t attach the cash register book and to attach the
document.
Alternative course B blank B2. The system displays error message
fields B3. The Page is Displayed
Use case description The customertax payer request for re-printing of receipt.
1. The tax payer fills the form and submit it to the office. ( Alternative
Main sequenceFlow of event course A: the tax payer fills invalid information. Alternative course
B: blank field)The customertax payer fill the form and submit it to
the office.
2. Wait for printing permission from the office through his/her e-mail.
3. Attach the sample receipt.
4. Wait for the approval of the sample receipt from the office through
his/her e-mail.
5. The use case ends
Post condition Close the page.
Alternative course A the tax A1. The system notifies the tax payer that the form is invalid and to re-
payer fills invalid submit the form.
informationAlternative
A2. The system displays the page.
action(if he attach the sample
before filling the form and vice A3. The use case ends.1.a The system let the customertax payer know that
versa) his/her action are invalid and go through the procedure one more time.
1. The customer service officer checks the information within the form
and whether there is an existing receipt associated with the tax payer.
(Alternative course A: there is existing receipt associated with the tax
payer trade license.)
2. The customer service officer sends the permission to the tax payer.
3. The customer service officer checks the printed sample receipt which
is attached by the tax payer. (Alternative course A: the attached
sample receipt doesn’t fulfill the standard receipt format.)
4. The customer service officer sends the permission to print the whole
receipt for the tax payer.
5. The use case ends
Alternative course A the tax A2. The system displays error message
A3. The Page is Displayed
payer didn’t write a feedback
A4. The use case ends
Use case ID 15
Use case description The customertax payer will get a full information about each
servicesservice provided by each department office and required
documents for those services .
Use case description Displays the service provided by each department offices.
Use case ID 16
Use case description A customer service officer creates a profile for a new tax
payer.
Actor Customer service officer.
Alternative course A the customer A2. The system notifies the Customer service officer that
service officer fills invalid information the form is invalid and to re-submit the form.
Alternative action course A(if the A22.a. The system notifies the employee that the form is
employee fills invalid information) invalid and to re-submit the form.
Use case description the employee will give an approval to the receipt reprinting request
issued by the customer
Actor The employees of ERCA.
Description A person who is an employee of ERCA.
Pre-condition The employee must login to the system.
Main sequenceFlow of event The employee checks the information within the form and whether
there is an existing receipt associated with the customer.
(1.a if thereThere is any existing A2. The customer service officer sends an email to the taxpayer to
receipt associated with the inform the declination.
customer nigd fikad.
A3.The page is displayed.
3.a if the attached sample receipt
A4. The use case ends.
doesn’t fulfill the standard receipt
format. )
3.a The employee declines the sample receipt and issue for re-printing
of the sample again.
Alternative course A the attached A3. The customer service officer declines the sample receipt and issue
sample receipt doesn’t fulfill the for re-printing of the sample again.
standard receipt format.
A4. The customer service officer sends an email to the taxpayer to
inform the declination.
Use case description The employee changes the information of the customer’s address or
business sector on the system.
Alternative action(ifcourse A there 1.aA1. The system will notify the employee that there is no such
is no customer with the specified customer.
TIN number)
A2.The page is displayed again.
Use case description The employee removes any information about the customer from the
system.
Alternative actioncourse A there is A1.1.a The system will notify the employee that there is no such
no tax payer with the specified customer.
Flow of event
1. The system administrator fills user registration
Main sequence form .
2. Press create button. (Alternative course A: the
system administrator fills invalid information)
3. The system will create an account.
4. The use case ends
Post condition Close the page.
Alternative action(ifcourse A the A24.a The system notifies the system administrator that the
system administrator fills invalid form is invalid and to re-submit the form.
information)
A3. The page is displayed again.
sd Package1
display form()
fill form()
submit()
validate data()
validation()
set data()
created Profile()
display TINno()
sd Validation
display form()
fill form()
submit()
validate data()
validation()
Generate Code()
Display code ()
View forms button Form list page << View form Database
<<UI>> UI >> controller
Tax payer
Click()
Display forms()
Return data()
Display list of form()
View form list()
Search profile()
Get profile information()
Get information()
Informatio()
Display profile()
View profile()
Calculat tax()
Calculat()
Calculat total amout of tax()
Display tax()
View tax amount()
Send notice()
Get message()
Get data()
Sucess message()
[Update]
Send Accepted
notice
Logout
Logout
end
Process
[Decline]
Attach Samples [approved] Print receipts
Check again End
process
Login Check for existing [exist] send permssion Check printed [fulfill the standard]
receipt Approve to print
Customer samples
service
officer
inters to [No receipt] [doesn't fulfill]
the
system
Terminate
process
Login Inspect for submited [form available] Search profile [Profile found] Cross check
form information
Tax
assessment
officer inter [No available form] [Check again] [No Profile]
to the
system
End
process
Check document
Send error notice
legality
Reject
[Yes]
Calculate tax
Finish
process
Receipt re-printing
- permission: boolean Report Cash Register
- printing_company's_name: String System admin
- printing_company's_tin_number: int - cash_register_number: String
- sample_receipt: file - final_date: String
- first_name: String
- tin_number: int - generated_code: int
- last_name: String
- request_date: date
- password: String
+ display_notification(): void - tin_number: int
- re-enter_password: String
+ display_request(): void
+ display(): void - user_name: String
+ display_sample_receipt(): void
+ search_profile(int): void + report(): void
+ create_profile(): void
+ send_request(): void + update(): void
+ delete_profile(): void
+ validate_data(): void + validate_data(): void
+ login(): void
+ validate_data(): void
In the previous chapters UML diagrams have been constructed based on the functional and
nonfunctional requirement we have gathered and analyzed. This chapter will cover system
design, the system architecture, the Database design and the user interface of the system.
Performance
The system design will provide the best performance which can satisfy the users of this system
by means of using smaller memory and space as much as possible. The system response time
performance makes users to interact more frequently and interested to response for the question
which may be asked and the use the system notification daily. Also, the office personnel can
make fast response as much as possible.
Reliability
The reliability goal is making the system dependent and error handling which makes the users do
their work without perturbing/fretting about faulty happening while using the system. Most of
our system users may not have that much experience using computers and mobile phones in that
cause our system must be tolerant for errors.
Security
The must goal of the system design is security. Since our system is all about collecting and
giving a response to demanded services which use personal data of customers and the city
property, the system must keep the user’s database secure. Which leads to getting the system a
confidentiality through users and add usability.
Usability
As mentioned above not everyone is good with computers. By making the interface simple to use
to all user the system can the choice of those users. This can decrease the struggle of the system
user and increase the system usability.
Component description
1. Inspection and calculation of declared tax
1.1 Enable the tax-payers to declare their tax.
2. Information provider
This module provides information about different services that are offered by ERCA offices.
Required interface: - Login page, information page.
Provide interface: - view information page.
3. Generate report
This module enables the higher officials to view the overall report on the number of users
the system has served.
Required interface: - Login page, report page.
Provide interface: - report data.
4. Inform and process inconvenience
4.1 Inform and process cash register malfunction request.
Required interface: - Login page, profile page, cash register page.
Provide interface: - cash register form and profile data.
4.2 Inform and process receipt re-printing request.
Required interface: - Login page, profile page, re-printing page.
Provide interface: - re-printing form and profile data.
Actors Subs
yste
m
Login Generate Create Creat Decla Inspected/ Addres Busin Cash Rece Info
Report User e re Tax form and s ess cut register ipt and
Account Profil calculate busines out mal re- servi
e tax s print ce
change
Tax-payer
Tax Assessment
officer
Tax Audit Officer
Customer Service
Officer
System
Administrator
Higher Officials
The proposed system that is going to be developed pertains a three-tier architecture. Three-tier
architecture is a client–server software architecture pattern in which the user interface
(presentation), functional process logic ("business rules"), computer data storage and data access
are developed and maintained as independent modules on separate platform. The three-tier
architecture also allow any of the three tiers to be upgraded or replaced independently in
response to changes in requirements or technology. []
Presentation tier
The presentation tier is the topmost level of the application which users can access directly (such
as a web page, or an operating system's GUI) to display information. It communicates with other
tiers by which it puts out the results to the browser/client tier and all other tiers in the network. []
Business tier
The business tier is pulled out from the presentation tier and, as its own layer, it controls an
application’s functionality by performing detailed processing. []
Data tier
The data tier includes the data persistence mechanisms (database servers) and the data access
layer that encapsulates the persistence mechanisms and exposes the data. The data access layer
should provide an API to the application tier that exposes methods of managing the stored data
without exposing or creating dependencies on the data storage mechanisms. Which in turn allows
for updates or changes without the application tier clients being affected by or even aware of the
change. []
+PK_Tax_payer_profile +PK_Tax_payer_profile
+FK_Address/business_change_Tax_payer_profile
Tax_payer_profile +FK_Receipt_reprinting_Tax_payer_profile
Address/business_change «column»
* first_name: varchar(50)
Receipt_reprinting
«column» * last_name: varchar(50)
*PK id: int * age: int
«column»
*FK tin_number: int * gender: bit
id: int
changed_address: varchar(50) * phone_number: varchar(50)
*FK tin_number: int
changed_business: varchar(50) * email: varchar(50)
* printing_company_tin_number: int
document: varchar(50) * woreda: int
* printing_company_name: varchar(50)
* subcity: varchar(50)
* sample_receipt: varchar(50)
«FK» * work_address_woreda: int
* permission: bit
+ FK_Address/business_change_Tax_payer_profile(int) *PK tin_number: int
* work_type: varchar(50) «FK»
«index»
* tax_class: varchar(50) + FK_Receipt_reprinting_Tax_payer_profile(int)
+ IXFK_Address/business_change_Tax_payer_profile(int)
vat_number: int
«PK» * finger_print: image «index»
+ PK_Address_business_change(int) + IXFK_Receipt_reprinting_Tax_payer_profile(int)
«PK»
+ PK_Tax_payer_profile(int)
+PK_Tax_payer_profile +PK_Tax_payer_profile
+FK_Business_cutout_Tax_payer_profile +FK_Cash_register_malfunction_Tax_payer_profile
Business_cutout Cash_register_malfunction
«column» «column»
*PK id: int *PK id: int
*FK tin_number: int *FK tin_number: int
* cutout_date: date * cash_register_number: varchar(50)
* document: varchar(50) * generated_code: int
* cleared: bit * date: date
«FK» «FK»
+ FK_Business_cutout_Tax_payer_profile(int) + FK_Cash_register_malfunction_Tax_payer_profile(int)
«index» «index»
+ IXFK_Business_cutout_Tax_payer_profile(int) + IXFK_Cash_register_malfunction_Tax_payer_profile(int)
«PK» «PK»
+ PK_Table1(int) + PK_Table1(int)
Transaction_history
Declare_tax
«column»
«column»
*PK id: int
* tax_payer_name: varchar(50)
*FK tin_number: int
*PK tin_number: int
* transaction_code: varchar(50)
* last_transaction_code: varchar(50)
* employee_name: varchar(50)
* date: date
* date: date
vat_number: int
+FK_Transaction_history_Declare_tax_02 * cleared: bit
* tax_class: varchar(50)
* work_type: varchar(50) «FK»
total_supply: float + FK_Transaction_history_Declare_tax_02(int)
value_of_taxable_goods: float + tin_number()
value_of_general_expense: float
value_of_taxable_input: float «index»
value_of_total_input: float +PK_Declare_tax + IXFK_Transaction_history_Declare_tax(int)
* receipt: varchar(50) + IXFK_Transaction_history_Declare_tax_02(int)
id: int «PK»
+ PK_Transaction_history(int)
«index»
+ IXFK_Declare_tax_Transaction_history(int)
«PK»
+ PK_Declare_tax(int)
Tax_payer_account
Report
«column»
«column» * first_name: varchar(50)
*PK id: int * last_name: varchar(50)
report_type: int *PK username: varchar(50)
report_number: int * password: varchar(50)
* account_code: varchar(50)
«PK»
+ PK_Table1(int) «PK»
+ PK_Tax_payer_account(varchar)
This page is for Tax Assessment officer, Tax Audit Officer, Tax Appeal Officer, Customer
Service Officer, System Administrator and Higher Officials to give services to customers. The
profile can be created for both the tax payer and the employees. Most of services are in this
interface.
This is where the customer gets information, all types of forms, notifications and a feedback to
give services. The interface shows the services with help of how to use and which should be
when. Also, customers may get their answers for the Questions they ask simply.
This is what it looks like when customer service officer creates profiles for customer. Tax-
payer’s will give all the information about them and their business and the employee will create
their profile.
Appendix
Abbriviation
Class diagram
References
Y. Medhin, ‘title’, Addis Ababa science and technology Press, Ethiopia, 2018.
Materials from Uppsala University, “Introduction to taxation”, Retrieved
from:http://demo.clab.cs.cmu.edu/fa201511711/images/1/17/intrototaxation.pdf, last accessed
on, June 5, 2018.