Professional Documents
Culture Documents
PharmaDoc
PROJECT ADVISOR
Arifah Azhar
SUBMITTED BY:
M Adnan Akbar (Team Leader) S2016065025
M Nauman Nasir S2016065032
Asif Arif S2016065024
Jahanzaib Khalid S2016065030
SESSION: 2016-2020
Panel of Examiners
Supervisor ______________________
Department of Software Engineering
University of Management and Technology
Lahore
Co-Supervisor ______________________
(If any)
Acknowledgment
We are grateful to the Almighty ALLAH for the good health and wellbeing that we are working on
this project. A special thanks to the project advisor Miss Arifah Azhar and co-advisors for their
countless hours of guidance, motivation, encouragement and patience during the project. We would
like to acknowledge our department, head of department for proving us the platforms and facilities
required for this project.
Project Title
PharmaDoc
Objective
The main objectives of our project are:
Customer can search a medicine
Add medicine to cart
Check out products form the cart
Customer can see his order history
Update profile
Admin can generate sales reports
Add new pharmacist
Process orders
Manage medicines
Manage customer orders
Undertaken by
Muhammad Adnan Akbar
Muhammad Nauman Nasir
Jahanzaib Khalid
Asif Arif
Supervised by
Miss Arifah Azhar
Starting Date
15th –February-2019
Completion Date
19th –February-2020
Tools Used
Android studio, Firebase database, Draw.io, visual studio code
Operating System
Windows and Android Devices
Documentation
Microsoft word
Declaration Form
I have carefully examined the documentation of the Final Year Project titled
“PharmaDoc”; and I endorse that this documentation complies with the standards of an
undergraduate level Final Year Project report.
The document has been checked for plagiarism through Turnitin software available in
UMT Library. The similarities of the document are within acceptable range.
Moreover, the accompanying CDs contain PDF of the documentation, as well as the source
code and binaries with user manual and installation guide.
This section explain the revison and meeting with advisior to complete the project.
Table 1: Revision Chart Table
Version Primary Author(s) Description of Version Date Completed
Contents 1
Definitions and Acronyms 3
List of Figures 4
List of tables 6
1. Introduction 8
1.1 Motivation 8
1.2 Project Overview 8
1.3 Problem Statement 9
1.4 Objectives 9
2. Domain Analysis 10
2.1 Stakeholders 10
2.2 Affected Groups with social or economic impact 10
2.3 Reference Documents 11
2.3.1 Related Projects 11
2.3.2 Feature Comparison 11
3. Requirements analysis 13
3.1 Requirements 13
3.2 List of Actors 15
3.3 List of use cases 15
3.4 System use case diagram 16
3.5 Use Cases 17
3.6 User interfaces (Mobile end) 36
3.7 User interface (Web end) 40
4. Data flow diagram (optional) 44
4.1 Data Flow Diagram Level 0 44
4.2 Data Flow Diagram Level 1 45
5. System Design 46
5.1 System Architecture Diagram 46
5.2 Class Diagram 47
5.3 Sequence Diagrams 48
5.4 ERD 53
5.5 Data Dictionary 54
6. Implementation details 56
6.1 Development Setup 56
Chapter 1 describes the motivation, overview and problem about the project.
1.1 Motivation
Educating patients about their medications in palliative care could improve compliance to
medications and patients’ quality of life. The rapid increase in spread of deadly diseases in
the world need drastic steps to be taken in technological world to guide people about
medication. Primary healthcare and multidisciplinary models have been suggested as
approaches to deal with this challenge. Daily busy routine, heavy traffic on roads and
environmental factors sometime causes difficulty for people to buy medicines. Sometime
it is difficult to find a specific medicine on medical stores.
This motivated us to design a solution for peoples suffering in this situation. So we decided
to make a mobile application which will help people to buy medicine on single click on
their doorstep. The platform we choose is android mobile because android mobile so
common in today world. By using mobile phone anyone can order medicine anywhere
anytime. Pharmacy will gain economic benefits by attracting customer online using our
system.
Our application customers are those who are conscious for their health. Those who
understands the importance of medicine for their health condition
Pharmacy admins those will have economic benefit from selling medicines online to their
customers.
Our system main goal is to provide patient with accurate information about medicines and
provide them with accurate medicines they like to purchase online.
Patients will be able to know about medicine details like side effects, warnings and
symptoms. Patients would be able to get alternative of medicines. Patients will be able to
buy medicine online from our application.
For the peoples who need to buy medicine online, wants home delivery of medicine and
wants to search about medicines to know their attributes likes (price, side effects, uses,
warnings, alternatives, expiry date, manufacturing date, manufacturer etc.) the PharmaDoc
is a mobile application that will provide single point of access to all the above features
unlike the current manual medicine retailing process, our product will generate all reports
required.
1.4 Objectives
Main objective of our system is to provide people with all important information related to
a medicine. Our objective is to make the manual process of retailing medicine online so
that people can buy medicine online without any problem.
Buy medicine online
Provide medicine information
Upload prescriptions to buy medicines
Process customers’ orders
Provides sales reports to admin
Provides orders details to pharmacist
Provides the facility to manage pharmacists
2.1 Stakeholders
Following are the roles of our system those who will be interacting with our system
Table 3: List of Stakeholders
Stakeholder Role in System
Pharmacist He is responsible for managing medicine specifications in the
inventory.
Pharmacist will manage and verify medicine orders and make sales
against the medicine order from customer.
Pharmacy He is responsible to add new pharmacist, he can manage pharmacy sales
admin record, will be able to generate reports.
customer He can search about medicine details and can order medicine online
from pharmacy.
In Chapter 3 analyzed all the requirement for our system, figure out and elaborating all the use
cases.
3.1 Requirements
Following are the function and non-functional requirements of our system
Table 5: Functonal and Non-Functional Requirments
RID” Description Category Attribute Details
FR 1. User signup is Functional Sign up User must enter first & last
compulsory to use name email, password,
system functionality address and phone to get
Account
FR 8 Admin can register Functional Add new Admin must enter all the
new pharmacist Pharmacist detail needed for registration
process(name, Dob, cell#,
gender)
FR9 Pharmacist can process Functional Process order Order request is conformed
the orders given by the and authenticated.
customers.
FR10 Pharmacist can cancel Functional Cancel order After confirmation
medicine orders pharmacist can cancel order
given by customers
FR12 Pharmacist can view Functional View sale Pharmacist click on a sale to
sale view details.
FR13 Pharmacist can add Functional Add medicine Pharmacist fills the
new medicines to the medicine detail forms
inventory (name, expiry date etc.)
FR16 Admin can generate Functional Generate Admin select time interval
sale reports sales reports between which he wants to
generate reports
Exceptions: Customer press the back button to place order so use case ends
there.
Includes: UC 6
Frequency of Use: One time per order
Special Requirements: NA
Assumptions: NA
Notes and NA
Issues:
Exceptions: NA
Includes: UC 9
Frequency of Use: At least one time per sale.
Notes and Issues: NA
Exceptions: NA
Includes: UC 13
Frequency of Use: More than one time per medicine
Notes and Issues: NA
Includes: UC 13
Frequency of Use: One time per medicine
Notes and Issues: NA
Chapter 4 is about the flow of task between system and users. Which data stores will be needed in
order to complete the required task?
6.4 Constraints
This section states about those external and internal requirements needs to run our system.
6.4.1 Assumptions
Internet Connection
User must have valid account to handle all the assigned activities.
For admin panel user must have windows OS installed and a web browser of open the
website.
6.4.3 Restrictions
Admin panel will be only accessed by pharmacy personnel with admin rights
Pharmacy admin cannot do any activity related to managing medicine records.
Pharmacy admin will not be given rights to deal with orders and sales, but will be given
right to view sales reports.
Pharmacist cannot update its personal information.
6.4.4 Limitations
No decision making level SQL query are performed in our project.
PharmaDoc is not providing disease cure. It just providing medicines details searched by
user.
We will not actually ship orders because we don’t have the contract with any pharmacy.
We are not giving the facility of tracking orders.
Step Test Step Test Data Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to home screen. pass
2 Click in search medicine Search Search medicine
editText field. medicine page opened.
page will
open
3 Customer will enter the Name:
name of medicine. Panadol
click on search submit Medicine Medicine is
button name will found and
show to displayed
customer.
3a Empty search field Name:””
click on search submit System will System signal
button signal error error “enter
medicine name”
3b Invalid medicine name Name:1254
click on search submit System will System signal
button signal error error “invalid
medicine name”
Post Condition System successfully present medicine names to the customer against his search
Step Test Step Test Data Expected Actual Result Status(P Notes
Result ass/Fail)
Navigate to cart.
1 Enters the item Panadol: Pass
quantity. 1 strip.
2 Click on checkout System will Redirected to
icon. redirect the user checkout page
to checkout
page.
3 Empty cart
Step Test Step Test Data Expected Result Actual Result Status( Notes
Pass/Fa
il)
1 Navigate to home screen. pass
2 Click on the upload
prescription button.
3 System display dialog box .
whether to capture or to
select image from gallery.
4 Click on camera Camera App will Camera is
open. opened.
5 Click on choose form Gallery will open. Phone local
gallery. gallery is opened.
6 No image selected Image:””
Click on upload button. System generate Choose at least
error. one picture to
proceed.
6a Select an image Medi.jpeg
Click on upload button. Medicine image Image is uploaded
will be upload and system
redirect the user
to checkout page.
Post Condition
Step Test Step Test Data Expected Result Actual Result Status( Notes
Pass/Fa
il)
1 Search the medicine pass
2 Click on searched medicine Panadol
3 Scroll down to see add to .
cart button at the bottom of
medicine details Screen.
4 Click on add to cart. Medicine will be in Medicine
the cart successfully
added the cart and
total is calculated.
5 Click on add to cart again System will signal System signal
error error “medicine
already in cart”
Post Condition
Step Test Step Test Data Expected Actual Result Status(P Notes
Result ass/Fail)
Open navigation drawer. pass
1 Clicks on logout button.
2 System will display a
dialog box with cancel or
conform button.
3 Customer click on logout User session User redirect to
button. clear. User login screen.
redirect to
login screen.
Step Test Step Test Date Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to manage pass
pharmacist tab.
1 Click on register new
pharmacist button.
3 Fill the form Name:
M Adnan
Email:
Adnan.akbar
425@gmail.
com
Address:
Mustufa
town
Password:
Adnan123
Gender:
Male
Step Test Step Test Date Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to Orders Tab. pass
2 Pharmacist click on
cancel order.
3 System prompts the
pharmacist to conform or
cancel.
4 Click on conform. Order will be Order is
deleted canceled
successfully and
order status
changed to
“Canceled”
Post Condition: The order against the order id will be searched and canceled.
Step Test Step Test Date Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to Medicines Pass
Tab.
2 Click on Add new
medicine.
3 Fill the form. Name:
Panadol
use:
Pain killer
quantity:25
potency:50
mg
category:
tablets
manufactur
er: hamdard
expiry:
15-8-2021
manufDate:
10-6-2019
image:
pand.jpeg
warnings:
Do not take
without
doctor
advice.
Step Test Step Test Date Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to medicine pass
tab.
2 Search the medicine System will Searched
show medicine is
searched shown
medicine
3 Fill the form according Name:
the new details. Panadol cf
Price: 200
Click on update button. Medicine Medicines
details will be Details updated
updated. successfully.
3a Empty fields Name:””
Click on update button System will System update
signal error the medicine in
the inventory
Post Condition: Medicine details will be updated successfully.
Step Test Step Test Date Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to medicine pass
tab.
2 Select a medicine form
the searched results.
3 Click on Delete button. Medicine Medicines is
details will be deleted form the
Deleted. system and
inventory
updated.
Post Condition: Medicine will be deleted successfully.
Step Test Step Test Data Expected Actual Result Status(P Notes
Result ass/Fail)
1 Navigate to sales Reports pass
tab.
2 Choose time interval 15/02/2020 Sales records Sales records
to between shown in set
20/02/2020 chosen date format.
will be shown
3 Click on generate reports Sales records Sales records
button between shown in set
chosen date format.
will be shown
4 Invalid date 20/02/2020 System will System signal
To signal error error “choose
ending date”
5 Empty date fields System signal System signal
error error "please
choose date"
Post Condition: Sales reports will be generated successfully.
Condition Rule_1 Rule_2 Rule_3 Rule_4 Rule_5 Rule_6 Rule_7 Rule_8 Rule_9
s
Email Blank Blank Blank Invalid Invalid Invalid Valid Valid Valid
Password Blank Invalid Valid Blank Invalid Valid Blank Invalid Valid
Error Error Error Error Error Error Error Error Success
Messag Messag Messag Messag Messag Messag Messag Messag Message
e e e e e Login e e e and
Please Please Please Please failed Please Please redirect
Login
enter enter enter enter enter enter to Index
failed
email, email, email valid valid passwo page
Actions pass enter email email rd
(Expecte valid id id
d errors) pass
Show Login Login Login Login Login Login Login Login Index
Page
Status FF FF FF FF FF FF FF FF TF
UCID/ R1 R2 R3 R4 R5 R6 R7 R8 R9 R R R R R R R R R
RID a a a a a a a a a 10 11 12 13 14 15 16 17 18
a a a a a a a a a
UC 1 a
UC 2 a
UC 3 a
UC 4 a
UC 5 a
UC 6 a
UC 7 a
UC 8 a
UC 9 a
UC 10 a
UC 11 a
UC 12 a
UC 13 a
UC 14 a
UC 15 a
UC 16 a
TCID/ R1 R2 R3 R4 R5 R6 R7 R8 R9 R R R R R R R R R
RID f f f f f f 10 11 12 13 14 15 16 17 18
f f f f f f f f f
TC_1 a
TC_2 a
TC_3 a
TC_4 a
TC_5 a
TC_6 a
TC_7 a
TC_8 a
TC_9 a
TC_10 a
TC_11 a
TC_12 a
TC_13 a
TC_14 a
TC_15 a
TC_16 a
UCID/ U U U U U U U U U U U U U U U U
TCID C C C C C C C C C C C C C C C C
1f 2f 3f 4f 5f 6f 7f 8f 9f 10 11 12 13 14 15 16
f f f f f f f
TC_1
TC_2
TC_3
TC_4
TC_5
TC_6
TC_7
TC_8
TC_9
TC_10
TC_11
TC_12
TC_13
TC_14
TC_15
TC_16
8.1 %completion
We have 16 use cases and 21 requirements in our project. 95% of use cases completes the
requirements of project.
8.2 %accuracy
When Pharmacist or customer is filling form, our application is just validating for empty fields to
till date. Medicines price some time will not accurate some time. Almost 96% of work is accurate.
8.3 %correctness
Application results are 98% accurate.
Chapter 10 describe the future work we would like to include in our system.
In future work we have plan about using bar code scanner to add medicine information
automatically to the input fields when we are entering information to the system. When registering
pharmacist in our system we would like to have facility to validate pharmacist information like his
license number and other education information from those institutes. We would like to have gain
access to a source from where users can get authenticated information about medicine which can
help them in their health care routine. One of the important feature we are planning to add in future
is that user can search for medicine to find all the medical store near the user on which that particular
medicine is available.
This feature have some limitation yet. To implement this feature we need database
connection of different pharmacies to access the inventor to see whether a medicine is available or
not. Moreover that pharmacy must have internet connection 24/7. Another problem people face
now a day is find the best doctor for a specific treatment. A specialist doctor can guide or examine
a sickness batter suggest a bust medicine. But people living in backwards areas faces difficulty in
finding the best doctor. So we are planning to implement this feature in our application through
which people can look for best doctor their location, sitting hours and map. This feature will be
proved very useful for the people.
Chapter 11 describes all the references and links we have visit to complete our project.
11.1 Books
1 Software Engineering: A Practitioner's Approach by Roger S. Pressman
2 Software Engineering by Ian Sommerville
3 Beginning Software Engineering by Rod Stephens
4 Fundamentals of Software Engineering by Rajib Mall
5 Software Requirements by Karl Wiegers
6 Agile Project Management with Scrum by Ken Schwaber
7 Human-Computer Interaction by Alan Dix, Janet Finlay, Gregory D. Abowd and Russell
Beale
8 Programming in Python 3: A Complete Introduction to the Python Language by Mark
Summerfield
9 Design pattern, Elements of reusable object oriented programming,
11.2 Journals
1 Community Pharmacy Practice in Pakistan, Nosheen Aslam, Rabia Bushra, Muhammad
Umair Khan Collage of pharmacy , Karachi
2 Application of PHAs in medicine and pharmacy
12.2 Pre-requisites
Some pre-requisites must be fulfils to use the system.
These are the pre-requisites of this system:
User must have PC or mobile device
PC or device must have internet connection