Uploaded by Nosila Emad

19311

advertisement
1|Page
Table of contents
I. Present and Justify a Problem and Solution
Requirements
•
•
•
•
•
Egypt Grand Challenge(S).
Problem to be solved.
Research.
Other solutions already tried.
Design Requirements.
II. Generating and Defending a Solution
•
•
Selection of Solution.
Selection of prototype.
III. Constructing and Testing a Prototype
•
•
•
Materials and Methods.
Test Plan.
Data Collection.
IV. Evaluation, Reflection, Recommendations
•
•
•
Discussion.
Recommendations.
Learning outcomes.
2|Page
Chapter 1
I.
3|Page
. Present and Justify a Problem and Solution
Requirements
Egypt grand challenges
• Urban congestion
• Recycle garbage and waste
• Alternative energy
• Public health issues/disease
• Industry and agricultural in Egypt
• Population growth (over population)
• Arid areas
• Clean water
• The scientific and technological environment for all
• Climatic change
• Pollution fouling our air, water and so.
We will briefly discuss our change and the related ones only:
Public health:
The challenge addressed this semester is the public health, which has been
suffering hard recently due to various factors. Firstly, the declining quality of
hospitals and medical serves as the healthcare expenditures range from 3 % to 5 %
of Egypt's GDP. Secondly, the frequent pollution increments which increased the
rate of the lower respiratory infections with 23.7% in the last 10 years in Egypt.
Finally, the increasing rates of disease emergency cases like heart attack which
increased with 33.5% and strokes which increased with 25.7% recently.
4|Page
✓ We will briefly discuss our change and the related ones
only:
I. Public health:
The challenge addressed this semester is the public health, which has been suffering
hard recently due to various factors. Firstly, the declining quality of hospitals and
medical serves as the healthcare expenditures range from 3 % to 5 % of Egypt's GDP.
Secondly, the frequent pollution increments which increased the rate of the lower
respiratory infections with 23.7% in the last 10 years in Egypt. Finally, the increasing
rates of disease emergency cases like heart attack which increased with 33.5% and
strokes which increased with 25.7% recently. As shown in figure (1).
Figure (1)
5|Page
II. Pollution:
Egypt has been suffering from pollution as Cairo is recognized as one of the top 10 polluted
cities all over the world. The major types of pollution found in Egypt are the air and water
pollution. And unfortunately, they are strongly related to the public health issues in Egypt
Air pollution is directly related to the lower respiratory system infractions which contribute
with 23% of dieses rate in Egypt 2017.in addition, over 43000 Egyptian died from air
pollution, WHO said in its report. Water pollution is a severe problem in Egypt, it contributes
in many diseases especially parasitic disease like Bilharzia. In addition, untreated drinking
water and fecal contamination of water is the major cause of diarrhea which is the 14th
major disease-causing death in Egypt
III. Urban congestion:
One of the related challenges to the public health. Traffic congestion in Egypt has many
causes: fuel subsidies result in cheap petrol and diesel, which in turn result in more
private cars on the streets, meanwhile the lack of parking areas results in cars having to
turn back or park incorrectly on the streets prompting further traffic jams. Although the
number of metro commuters is high, the metro only reaches a limited number of places
in the city. Also, public transport buses are few in number and outdated, thus prompting
people to use other buses and taxis to get by. However, the latter generally need to be
cleaner, safer and be able to better load and unload passengers. There are also few
areas for pedestrians to cross the streets and street peddlers often occupy these areas
and the sidewalks, making things worse. Moreover, there are many problems related to
the construction of roads where there are few street lights, stop signs and crossroads;
people also find awful corners and U-turns that are either very sharp turns or are very
narrow thus not allowing drivers to make smooth U-turns. Drivers also behave badly
and irresponsibly added to the poor implementation of traffic laws, which causes the
public to undermine traffic regulations. Economic costs incurred due to traffic
congestion in Cairo may reach almost a 4% loss from the Egypt's annual gross domestic
product (GDP). Not only are but also these economic costs limited to an increase in the
amount of time taken to get from one place to another, but also include a rise in costs
due to excessive fuel consumption as well as having negative effects on people's health
due to air pollution, accidents and economic production effects. Combined, the
economic cost resulting from traffic congestion reaches about 4% of Egypt's GDP. As
shown in figure (2).
6|Page
Figure (2)
Problem to be solved
The challenge we are addressing this semester is the public
health.
Public health:
“Communities and countries and ultimately the world are only as strong as the
health of their populations.” If you thought about this quote, you will find how it is
very true, and we can see today. There is big relation between countries GDP and
income and their population’s. Because as the health deceases the productivity of
the population decreases leading to lower incomes and works. Vice versa.as the
income the country decreases the percentage of unhealthy people and sever deaths
increases as shown in figure (3), (4).
7|Page
Figure (3)
Figure (4)
But what is exactly the public health?
Public health generally is the health of the population holistically, especially as the
subject of government regulation and support. In Egypt, Medical care offered by the
public health insurance system is generally of poor quality. Government hospitals
are known to be rife with negligence and generally provide minimal care, in
addition, Healthcare expenditures range from 3 percent to 5 percent of GDP. And
unfortunately, with this low care, accidents and disease victims are increasing daily
with no noticeable change in the public health care.
Worthy to say that that no communicable diseases (NCDs), including cardiovascular
diseases, diabetes, cancer, and chronic respiratory diseases, are currently the
leading national cause of death in Egypt. NCDs are estimated to account for 82% of
all deaths in Egypt and 67% of premature deaths. These conditions which are very
common in Egypt aren’t fully treated yet. Figure (5) shows the percentage of
increases deaths due to the commonest diseases.
8|Page
Figure (5)
But disease is not the only factor of deaths or lowered health in Egypt when it comes
to the public health, the daily accidents plays their role and this problem is mainly
related to traffic in Egypt and high speeds people drive with in some roads and not
following the rules. Egypt loses about 12 000 lives due to road traffic crashes every
year. It has a road traffic fatality rate of 42 deaths per 100 000 population. Majority
(48%) of those killed are passengers of four-wheelers though pedestrians also
constitute a significant proportion (35%) of these fatalities. According the Egyptian
ambulance system, the ambulance orders per day increase recently with 20%.in case
of accidents Egypt’s ambulance is really doing their job well but the problem here is
these 3 factors (these factors are our main focus in the application):
1-ambulance can be late at most of the times, due to the high traffic gam especially
if the patient is very far and keep mind that the time of treatment is as important as
the treatment (a delay may lead to death in some times, in heart attacks for
example)
2-Actions of the lack experience people which sometimes to sever complications
9|Page
How is this?
in Egypt, if someone fainted or anything people instantly give him a cup of water and
sugar and may give him any drug with not knowing the condition, they may also
carry him in a wrong way and unfortunately although it sounds simple as this seems,
it is not .in some cases id someone was hit in his back a wrong way of carrying can
cut his spinal cord. This actually happened before
3-low awareness of the first aids and what to do in the common cases which can
rescue people’s life or let it go at second.
Ex: in heart attacks as shown in figure (6):
1- Try to keep the patient calm and prevent him from
moving
2- If his breathing suddenly stops, instantly do CPR for
him to refresh his heart and make it beat
Figure (6)
EX: In case fire is catching someone as shown in figure (7):
1- Never try to atop the fire using water as it will just make a shock to the body and
patient may die
2- Never let him run as oxygen in air is making the fire worse
3- Instead make him/ her roll on the floor and it will be okay and the fire will stop
➢ In addition to the simple aids like the normal burns
Figure (7)
10 | P a g e
Public health issues in Egypt:
1234-
Low money spent in the health care
Disease and availability of their risk factors
Pollution
Low qualified hospitals and serves.
1) Low money spent in the health care:
A county’s GDP is Gross Domestic Product (GDP) is the monetary value of all
finished goods and services made within a country during a specific
period. GDP provides an economic snapshot of a country, used to estimate the size
of an economy and growth rate. As we said before Egypt spend from 3% to 5.6%
according to WHO (world health organization) of its GDP. Worthy to say that Egypt is
not a poor country tough as shown in the figure (8).
Figure (8)
11 | P a g e
2) Disease and availability of their risk factors:
We mentioned before (previous pages) how Egypt is suffers from many
diseases and how they contribute in most of the deaths (87%). But the
problem is not only the disease, but also the wife availability of their
commonest risk factors, according to WHO and ministry of population
survey:
•
24% prevalence of smoking and a growing use of shisha tobacco.
•
one of the most overweight populations in the world, with 66% of women overweight
and 42% obese and almost three quarters of the population not involved in vigorous
activity.
•
17% prevalence of diabetes.
•
40% prevalence of hypertension. Egyptians have an average daily salt intake of 9 grams,
nearly double the recommended allowance.
Recognizing the significant burden and continued negative impact NCDs
(Noncommunicable diseases (NCDs), including cardiovascular diseases, diabetes,
cancer, and chronic respiratory diseases,) can have on social and economic
development, the government of Egypt has made positive progress through the
establishment of an NCD Unit within the MoHP.
3) Pollution:
Pollution is playing a big role in raising the health issues in Egypt.
Through all its types. The main types of pollution in Egypt are:
➢ Air pollution
➢ Water pollution
12 | P a g e
• Air pollution:
This kind of pollution is directly related to the lower
respiratory system infractions which contribute with
23% of dieses rate in Egypt 2017.in addition, over
43000 Egyptian died from air pollution, WHO said in
its report. The common disease in Egypt to the lower
the acute lower respiratory, chronic obstructive
pulmonary, strokes and ischemic heart dieses and
Figure (9)
lung cancer, which if you looked up in figure (5), you will find them taking
the 1st ,2nd and 5th place among the most common patients killers and infectors in Egypt
recently. Air pollution in Egypt is mainly due to the small particles of dust and smoke
coming out from industries, vehicles especially the public ones which are very common
and open-air waste burning which is also very common.one additional reason is the
windblown dust from aired areas which are about 96% of Egypt’s total area. Suspended
dust (measured as PM10 and TSP) can be seen to be a major air pollution problem in
Egypt. PM10 concentrations
can exceed daily average
concentrations during 98%
of the measurement period.
The Exceedances are highest
in industrial areas. On the
other hand, it seems that the
natural background of
PM10 in Egypt may be close
to or around the Air Quality
Limit value. In addition to
particles, also SO2 in urban
areas and in industrial areas,
as well as NO2 and CO in the
streets may exceed the Air
Quality Limit value.
Figure (10)
Figure (9) shows the percentage of exceedance of PM10 to air quality limit value of
Egypt during 2009. Figure (10) shows the death rates due to air pollution in Egypt.
13 | P a g e
• Water pollution:
Water pollution is a severe problem in Egypt, it contributes in many diseases
especially parasitic disease like Bilharzia. In addition, untreated drinking water and
fecal contamination of water is the major cause of diarrhea which is the 14 th major
disease-causing death in Egypt as shown in figure (5).
4) Low qualified hospitals:
It is known that Medical care offered by the public health insurance system is generally of
poor quality. Government hospitals are known to be rife with negligence and generally
provide minimal care. But, is this true?
Unfortunately yes, most of Egypt public hospitals are so bad and low qualified, this is
mainly due to the bad management and the very low amount of money spent to
improve the devices and equipment needed.in contrast the private hospitals and the
free ones (charity) in Egypt are very well like Magdy Yakoub’s hospital, 57357 and
private hospitals and few public ones.
but as poverty is very wide common Egypt as it was said by State-owned Central Agency
for Public Mobilization and Statistics (CAMPAS) (2019) that who live in extreme poverty,
rose to 32.5 in 2018 from 27.8 percent in 2015, with an increase of 4.7 percent, mentioned
that the highest percentage of poverty among 99 million Egyptians was recorded in Upper
Egypt, mainly in Assuit and Sohag, with 66.7 percent and 59.6 percent respectively, the
survey revealed, adding that poverty rates ranged from 80 to 100 percent in about 46
villages in these two governorates.
Anyway, what happens is that mostly the public hospitals are the used ones, and this is the
serves they give:
(Kidney dialysis center in Helwan):
Figure (11)
14 | P a g e
Figure (12)
❖
The common problem facing the public hospitals in
Egypt due to the low quality:
•
•
Pollution every where
Very old beds and equipment, even hospitals in some regions often lack the
equipment and means to treat the cases they receive and so transfer them to
this hospital
Some basic devices are not even available.
The lack of security in the hospitals also means that thugs bring altercations into
the hospital
A lot of doctors get infected while treating patients due to the low level of
infection prevention
•
•
•
➢ These factors result in loss of life.
Here are some points the doctors mentioned in as survey made by English
Aharam Corporation in Egypt:
1) They often have to transfer patients in critical condition to other hospitals
because of lack of space in the ICU,
2) “Hospitals do not lack space but basic equipment is sparse too”
3) Dr. Khaled Abdel-Rahman, the coordinator of the doctor’s strike in Nile Delta
governorate Dakahliya, said that he often has to bring his own thermometer and
blood pressure units to work because there are not any available in the hospital.
4) “In incident in the Upper Egyptian governorate of Minya, a man broke into an
operating room and stole the kidney of the patient.” (low security)
5) “The low income often forces doctors to seek work in private institutions
alongside their work in public hospitals. However, balancing two jobs is not easy
and doctors begin to make mistakes”
6) “This oversight is the reason why many patients face medical complications and
why Egypt has the highest rates of Hepatitis C in the world”
7) “Now that millions of Egyptians live with the virus, doctors dealing with patients
end up getting infected too”
8) “I remember the man who lost three children because they desperately needed
to be in the ICU and all three beds were taken”
15 | P a g e
✓ But the great news is that ministry of public is taking action toward these
problems trying to improve the quality and provide the needed devices & places.
Why did we choose his challenge to work on?
➢ To rescue people lives as much as we can.
➢ Because public health of population is directly related to the country’s
development and productivity.
➢ Raising the awareness of people about what they can do in emergency cases to
take a positive action instead of watching or giving wrong instructions.
➢ Help in improving public health by helping the patients.
Research
Researched topics about the problems:
1234-
Quality of public hospitals
Public health in Egypt
What causes the most deaths?
Noncommunicable diseases
Quality of the public hospitals:
It was found that the quality often hospitals in Egypt and the serves is very low. Also,
it was found that the only about 3% of Egypt’s GDP is used to improve Egypt’s public
health which is very low. It was found also that some hospitals do not even have
beds, some doesn’t have the basic devices and other are suffering from the
pollution.
Public health in Egypt:
It was found that Egypt’s public health is getting worse over the years. According to
WHO (World Health Organization), 87% of Egypt’s deaths are due to
16 | P a g e
noncommunicable diseases (NCD) like cancer, diabetes, heart attack and strokes.
(Noncommunicable diseases, n.d.). A lot of factors caused this situation. These
factors include:
•
•
•
Increasing rates of water and air pollution
increasing rates of deaths
low qualified medical serves
Also , there are some factors like the usual ambulance delay which is mainly due to
traffic jams and the increment in ambulance requests (increased by 25% in the last
year according to an Egyptian ambulance agent) and finally the lack of awareness of
first aids and common risk factors like obesity and smoking (Chronic Disease Risk
Factors, 2015).
What causes the deaths?
It was found that 87% of deaths in Egypt are due to the disease, in addition it was
found that 150 in each 1000 die in accidents.
4-Noncommunicable diseases (NCDs), including cardiovascular diseases, diabetes,
cancer, and chronic respiratory diseases, are currently the leading national cause of
death in Egypt. NCDs are estimated to account for 82% of all deaths in Egypt and
67% of premature deaths.
The 2011/12 STEPwise survey, conducted by the Ministry of Health and Population,
in collaboration with WHO, revealed a significantly high prevalence of risk factors for
NCDs among the adult population, including:
•
a 24% prevalence of smoking and a growing use of tobacco.
•
one of the most overweight populations in the world, with 66% of women
overweight and 42% obese and almost three quarters of the population not
involved in vigorous activity.
•
a 17% prevalence of diabetes.
•
a 40% prevalence of hypertension. Egyptians have an average daily salt intake of
9 grams, nearly double the recommended allowance.
Breitling Emergency II watch as a prior solution:
17 | P a g e
It is the first-ever made watch with a dual-frequency locator beacon. It was made
mainly for pilots, sailors, and other adventurers so that if they were separated and
someone was in danger, he can click on the button on the watch which will instantly
send a notification from the watch to another device which acts as a controller with
the exact place. It includes a built-in personal locator beacon (PLB) and its dual
frequency transmitter is compliant with the specifications of the Cospas-Sarsat
international satellite alert system (pros). The only disadvantage about it is the fact
that it is not widely used, in addition this, it is so expensive which makes it not
available for the public use. (Szondy, 2013)
Researched topics about the solution:
123456-
Chronic Disease Risk Factors
Software Development Life Cycle (SDLC)
Android studio features and how to deal with it.
Near Field Communication (NFC) technology.
Java language and its functions.
Basic first aid instructions.
Chronic Disease Risk Factors
What is meant by Risk Factor?
Something that increases the chance of developing a disease. Being aware of risk
factors protects you from many diseases, such as, cancer, diabetes, cardiovascular
diseases and chronic respiratory which are the leading national causes of death in
Egypt. These diseases are known as Noncommunicable diseases (NCDs) which are
estimated to account for 82% of all deaths in Egypt and 67% of premature deaths.
The most common Risk Factors?
• Smoking
• the harmful use of alcohol
• raised blood pressure (or hypertension)
• physical inactivity
18 | P a g e
• raised cholesterol
• overweight/obesity
• unhealthy diet
• raised blood glucose
• being exposed to radiation or certain chemicals
• infection with certain viruses or bacteria
• certain genetic changes
• History of family diseases
Figure (13)
Software Development Life Cycle (SDLC):
SDLC is a process followed for a software project, within a software organization. It
consists of a detailed plan describing how to develop, maintain, replace and alter or
enhance specific software. The life cycle defines an agile methodology for improving
the quality of software and the overall development process.
19 | P a g e
Figure (14) is a graphical representation of the various stages of a typical SDLC.
Figure (14)
Android studio features and how to deal with it:
Android Studio is the official integrated development environment (IDE) for Android
application development. It is based on the IntelliJ IDEA, a Java integrated development
environment for software, and incorporates its code editing and developer tools.
To support application development within the Android operating system, Android
Studio uses a Gradle-based build system, emulator, code templates, and Github
integration. Every project in Android Studio has one or more modalities with source
code and resource files. These modalities include Android app modules, Library
modules, and Google App Engine modules.
Android Studio uses an Instant Push feature to push code and resource changes to a
running application. A code editor assists the developer with writing code and offering
code completion, refraction, and analysis. Applications built in Android Studio are then
compiled into the APK format for submission to the Google Play Store.
20 | P a g e
Android Studio is available for Mac, Windows, and Linux desktop platforms. It replaced
Eclipse Android Development Tools (ADT) as the primary IDE for Android application
development. Android Studio and the Software Development Kit can be downloaded
directly from Google.
Near Field Communication (NFC) technology:
Near Field Communication (NFC) technology is a standards-based wireless
communication technology that allows data to be exchanged between devices that
are a few centimeters apart. NFC operates at 13.56 MHz and transfers data at up to
424 Kbits/seconds.
NFC is distinguished by its intuitive interface and its ability to enable largely
proprietary wireless networking platforms to interoperate in a seamless manner.
NFC-enabled mobile applications include:
•
•
•
•
Making payments with a wave or a touch anywhere contactless card readers
have been deployed
Reading information and “picking up” special offers, coupons and discounts from
smart posters or smart billboards
Storing tickets to access transportation gates, parking garages or get into events
Storing personal information that will allow secure building access
Figure (15)
21 | P a g e
Java language and its functions:
Java is an object-oriented, class-based, concurrent, secured and general-purpose
computer-programming language. It is a widely used robust technology.
Java is a programming language and a platform. Java is a high level, robust, objectoriented and secure programming language.
Platform: Any hardware or software environment in which a program runs, is known
as a platform. Since Java has a runtime environment (JRE) and API, it is called a
platform.
Figure (16)
Basic First aid instructions:
First aid is the first and immediate assistance given to any person suffering from
either a minor or serious illness or injury, with care provided to preserve life,
prevent the condition from worsening, or to promote recovery. These diseases
including allergies, sprains, asthma and heart attack.
22 | P a g e
Solutions already tried
Of course we are not the first people to think about this problem and how can
contribute in solving them by exploitation technology for people’s health so
that we can improve the technology in Egypt & contribute in people’s health
improvement. Here are some already tried solutions:
1. Medical applications for quick drug delivery at any time:
This kind of applications are very available and applicable in Egypt. The patient sends
the doctor’s prescription to the application they read it and bring the drugs on time
and what it makes them special is their 24 hours availability and speed (strengths).
This benefits especially when a patient needs a drug at the middle of night
surprisingly.
✓ Many apps are available from this kind, the famous ones in Egypt:
• Yodawy-pharmacy delivery which us available and rated with 4.8/5 (fig 17)
• 3elgai, available, allow you to search for products with their names or symptoms
and rated with 4.2 /5. Figure ( 18)
Figure (18)
Figure (17)
➢ Negatives:
Of course these apps are very useful but also they don’t make an obvious
difference the problem we are addressing (unlike our application)
23 | P a g e
2. Medical apps that connects people with doctors
Other kind of apps is those that connects people with professional doctors using
phones and video calls or chats for high speed diagnose, medical consultation and to
save people’s time and money (strengths) .Although they are not widely used in
Egypt but they are useful and available.
The most famous 2 applications from these kinds in Egypt are:
• Estshara, 4.3/5, it allows you to get online consultations with professionals. Fig
19
• Altibbi, 4.1/5, which allows to talk to doctors and follow with same doctor if you
wanted. Fig 20
Figure (19)
Figure (20)
➢ Negatives:
These applications are very useful also, but the negative point is that there
is no guarantee that the doctor you are talking to is a professional (we
solved this point in our app). They are not specialized in emergence (the
focus of our application) cases which makes them don’t usually answer
quickly according to people comments, in addition, they are not fully free
and the worse that they don’t notify you with this before you enter your
phone number (according to people ratings).
24 | P a g e
3. First aids apps:
First aids apps are available too. These applications tells you what to do in
some emergence cases like first degree burns for example making them very
important. They are the most used kind among the kinds of medical apps as
they are usually trusted and due to their big importance.
A very popular global app which works for this purpose is First Aid-IFRC
(logo is shown in figure 21), this application do not only support simple
situations like burns or bleeding but also the sever ones like Asthma attacks,
allergies and heart attacks. In addition, this application is known for its
accuracy and how it gives instructions to the point and in a very simple way,
so any one could help and understand and easily.In addition it supports
Figure (21)
Figure (22)
videos to show the steps exactly as shown in Figure
22(not just photos and text).
➢ There are no negatives to this application.
25 | P a g e
4. The breitling watch
the Emergency watch or the ‘breitling emergency watch’ .it is
the first-ever made watch with a dual-frequency locator
beacon.it was made mainly for pilots, sailors, and other
adventurers.so that if they divided and someone was in
danger he can click on the button on the watch which will
instantly send notification from the watch to other device
which act as controller with the exact place. It includes a builtin personal locator beacon (PLB) and its dual frequency
transmitter which is compliant with the specifications of the
Cospas-Sarsat international satellite alert system (pros).
Figure (23)
The Emergency II is the developed version of the earlier Breitling Emergency,
which only transmits on a single analog frequency. It’s intended for survival
and critical emergency situations that can happen without a second's
warning, such as plane crashes, ship sinkings, mountaineering accidents and
the sort of potentially fatal mishaps that can occur in deserts, jungles and ice
caps around the world.
The Emergency II puts out signals alternately on two frequencies. The first is
a digital signal on 406 MHz that goes out for 0.44 seconds every 50 seconds,
and the second is an analog signal on 121.5 MHz lasting 0.75 seconds every
2.25 seconds. This dual frequency isn’t just to be thorough. It’s a strategy that
not only helps to ensure that the emergency signal reaches the search and
rescue teams, but also helps them to zero in on the target
26 | P a g e
Its structure:
✓ This weight comes from not only the massive titanium case, but also
because that case holds a PLB Category 2 beacon micro-transmitter. This
in itself required a lot of R&D to squeeze the electronics into even a watch
the size of a doorstop. It also has to work for 24 hours, so that means a
bespoke battery that can not only punch out enough power for a satellite
to pick up, but that can also be recharged regularly, so that power will
actually be there in an emergency.
It’s all part of the international Cospas-Sarsat system, which has saved
26,000 lives since 1985. It’s based on a network of satellites in low-altitude
earth orbit (LEOSAR) and in geostationary orbit (GEOSAR) along with ground
stations and coordinating centers around the world. The satellites work on
406 MHz, which, theoretically, should be all that’s needed to find those in
distress, since the Cospas-Sarsat system doesn’t listen to other frequencies.
However, many search and rescue systems use the older 121.5 MHz and it’s
still very useful for making those last-minute location fixes before visual
contact is made. For this reason, dual-frequency transmitters are preferred.
The other half of the equation is the integrated
antenna system. Designed to be used by
someone who may be hanging upside down
from a rock wall with broken bones, it’s made
in two sections so that the transmitter can
select between part or all of the antenna when
switching between frequencies. Turning on the
beacon is a simple matter of unscrewing the
right-hand antenna cover. This also unscrews
the left-hand cover. From there, pulling the
antennae free and extending them activates
the beacon, and the signal starts going out.
.
27 | P a g e
Figure (24)
Negatives:
a) So expensive making it not allowed for the public use as the Emergency II
sells for about US$17,000 or, if you want a titanium bracelet instead of a
rubber strap, about US$18,600.
b) Made especially for some people like sailors, adventurers and pilots
making it hard to suit with the public use.
c) Part of the battery’s problem is that the Emergency II works on two
different frequencies. These mean different power demands ranging from
30 to 3000 mW, hence the need for a rechargeable lithium-ion battery
separate from the watch movement’s silver oxide battery.
d) Not widely available .As it is available in certain countries only.
28 | P a g e
Chapter 2
II. Generating and Defending a Solution
29 | P a g e
Design requirements
(Characteristics would a successful solution or application
have)
▪ Capacity.
▪ Responsiveness.
▪ Ability to modify to work in other spoken languages.
▪ Raising the awareness of a community due to using the app.
▪ The percentage of people taking action.
Capacity
It is how many and how big are the things the application can work with. This design
requirement will be met if the application made can work with big database which
provide comfortable using to the user that work with the application.
Responsiveness
It is the time the application needs to take action and it can be also the difference in
speed to take action in our real life with and without the application This can be met
when the application takes action in suitable time for example if application takes 5
minutes to take action like opening the application, it haven’t met this design
requirement because it have to take action quickly.
Ability to modify to work in other spoken languages
It is the ability of application to be turned into many languages and its very important
because it provide using the application to people from many countries. This will be
met when many people from other countries use the application.
Raising the awareness of a community due to using the app.
The awareness is the knowledge and the understanding of something happens or
exists. This design requirement can be met when the application or solution increases
the information users have, such as first aid instructions. It also can be measured
when a survey is made and a huge number of people, doctors and so on say this
solution will raise the awareness among people.
30 | P a g e
The percentage of people taking action
This design requirement represents the amount of people taking action and the action
may be learning or helping other people in anything. As a result, if the solution
increases percentage of volunteers that may help in many categories or increase the
ability to learn or increases percentage of learners, the design requirement will be
met.
Our design requirements are:
▪
Raising the awareness.
▪ The responsiveness of the application.
Raising the awareness:
This design requirement was chosen because of the lack of awareness about basic
first aid instructions and common risk factors among people. In order to meet this
design requirement, two buttons were added in the application one is called “first aid
instructions” which includes the instructions of the first aid in the most emergency
cases, such as heart attack and asthma. The other button is called “Be aware!” which
contains the most common risk factors for the most chronic and severe diseases such
as cancer and diabetes.
Then, two surveys were made to ensure that the application could raise the awareness
of the people. One of them was made among people and the result was that 100% of
them said the application would raise the awareness. The other survey was made
among 10 emergency doctors and the results were that 60% of them said the
application is excellent in raising the awareness and 40% said the application is good
in raising it.
Responsiveness
This design requirement was chosen because of the time that the ambulance takes
to reach the emergency case which is 30:40 minutes (according to Egyptian
ambulance agent). In contrast, the patients could be rescued in about 15
minutes while using the application. He code was made in a way that makes
the application fast and ensure that the responsiveness of it is high. This was
applied as the application proved to show quick response for the user’s
request making a fast connection between the user and the doctor for help.
This design requirement was met by testing the delay time of the application
to see if it works sufficiently, the application takes only 3 seconds to respond.
This is a proof of its high responsiveness.
31 | P a g e
Selection of solution
In brief, the public health is such a severe problem affecting
Egypt’s population really hard, in this semester we focus on 2
parts of this problem which are:
✓ Emergency cases to save more people and try to lower the
deaths and complications as possible
✓ Raising awareness to avoid sever disease like cancer or
diabetes
✓ Raising awareness of people to learn how to deal with several
cases in order to lower the probable complications
The solution made was an application (called “Save!”) that allows:
1-follwing up with professional doctors.
2-in emergency cases ,using the button “emergency” , the app
starts detecting the place of the nearest doctor to save the patient
until the ambulance come (Usually takes 30 min-45 min to arrive).
3-provides the user with the basic first aid instruction for several
cases like heart attacks, fainting, burns and strokes using the
button “First aid instruction”
4-provides the user with knowledge about the common risk factors
(ex: obesity and smoking) for the commonest dangerous disease.
We will talk in details about each part of the app and why we
choose it but firstly we will talk about the tools used in building the
application.
32 | P a g e
Building an application
To build an application you need to follow these steps:
1) Make a scenario
2) Choose integrated developing environment (IDE)
3) Choose the programming language you will use
4) Design the app’s interface using XML
5) Write the codes and connect them to their buttons
6) Run the application
7) Test the application and apply debugging
➢ The first 3 steps will be discussed in the selection of the
solution below, while the other 4 steps will be discussed
in the selection of prototype.
I.
Figure (25)
Making a scenario
The first step to build an application is to make a scenario. The scenario serves as the
initial vision for the application that the programmer uses to construct the
application. The app’s scenario must include the interface, all the subpages, all the
buttons and their functions. It can be made on a paper or using illustrator or
Photoshop. In our project, we made the scenario after making the logo using
illustrator (shown in figure 25) the scenario was made at first using a paper, in which
we included the interface, its buttons and their functions. Then we modified the
scenario and made it using Photoshop to make a clearer vision. The final scenario is
shown in figure 26. As mentioned, the scenario is just the initial vision for the whole
application, meaning that adding modifications (extra button, changing colors, etc...)
is allowed.
33 | P a g e
Figure (26)
II.
Choosing the IDE
An integrated development environment (IDE) is a software set that combines the
basic tools required to write and test software.
For an application to be made, a developer needs some tools like: libraries, codes,
compilers and testing platforms. Without an IDE, he/she will have to deal with these
tools separately makes it harder to build an application. An IDE brings many of those
development-related tools together as a single framework, application or service. The
integrated toolset is designed to simplify software development and can identify and
decreasing the probability coding mistakes and typos. Some IDEs are open source
while others are closed sources.
Open sources:
•
•
•
•
Refers to software that uses the code freely available on internet. The code can
be copied, modified or deleted by other users and organizations. As result of being
open to public, it is constantly updates, improves and expands as more people can
work on its development, and also Open source software offers an ability to
change the source code without any restrictions
Free software
Not fully secure but automatically fixed any error or bug found
Ex: Android studio
34 | P a g e
Closed sources:
•
•
The exact opposite to open source and means that the software uses the proprietary
and closely guarded code. Only the original authors of software can access, copy,
and alter that software. In a case with closed source software, you are not
purchasing the software, but only pay to use it.it doesn’t offer the ability to access
the source code, meaning
Paid software
•
More secure
Benefits of IDE:
➢ Improve the productivity of software developers due to the fast setup and
standardization across tools.
➢ Without an IDE, developers spend time deciding what tools to use for various
tasks, configuring the tools and learning how to use them. Many or even all of
the necessary development-test tools are included in one integrated
development environment.
➢ IDEs are also designed with all their tools under one user interface. An IDE can
standardize the development process by organizing the necessary features for
software development in the UI.
In our application we choose the android studio to work with as our IDE
to build the application.
Android studio:
Android studio is an official open source integrated
development environment for android app development, it is
one of the top of Intel’s code editors and developer tool as it
offers so many features that enhances the developer’s
productivity when building android apps. Worthy to say that
android studio supports only 2 programming languages which
are kotlin and java
•
A flexible Gradle-based build system
•
A fast and feature-rich emulator
35 | P a g e
Figure (27)
•
A unified environment where you can develop for all Android devices
•
Apply Changes to the code and resource changes to your running app without restarting
your app
•
Code templates and GitHub integration to help you build common app features and
import sample code
•
Extensive testing tools and frameworks in addition to the visual test.
•
Lint tools to catch performance, usability, version compatibility, and other problems
•
It supports C++ and NDK
•
easy to integrate Google Cloud Messaging and App Engine
•
supports debugging which searches for any errors in the code and pick them to the user
automatically in an accurate way for faster performance
Project structure in android studio:
Each single project in the android studio contains one or more module with source
code files .The types of these codes include:
1. Android application module
2. Library module
3. Google app engine modules
36 | P a g e
Android Studio shows your project files in the Android
project view, as shown in figure 28. This view is organized by
modules to offer the required quick access to your project's
key source files.
All the build files are visible at the top level under Gradle
Scripts and each app module contains these folders:
•
manifests: Contains the AndroidManifest.xml file.
•
Java: Contains the Java source code files, including JUnit test
code.
•
res: Contains all non-code resources, such as XML layouts, UI
strings, and bitmap images.
The Android project structure on disk is different of course
Figure (28)
from this flattened representation. To see the actual file
structure of the project, select Project from the Project dropdown (in figure 29, it is
shown as Android).
You can also customize the view of the project files to focus on specific aspects of
your app development. For example, selecting the Problems view of your project
will only let the links to
Figure (29)
The source files containing any recognized coding and syntax errors, such as a
missing XML element closing tag in a layout file.
37 | P a g e
The user interface in the android studio:
Figure (30)
1. The toolbar lets carrying out a wide range of actions, including running the
application and launching Android tools.
2. The navigation bar helps in navigation through the project and opening files for
editing. It provides a more compact view of the structure visible in
the Project window.
38 | P a g e
3. The editor window is where the user can create and modify code. Depending on
the current file type, the editor can change. For example, when viewing a layout
file, the editor shows the Layout Editor.
4. The tool window bar runs around the outside of the IDE window and contains the
buttons that allow expanding or collapsing individual tool windows.
5. The tool windows give the user the required access to specific tasks like project
management, search, version control, and more. You can expand them and collapse
them.
6. The status bar shows the status of your project and the IDE itself, as well as any
warnings or messages.
You can organize the main window to give yourself more screen space by hiding or
moving toolbars and tool windows. You can also use keyboard shortcuts to access
most IDE features.
At any time, the user is allowed to search across the source code, databases, actions,
elements of the user interface, and so on, by double-pressing the Shift key, or
clicking the magnifying glass in the upper right-hand corner of the Android Studio
window. This can be very useful if, for example, it is tried to locate a particular IDE
action that was forgotten how to trigger.
➢ The figure below is the user interface of our application.
Figure (31)
39 | P a g e
Choose the programming language you will use
In order to make an application, codes are required.so we needed to choose a
programming language to write the needed codes for t eh application. As we choose
the android studio of work with, we did not have many options. As it only supports
kotlin and java, finally we chose the java instead of the kotlin for the reasons below.
Java:
First of all, java is a programming language and computing platform first released by
sun microsystems in 1995.It is known for its fast, secure and reliable. Java is mostly
used for standalone applications or back-end development. Java was designed by
James Gosling and its major implementation was OpenJDK. Java is the primary
choice for most of the developers when it comes to Android application
development as Android itself is written in Java.it can be run ios, androids and
websites. In addition, it is an open source and supported by the android studio
Kotlin
Kotlin is a new programming language developed by programmers from IDE Jet
Brains which handles some of the modern features to it. It is an open-source
language. Kotlin is also a statically typed programming language like Java, C++, which
based on JVM (Java Virtual Machine) but it can be compiled to JavaScript , Android
and Native also for building code and run on Ios . Kotlin is fully compatible with
existing Java stacks with a smooth learning curve. Switching from Java to Kotlin is
very easy as we just need to install a Plugin. During the Google I/O keynote, it
announced that they making Kotlin an officially supported language for Android
application development.
40 | P a g e
What is the difference between java
and kotlin?
•
•
•
•
In Kotlin, we don’t have checked exceptions,
which is a disadvantage as it leads to error pronecode whereas Java has support for checked
exceptions by which we can perform error
handling.
Java compilation time is 15-20% faster than Kotlin
compilation time but in perspective of
incremental build compilation, Kotlin will also
take same compilation time as Java.
Kotlin has the support of type inference which
means we don’t need to specify the data type of
variable explicitly whereas in Java we need to
specify explicitly.
Java is easier for beginner compared to the kotlin
due to its repeated functions.
There is a lot many other difference (some are shown
in figure 32) but all of them leads to the same results
which is that the java has more advantage over the
kotlin.
Figure (32)
41 | P a g e
How will the app solve the problem?
Two surveys were made at first to figure out the main reason behind the general
carelessness with emergency cases in Egypt which leads to high death rates in
addition to severe complications if the treatment was applied for the patient on
time. We worked on this point especially as we fund that rates of main causing fatal
emergency like strokes or heart attacks increased notably recently .It is estimated
that the rates of heart attacks in Egypt increase with 35.9% and strokes with 25.7%
in the last 3 years.
As mentioned before two surveys were made to determine the main reason behind
carelessness with emergency cases. The first survey was made on Google forms for
people. The results are shown in the figure 33 below.
Figure (33)
42 | P a g e
Another survey was made on 10 emergency doctors to ask them same question, we
chose the emergency doors especially for this survey due to their experience in this
field. The results for the question is shown in figure 34
.
Figure (34)
From these results we deduced that the major reason is the delay of the ambulance,
so we decided to make an application that fastens this process, so we made an
application that connect the user with nearest doctor available which may be beside
him but they simply do not know. For this to happen, the application supports GPS.
The app specifically works as following, in emergency cases the user beside the
patient will press emergency button which will give him 4 options (will be shown in
next chapter) as:
• First aid instruction
• Scan NFC
• Be aware!
• Send location
The user can use the button “send location” to enter his location which will be sent
immediately to the admin, accordingly the admin will use GPS to see the nearest
doctor to this point and send him the patient location to come immediately, when
tested, this process took from10-15 minutes for the doctor to arrive if the 2 places
are far from each other. Unlike the ambulance, which takes from 30 -45 minutes and
sometimes more according to the emergency doctors and the ambulance agent in
Tanta when we asked them.
Trying to achieve high speed, we decided to make an NFC card which stores the
medical history if the user of the app so that in the emergency cases the ambulance
or the doctor or any user can scan it and know immediately his medical history for
43 | P a g e
faster medical consult. For example if someone fainted in the street suddenly. By
scanning the NFC card the user will be able to identify whether this man has
hypertension or diabetes or anything else. So if it was found that this patient suffers
from diabetes, they will immediately ring him the needed drug. This allows more
accurate
consults, minimizes the causes behind the case and protects the patient from the
probable wrong instruction of the lack experienced people which consequently
allows faster saving.
How will the user get the card?
There will be a tap in the app to tell the user the places where he can find it.it costs
only 15 L.E which also makes it a practical solution suitable for the public use.
Because at sometimes the cases are very critical that the first aid must be applied
until any the doctor or the emergency doctor arrive, a tap called “first aid
instruction” is added. This tap will include the first aid instruction for several
emergency cases in very simple way in addition to the instructions that must be
avoided in such a case. With a brief definition for the case. This includes the first aid
of:
❖ Heart attack
❖ Bleeding
❖ 1st degree burns
❖ 3rd degree burns
❖ Asthma attack
❖ Allergies
❖ Strokes
By this we made the app more effective as we fasten the process of treatment,
lower the probable complications and lowering the deaths in such cases.
“Prevention is better than cure” .This is one of the most famous and right quotes.
We put this in our consideration while making the application. We wanted to make
something to make the people
more aware with the disease case so that they can avoid them which will accordingly
improve eh public health of the individual and the population. In order to achieve
this we added a button in the application called “BE aware!” this button includes the
44 | P a g e
major common risk factor behind a lot of sever, fatal and chronic disease like cancer
or diabetes. These risk factors include:
• the harmful use of alcohol
• raised blood pressure (or hypertension)
• physical inactivity
• raised cholesterol
• overweight/obesity
• unhealthy diet
• raised blood glucose
• being exposed to radiation or certain chemicals
• infection with certain viruses or bacteria
• certain genetic changes
• History of family diseases
Thus, the application helps in saving patient is emergency cases as fast as we could
until the ambulance arrive whether by ordering the nearest doctors, calling him (as
his data will be available) or by applying the first aid. In addition the app help in
raising the awareness of pole with the famous common risk factors.
Selection of prototype
Android Studio, Java language and Firebase application were used in constructing
the prototype. The prototype is an application to help people in emergency cases. It
has many functions such as knowing the medical information about the patient
using NFC which is a card used to store information and call it after scanning this
card, allowing the patients to follow up with the needed doctors and informing
about first aid instructions and common risk factors which are factors that increase
the chance of developing a disease. Furthermore, the application could be used to
send the location of the patients by the user to the admin, who consequently uses
the data base to detect the nearest doctor and sends the patient’s location to him in
emergency cases. Android Studio was used as an integrated development
environment to design the interface of the application using XML file where the
design of buttons, texts and photos were designed. This environment was also used
to write the code using the Java language. In order for any object in the interface to
be interactive, it must be connected by java code. For the application to apply its
functions correctly, each patient must have an NFC card which when a doctor scan
45 | P a g e
it, the medical history of the patient appears. The mobile using the application
should have the NFC property in it.
Constructing the prototype:
XML file:
First of all, in order to make any
application the interface should be
constructed first. In designing the
interface, we used different objects, such
as buttons, textboxes, images and linear
layouts. We garbed them from “palette”
and modified their properties such as,
size, color, hint, onClick and id, from
“Attributes” in the design file of XML or
by modifying the code in the text file of
the XML as shown in figure (35)
Figure (35)
Java file:
In order to make any object response and do its job, a lot of functions and events were
used to connect between the java file and the objects in XML file.
46 | P a g e
The main features in the application:
1- The page of “sign_in_Fragenmt.xml” shown in figure (36) is the first
page appears in the application
Figure (36)
47 | P a g e
The code of the main functions of this page:
@Override
public void onActivityCreated(@Nullable
Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
loginPreferences =
getActivity().getSharedPreferences("loginPref
s", MODE_PRIVATE);
loginPrefsEditor =
loginPreferences.edit();
auth = FirebaseAuth.getInstance();
firebaseDatabase =
FirebaseDatabase.getInstance();
databaseReference =
firebaseDatabase.getReference();
email =
view.findViewById(R.id.email_field);
password =
view.findViewById(R.id.password_field);
sign_in =
view.findViewById(R.id.sign_in_btn);
guest =
view.findViewById(R.id.guest_btn);
forgotpassword =
view.findViewById(R.id.forgot_password_txt);
rotateLoading =
view.findViewById(R.id.signinrotateloading);
48 | P a g e
checkBox =
view.findViewById(R.id.remember_me_checkbox);
forgotpassword.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
FirebaseAuth auth =
FirebaseAuth.getInstance();
final String emailAddress =
email.getText().toString();
if
(TextUtils.isEmpty(emailAddress))
{
Toast.makeText(getContext(),
"please enter your email firstly",
Toast.LENGTH_SHORT).show();
return;
}
if
(emailAddress.equals("admin@admin.com"))
{
Toast.makeText(getContext(),
"you can't reset admin account password",
Toast.LENGTH_SHORT).show();
return;
}
auth.sendPasswordResetEmail(emailAddress)
49 | P a g e
.addOnCompleteListener(new
OnCompleteListener<Void>() {
@Override
public void
onComplete(@NonNull Task<Void> task) {
if
(task.isSuccessful())
{
Toast.makeText(getContext(), "password reset
email has been sent to : " + emailAddress,
Toast.LENGTH_SHORT).show();
}
}
});
}
});
saveLogin =
loginPreferences.getBoolean("saveLogin",
false);
if (saveLogin)
{
email.setText(loginPreferences.getString("use
rname", ""));
password.setText(loginPreferences.getString("
password", ""));
checkBox.setChecked(true);
}
50 | P a g e
sign_in.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v) {
email_txt =
email.getText().toString();
password_txt =
password.getText().toString();
if (TextUtils.isEmpty(email_txt))
{
Toast.makeText(getContext(),
"please enter your email",
Toast.LENGTH_SHORT).show();
return;
}
if
(TextUtils.isEmpty(password_txt))
{
Toast.makeText(getContext(),
"please enter your password",
Toast.LENGTH_SHORT).show();
return;
}
if
(email_txt.equals("admin@admin.com") &&
password_txt.equals("adminadmin"))
{
rotateLoading.start();
51 | P a g e
AdminLogin(email_txt,password_txt);
loginPrefsEditor.putBoolean("savepassword",
true);
loginPrefsEditor.putString("pass",
password_txt);
loginPrefsEditor.apply();
if (checkBox.isChecked())
{
loginPrefsEditor.putBoolean("saveLogin",
true);
loginPrefsEditor.putString("username",
email_txt);
loginPrefsEditor.putString("password",
password_txt);
loginPrefsEditor.apply();
} else {
loginPrefsEditor.clear();
loginPrefsEditor.apply();
}
} else
{
rotateLoading.start();
UserLogin(email_txt,password_txt);
52 | P a g e
loginPrefsEditor.putBoolean("savepassword",
true);
loginPrefsEditor.putString("pass",
password_txt);
loginPrefsEditor.apply();
if (checkBox.isChecked())
{
loginPrefsEditor.putBoolean("saveLogin",
true);
loginPrefsEditor.putString("username",
email_txt);
loginPrefsEditor.putString("password",
password_txt);
loginPrefsEditor.apply();
} else {
loginPrefsEditor.clear();
loginPrefsEditor.apply();
}
}
}
});
guest.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
53 | P a g e
{
Intent intent = new
Intent(getContext(), GuestActivity.class);
startActivity(intent);
}
});
}
The function of each object and its code:
•
•
•
If the user forgets the password, it can be returned using the “forget password?”
button. The e-mail will be required to send the password reset email to user’s
email address. If the user is the admin, he cannot return his/her password.
The email address and the password of the user should be entered first before
clicking on “Log in” button. If it is clicked before entering one of them, an error
message occurs to make them enter them.
If the checkbox “Remember me’ is checked, the application saves the email and
the password so, when the user enters the application again after closing it, he
will find the account open.
54 | P a g e
2- The page of “sign_up_Fragenmt.xml” and its two main parts “Doctor”
sign up and “Patient” sign up is shown in figure (37)
Figure (37)
The code of the main functions of this page:
private void showDoctorDialog()
{
final Dialog dialog = new
Dialog(getActivity());
dialog.requestWindowFeature(Window.FEATURE_NO_T
ITLE); // before
dialog.setContentView(R.layout.doctor_register_
dialog);
dialog.getWindow().setBackgroundDrawable(new
55 | P a g e
ColorDrawable(Color.TRANSPARENT));
dialog.getWindow().getAttributes();
dialog.setCancelable(false);
WindowManager.LayoutParams lp = new
WindowManager.LayoutParams();
lp.copyFrom(dialog.getWindow().getAttributes())
;
lp.width =
WindowManager.LayoutParams.MATCH_PARENT;
lp.height =
WindowManager.LayoutParams.WRAP_CONTENT;
profile_image =
dialog.findViewById(R.id.profile_image);
first_name =
dialog.findViewById(R.id.first_name_field);
last_name =
dialog.findViewById(R.id.last_name_field);
email_address =
dialog.findViewById(R.id.email_field);
password =
dialog.findViewById(R.id.password_field);
phone_number =
dialog.findViewById(R.id.mobile_field);
address =
dialog.findViewById(R.id.address_field);
specialization_spinner =
dialog.findViewById(R.id.specialization_spinner
);
56 | P a g e
sign_up_btn =
dialog.findViewById(R.id.sign_up_btn);
cancel_btn =
dialog.findViewById(R.id.cancel_btn);
ArrayAdapter<CharSequence> adapter1 =
ArrayAdapter.createFromResource(getContext(),
R.array.department,
android.R.layout.simple_spinner_item);
// Specify the layout to use when the list
of choices appears
adapter1.setDropDownViewResource(android.R.layo
ut.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
specialization_spinner.setAdapter(adapter1);
specialization_spinner.setOnItemSelectedListene
r(new AdapterView.OnItemSelectedListener() {
@Override
public void
onItemSelected(AdapterView<?> parent, View
view, int position, long id)
{
specialization_txt =
String.valueOf(parent.getItemAtPosition(positio
n));
}
@Override
public void
onNothingSelected(AdapterView<?> parent)
57 | P a g e
{
}
});
sign_up_btn.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
first_name_txt =
first_name.getText().toString();
last_name_txt =
last_name.getText().toString();
full_name_txt = first_name_txt + "
" + last_name_txt;
email_txt =
email_address.getText().toString();
password_txt =
password.getText().toString();
mobile_txt =
phone_number.getText().toString();
address_txt =
address.getText().toString();
if
(TextUtils.isEmpty(first_name_txt))
{
Toast.makeText(getContext(),
"please enter your first name",
Toast.LENGTH_SHORT).show();
return;
}
58 | P a g e
if
(TextUtils.isEmpty(last_name_txt))
{
Toast.makeText(getContext(),
"please enter your last name",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(email_txt))
{
Toast.makeText(getContext(),
"please enter your email",
Toast.LENGTH_SHORT).show();
return;
}
if
(TextUtils.isEmpty(password_txt))
{
Toast.makeText(getContext(),
"please enter your password",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(mobile_txt))
{
Toast.makeText(getContext(),
"please enter your mobile number",
Toast.LENGTH_SHORT).show();
return;
}
59 | P a g e
if (TextUtils.isEmpty(address_txt))
{
Toast.makeText(getContext(),
"please enter your address",
Toast.LENGTH_SHORT).show();
return;
}
if (photoPath == null)
{
Toast.makeText(getContext(),
"please add your picture",
Toast.LENGTH_SHORT).show();
return;
}
if
(specialization_txt.equals("Select your
specialty"))
{
Toast.makeText(getContext(),
"please select your specialization",
Toast.LENGTH_SHORT).show();
return;
}
progressDialog = new
ProgressDialog(getContext());
progressDialog.setTitle("Doctor
Sign Up");
progressDialog.setMessage("Please
Wait Until Creating Account ...");
60 | P a g e
progressDialog.setProgressStyle(ProgressDialog.
STYLE_SPINNER);
progressDialog.show();
progressDialog.setCancelable(false);
//Toast.makeText(getContext(),
full_name_txt, Toast.LENGTH_SHORT).show();
CreateDoctorAccount(email_txt,password_txt,full
_name_txt,mobile_txt,specialization_txt,address
_txt);
loginPrefsEditor.putBoolean("savepassword",
true);
loginPrefsEditor.putString("pass",
password_txt);
loginPrefsEditor.apply();
//CustomerRegister(full_name_txt,email_txt,pass
word_txt,mobile_txt,"Customer");
}
});
profile_image.setOnClickListener(new
View.OnClickListener()
{
@SuppressLint("NewApi")
@Override
public void onClick(View v)
{
61 | P a g e
CropImage.activity()
.setGuidelines(CropImageView.Guidelines.ON_TOUC
H)
.setAspectRatio(1,1)
.start(getContext(),
SignupFragment.this);
}
});
cancel_btn.setOnClickListener(new
View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
dialog.getWindow().setAttributes(lp);
}
private void showPatientDialog()
{
final Dialog dialog = new
Dialog(getActivity());
dialog.requestWindowFeature(Window.FEATURE_NO_T
ITLE); // before
dialog.setContentView(R.layout.patient_register
_dialog);
62 | P a g e
dialog.getWindow().setBackgroundDrawable(new
ColorDrawable(Color.TRANSPARENT));
dialog.getWindow().getAttributes();
dialog.setCancelable(false);
WindowManager.LayoutParams lp = new
WindowManager.LayoutParams();
lp.copyFrom(dialog.getWindow().getAttributes())
;
lp.width =
WindowManager.LayoutParams.MATCH_PARENT;
lp.height =
WindowManager.LayoutParams.WRAP_CONTENT;
profile_image =
dialog.findViewById(R.id.profile_image);
first_name =
dialog.findViewById(R.id.first_name_field);
last_name =
dialog.findViewById(R.id.last_name_field);
email_address =
dialog.findViewById(R.id.email_field);
password =
dialog.findViewById(R.id.password_field);
phone_number =
dialog.findViewById(R.id.mobile_field);
closest_number =
dialog.findViewById(R.id.closest_mobile_field);
address =
dialog.findViewById(R.id.address_field);
nfc_id =
dialog.findViewById(R.id.nfc_id_field);
personal_id =
63 | P a g e
dialog.findViewById(R.id.personal_id_field);
date_picker =
dialog.findViewById(R.id.date_picker);
date_edittext =
dialog.findViewById(R.id.date_field);
blood_spinner =
dialog.findViewById(R.id.blood_spinner);
sign_up_btn =
dialog.findViewById(R.id.sign_up_btn);
cancel_btn =
dialog.findViewById(R.id.cancel_btn);
ArrayAdapter<CharSequence> adapter1 =
ArrayAdapter.createFromResource(getContext(),
R.array.bloodtypes,
android.R.layout.simple_spinner_item);
// Specify the layout to use when the list
of choices appears
adapter1.setDropDownViewResource(android.R.layo
ut.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
blood_spinner.setAdapter(adapter1);
blood_spinner.setOnItemSelectedListener(new
AdapterView.OnItemSelectedListener()
{
@Override
public void
onItemSelected(AdapterView<?> parent, View
view, int position, long id)
{
blood_txt =
64 | P a g e
String.valueOf(parent.getItemAtPosition(positio
n));
}
@Override
public void
onNothingSelected(AdapterView<?> parent)
{
}
});
sign_up_btn.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
first_name_txt =
first_name.getText().toString();
last_name_txt =
last_name.getText().toString();
full_name_txt = first_name_txt + "
" + last_name_txt;
email_txt =
email_address.getText().toString();
password_txt =
password.getText().toString();
mobile_txt =
phone_number.getText().toString();
closest_txt =
closest_number.getText().toString();
address_txt =
address.getText().toString();
65 | P a g e
nfc_id_txt =
nfc_id.getText().toString();
personal_id_txt =
personal_id.getText().toString();
date_txt =
date_edittext.getText().toString();
if
(TextUtils.isEmpty(first_name_txt))
{
Toast.makeText(getContext(),
"please enter your first name",
Toast.LENGTH_SHORT).show();
return;
}
if
(TextUtils.isEmpty(last_name_txt))
{
Toast.makeText(getContext(),
"please enter your last name",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(email_txt))
{
Toast.makeText(getContext(),
"please enter your email",
Toast.LENGTH_SHORT).show();
return;
}
if
66 | P a g e
(TextUtils.isEmpty(password_txt))
{
Toast.makeText(getContext(),
"please enter your password",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(mobile_txt))
{
Toast.makeText(getContext(),
"please enter your mobile number",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(closest_txt))
{
Toast.makeText(getContext(),
"please enter your closest mobile number",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(address_txt))
{
Toast.makeText(getContext(),
"please enter your address",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(nfc_id_txt))
{
67 | P a g e
Toast.makeText(getContext(),
"please enter your NFC id",
Toast.LENGTH_SHORT).show();
return;
}
if
(TextUtils.isEmpty(personal_id_txt))
{
Toast.makeText(getContext(),
"please enter your personal id",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(date_txt))
{
Toast.makeText(getContext(),
"please pick or enter your birth date",
Toast.LENGTH_SHORT).show();
return;
}
if (photoPath == null)
{
Toast.makeText(getContext(),
"please add your picture",
Toast.LENGTH_SHORT).show();
return;
}
if
(blood_spinner.getSelectedItemPosition() == 0)
{
68 | P a g e
Toast.makeText(getContext(),
"please select your blood type",
Toast.LENGTH_SHORT).show();
return;
}
progressDialog = new
ProgressDialog(getContext());
progressDialog.setTitle("Patient
Sign Up");
progressDialog.setMessage("Please
Wait Until Creating Account ...");
progressDialog.setProgressStyle(ProgressDialog.
STYLE_SPINNER);
progressDialog.show();
progressDialog.setCancelable(false);
//Toast.makeText(getContext(),
full_name_txt, Toast.LENGTH_SHORT).show();
CreatePatientAccount(full_name_txt,email_txt,pa
ssword_txt,personal_id_txt,nfc_id_txt,date_txt,
closest_txt,mobile_txt,blood_spinner.getSelecte
dItemPosition(),address_txt,selectedimageurl);
loginPrefsEditor.putBoolean("savepassword",
true);
loginPrefsEditor.putString("pass",
password_txt);
loginPrefsEditor.apply();
69 | P a g e
//CustomerRegister(full_name_txt,email_txt,pass
word_txt,mobile_txt,"Customer");
}
});
date_picker.setOnClickListener(new
View.OnClickListener() {
@Override
public void onClick(View v) {
DialogFragment newFragment = new
DatePickerFragment();
newFragment.show(getFragmentManager(),
"datePicker");
}
});
profile_image.setOnClickListener(new
View.OnClickListener()
{
@SuppressLint("NewApi")
@Override
public void onClick(View v)
{
CropImage.activity()
.setGuidelines(CropImageView.Guidelines.ON_TOUC
H)
.setAspectRatio(1,1)
.start(getContext(),
SignupFragment.this);
}
70 | P a g e
});
cancel_btn.setOnClickListener(new
View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
dialog.getWindow().setAttributes(lp);
}
The function of each object and its code:
•
•
The “Doctor” button opens the page to make the doctor create her/his account.
This page contains textboxes of the name, email address, password, mobile
number, address and specialization. It also contains the picture of the doctor. If
one of these fields is missing, an error message appears to make the doctor
enter the missing fields.
The “Patient” button opens the page to make the patient create her/his account.
This page contains textboxes of the name, email address, password, mobile
number, closest mobile number, address, NFC ID, personal ID, date of birth and
the blood type. It also contains the picture of the doctor. If one of these fields is
missing, an error message appears to make the patient enter the missing fields.
71 | P a g e
3- The page of “activity_guest.xml” that appears after clicking on the
“emergency” button in the “sign_in_Fragenmt.xml” or in
“sign_up_Fragenmt.xml” as shown in figure (38)
Figure (38)
The code of the main functions of this page:
protected void onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_guest);
first_aid_card =
findViewById(R.id.first_aid_card);
scan_nfc = findViewById(R.id.btn_read);
sendlocation =
findViewById(R.id.send_location_btn);
patient_notes =
findViewById(R.id.patient_note_field);
72 | P a g e
risk = findViewById(R.id.risk);
firebaseDatabase =
FirebaseDatabase.getInstance();
databaseReference =
firebaseDatabase.getReference();
initNFC();
buildGoogleAPIClient();
first_aid_card.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
String url =
"https://drive.google.com/open?id=17xaOUesHnu
IJnk64wZkO8c7ckEQNofi_";
Intent browserIntent = new
Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(browserIntent);
}
});
risk.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
String url =
"https://drive.google.com/open?id=1sx9IwMCql3
73 | P a g e
a_OOV0KDDt6OCRFZkRaA27";
Intent browserIntent = new
Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(browserIntent);
}
});
scan_nfc.setOnClickListener(new
View.OnClickListener()
{
@Override
public void onClick(View v)
{
NfcManager manager = (NfcManager)
getApplicationContext().getSystemService(Cont
ext.NFC_SERVICE);
NfcAdapter adapter =
manager.getDefaultAdapter();
if (adapter != null &&
adapter.isEnabled())
{
// adapter exists and is
enabled.
showReadFragment();
} else
{
Toast.makeText(getApplicationContext(),
"please check that NFC is enabled firstly",
Toast.LENGTH_SHORT).show();
}
}
});
74 | P a g e
sendlocation.setOnClickListener(new
View.OnClickListener() {
@Override
public void onClick(View v) {
ConnectivityManager cm =
(ConnectivityManager)
getApplicationContext().getSystemService(Cont
ext.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork =
cm.getActiveNetworkInfo();
boolean isConnected =
activeNetwork != null &&
activeNetwork.isConnectedOrConnecting();
if (isConnected)
{
final LocationManager manager
= (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
if
(!manager.isProviderEnabled(LocationManager.G
PS_PROVIDER)) {
Toast.makeText(getApplicationContext(),
"please check your gps is enabled",
Toast.LENGTH_SHORT).show();
return;
}
if (lastlocation == null)
{
75 | P a g e
Toast.makeText(getApplicationContext(),
"please refresh your GPS and try again",
Toast.LENGTH_SHORT).show();
Intent intent = new
Intent(getApplicationContext(),
GuestActivity.class);
startActivity(intent);
return;
}
String latitude =
Double.toString(lastlocation.getLatitude());
String longitude =
Double.toString(lastlocation.getLongitude());
noote =
patient_notes.getText().toString();
if (TextUtils.isEmpty(nfcid))
{
Toast.makeText(getApplicationContext(),
"please scan NFC firstly",
Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(noote))
{
noote = "Hurry Up ...";
}
sendRequest(nfcid, namee,
emergencyy, bloodtypee, diseasee, noote,
76 | P a g e
latitude, longitude);
} else
{
Toast.makeText(getApplicationContext(),
"please check your internet connection",
Toast.LENGTH_SHORT).show();
}
}
});
The function of each object and its code:
•
When the “first aid instructions” button is clicked, a file on google drive opens
using its URL. This file contains the basic instructions about first aid as shown in
figure (39)
•
When the “Be aware!” button is clicked, a file on google drive opens using its
URL. This file contains common risk factors of severe diseases as shown in figure
(40)
77 | P a g e
Figure (39)
Figure (40)
•
When the “Scan NFC” button is clicked, the user is able to scan an NFC card by
putting the mobile above the card. If the NFC is turned off in the mobile, an error
message appears to make the user enable it.
•
When the “Send Location” button is clicked, the user is able send the location of
the patient to the admin. The user also can add a comment in the “comment”
textbox and send it with the location. The location with this comment is send to
the admin. Then, the admin opens the google map to see the nearest doctor to
the patient and send this information to him/her.
In order to do this, the user should first scan the NFC card of the patient and the
mobile should be connected to an active internet. Also, the GPS in the mobile
should be enabled.
78 | P a g e
The design requirements we have chosen for the prototype
are:
•
•
Raising awareness with the basic first aids and common risk factors.
The responsiveness of the application.
For raising the awareness, two files were used in the application. One of them
about first aid instructions for the most severe emergency cases and prevent them
from complications. The other about the common risk factors about chronic and
severe diseases. Two surveys were made among emergency doctors and people and
100% of people and 60% of doctors said that the application raise the awareness.
For increasing the responsiveness of the application, the java code was used with
specific function which is (TimerTask) in order to make the application respond
faster in only about 3 seconds using the delay in milliseconds to ensure that the
responsiveness of it is high. This was made the connection between the user and the
doctor quick.
The application was tested in many different ways. At first, a test was made to make
sure that the application has high responsiveness. We compared between the time
that the ambulance takes to reach the emergency case which is 30:40 minutes
(according to Egyptian ambulance agent) to the time that the application takes to
rescue the patients. It was found that the patient could be rescued at about 15
minutes so the application.
Another test plan was also made to test the responsiveness of the application. We
tested the delay time of the application to see if it works sufficiently, the application
takes only 3 seconds to respond. This is a proof of its high responsiveness.
Second, two surveys were made to ensure that the application could raise the
awareness of the people. One of them was made among people and the result was
that 100% of them said the application would raise the awareness. The other survey
was made among 10 emergency doctors and the results were that 60% of them said
the application is excellent in raising the awareness and 40% said the application is
good in raising it.
79 | P a g e
Chapter 3
III.
80 | P a g e
Constructing and Testing a Prototype:
Materials and methods
The materials are divided into two sections:
• Software: the programs and other operating information used by the computer.
• Hardware: physical parts, tools, and other equipment.
software
Hard ware
Cost
NFC
card
15LE per
one
Xml
Camera
----------------
Google
form
survey
for
people
Survey
sheet
Java
program
ming
languag
e
Android
studio
Illustrator
81 | P a g e
20LE for the
10 sheets
Material’s usage:
Java
•
•
It is a high-level programming language which is the originally designed for
developing programs for set-top boxes and handheld devices, but later
became a popular choice for creating web applications and it is similarly to
C++ programming language
We used it to code the application due to its fast execution, in addition it
works on android studio and it was found that it is so much better than kotlin
XML (Extensible Markup Language)
•
•
It is similar to HTML and it used to describe page or file content
It has used to make the interface of the application
Android studio
•
•
Android Studio is the official integrated development environment for
Android application development. It contains modalities with source code
and resource files. It includes Android app modules, Library modules, and
Google App Engine modules. And it interacts with Java and XML to do its
functions
It is the environment used to do the application using Java and XML it was
also used to make writing codes easier and for offering code completion,
refraction, and analysis
Illustrator
•
It was used to make the logo
NFC Card
•
•
82 | P a g e
It is the card used to store the data of the patients
It is also a set of communication protocols that enable two electronic
devices to establish communication to each other and it used for
transferring data
Methods
The application has been made according to SDLC (software Development Life Cycle)
using agile methodology as shown in figure (41).
The methodology has used in agile methodology is Phases of extreme programming:
This methodology includes 5 stages which are: planning,
analysis, design, Execution and wrapping
Planning: it includes identification of the problem,
planning for the design requirements, the requirements
of the app and gathering the information and data for
the application
analysis: determine the time and know how match time
the application will take to be coded
Design: which is breakdown of tasks and make the
Figure (41)
scenario for each interface
Execution: coding the application and test it
Wrapping: share it with others take reviews and improve the application according
to it
❑ At first, a survey was made using Google forms to ensure that the application will
affect the public serves and a large number will use it as shown in table (1) and
figure (42).
The questions of the peoples’ survey
• Was the name and the job to make sure that the submitters are different in
each submit
• the reason for not saving the injuries in the accidents
• if they would use the application with its features or not (with providing the
features of our application)
• If they have the information about first aid which can make them relate with
emergency case
83 | P a g e
Figure (42)
Table (1)
❑ A logo for the application was made using Adobe illustrator.
❑ A scenario using Photoshop for GUI design was made before modifying it as
shown in figure (43).
❑ The application on Android Studio
was designed using XML file of the
interface.
By designing every button with
and determine its height, width
and gravity and determine also
the position of photos and their
dimensions
❑ The codes of the application were
written in the java file to make
Figure (43)
the objects of XML file interactive. One of the buttons
inserted in the interface is the “Emergency” button. And to
determine the mechanism and sequence of the application to work
❑ First aid instruction and common risk factors were collected and then revised by
emergency doctors to ensure that they are accurate.
❑ A data base was made by the “firebase” application and connected with java
code. This data base includes the first aid instructions, common risk factors,
medical history of several users each with different ID and the rest of the data in
the application. The application was tested to detect any errors in the code by
trying all buttons and objects after running the application on the phone.
84 | P a g e
❑ The modifications were made successfully to the errors appeared in the
debugging.
❑ The information was inserted in the application and was put in an NFC card.
Then, this NFC card was tested to ensure that when scanning the same NFC card,
the same information (medical history) will be called from the database and
appear in the application.
❑ Finally, a survey was made among 10 emergency doctors with different
specializations to test the effectiveness and the design requirements of the
application
There are safety precautions that everyone must follow
85 | P a g e
•
It is having to use save programming language like: Java because there
are many us safe programming languages like C.
•
secure the app from ground up
because in any application has installed you install the interface only to
use the application but if the code didn’t secure that code resides on the
device once it’s downloaded, making it more accessible to those with
malicious intent.
•
Secure the network connection on the back end
the application must have security to protect its data and prevent it from
illegal access
Test Plan
The design requirements chosen
1- Increasing the awareness
2- Achieving high responsiveness
The first test plan:
The first test plane was made after completing the code, it was made to ensure that
the application runs appropriately without any error.
This was made by installing the app on a mobile device to test it.
The result found was that one of the buttons does not respond when clicking on it
(negative result)
This button was the “emergency” button, which is supposed to transfer the user for
the next page.
A debugging was made on the android studio to detect the error and it was found
that the function (Onclick) for this button is not written.
(Onclick) is one of the fundamental functions in many programing
languages like java or c++ but with different forms. The onclick event occurs
when the user clicks on an element.
The basic form in the JAVA (we used this):
<button onclick="myFunction()">Click me</button>
The missing function then was written as the shown below in figure (44).
The app was tested again and the button responded appropriately.
Figure (44)
86 | P a g e
The second test plan:
As the application is supposed to serve mainly in the emergency cases, the time it
takes to open the app will be very important to be put in consideration.
The second test was made to see how much time taken by the application to open
and to achieve the design the first design requirement which is the high
responsiveness provided by the app.
At first, the app took 300000 millisecond which equals 5 minutes (negative results)
The Delay function in the splash activity was then corrected to be 3000 ml (3 sec)
instead of 300000 ml as shown in figure (45)
By modifying this number, the time taken by the app to show the interface now is 3
seconds instead of 3 minutes (positive result)
Splash activity is the activity responsible for the opening page of the app.
Delay function is a function used to estimate time of a specific activity or the time
taken by a specific page before it disappears.
Figure (45)
The Third test plan:
This test was made to test the second test plan, which is raising the awareness
For the app to raise the awareness among people, we added 2 taps. One for the first
aids named “fist aid instructions”
Another tap for raising the awareness with the common risk factors for the majority
of chronic, fatal and dangerous disease like cancer, diabetes cardiovascular disease,
and this button is called “BE AWARE”
To ensure that these buttons and the application will raise the awareness
successfully, 2 surveys were made.
87 | P a g e
Data collection
First test plane:
The first test plane was made after completing the code, it was made to ensure that
the application runs appropriately without any error.
This was made by installing the app on a mobile device to test it.
The result found was that one of the buttons does not respond when clicking on it
(negative result)
This button was the “emergency” button, which is supposed to transfer the user for
the next page.
A debugging was made on the android studio to detect the error and it was found
that the function (Onclick) for this button is not written.
The missing function then was written. The app was tested again and the button
responded appropriately.
The Second test plan:
As the application is supposed to serve mainly in the emergency cases, the time it
takes to open the app will be very important to be put in consideration.
The second test was made to see how much time taken by the application to open
and to achieve the design the first design requirement which is the high
responsiveness provided by the app.
At first, the app took 300000 millisecond which equals 5 minutes (negative results)
The Delay function in the splash activity was then corrected to be 3000 ml (3 sec)
instead of 300000 ml.
By modifying this number, the time taken by the app to show the interface now is 3
seconds instead of 3 minutes (positive result)
Third test plan:
This test was made to test the second test plan, which is raising the awareness
For the app to raise the awareness among people, we added 2 taps .One for the first
aids named “fist aid instructions”
Another tap for raising the awareness with the common risk factors for the majority
of chronic, fatal and dangerous disease like cancer, diabetes cardiovascular disease,
and this button is called “BE AWARE”
To ensure that these buttons and the application will raise the awareness
successfully, 2 surveys were made.
88 | P a g e
One survey was made on goggle forms for all the people to answer some questions
and then the data was collected. The question asked and the results collected are as
the following:
What reason do they think is the main for the low carelessness of the
emergency cases in Egypt which leads to many deaths and complications
that could have been avoided?
✓ 64% said it was mainly due to the delay of the ambulance in most times
✓ 29% said it was due to the actions of the lack experienced people giving
instruction before the ambulance arrive
✓ 7% said it was due to the lack of awareness of the first aids
Figure (46)
If there was an application that includes the common risk factors and basic knowledge for first aids, will
this raise the awareness and help in lowering percentages of disease and help in emergency cases?
•
•
100% of the audience said yes
0% of the audience said no
Result
No
Yes
Figure (47)
89 | P a g e
If there was a card in which you can store your medical history, so that can be
scanned in emergency cases, will you buy it? Or it is not worthy?
• 4% of the audience said No
• 96% of the audience said yes
Results
No
Yes
Figure (48)
In your opinion, do you think that you have the needed first aid information to
take action in emergency cases like burns or a heart attack?
• 23.5% of the audience said yes
Results
• 76.5% of the audience said no
No
Yes
Figure (49)
90 | P a g e
If there was an application that includes the common risk factors and basic
knowledge for first aids, will this raise the awareness and help in lowering
percentages of disease and help in emergency cases?
•
•
100% of the audience said yes
0% of the audience said no
Results
No
Yes
Figure (50)
The second survey was made on 10 emergency doctors :
They were asked about:
1. Their data
2. What reason do they think is the main for the low carelessness of the
emergency cases in Egypt which leads to many deaths and complications
that could have been avoided?
The results were:
✓ 35% said it was mainly due to the delay of the ambulance in most times
✓ 17% said it was due to the low qualified hospitals and medical serves
✓ 26% said it was due to the actions of the lack experienced people giving
instruction before the ambulance arrive
✓ 22% said it was due to the lack of awareness of the first aids
91 | P a g e
Figure (51)
3.
▪
▪
▪
▪
Finally they were asked to rate the app’s (excellent-good-far) :
Speed
Raising awareness
Effectiveness
Responsiveness
The data collected was as the following:
Figure (52)
92 | P a g e
Chapter 4
IV.
93 | P a g e
Evaluation, Reflection, Recommendations:
Analysis and discussion
Brief introduction of the idea
As mentioned before, the addressed challenge was about improving the public
health using technology. In Egypt, medical care offered by the public health
insurance system is generally of poor quality. This challenge should be solved for its
severe consequences like high rates of deaths, suffering from severe diseases and
their effects on Egypt’s productivity and economy. Therefore, an Android application
was made to lower the number of deaths and injured people by controlling the
Emergency cases and raising the awareness. The application behavior focuses on
emergency cases and how to reach and rescue them faster. It consists of several
parts: the “emergency” which is important to raise the awareness among people
about first aid instructions or risk factors, the doctor and the patient profiles that
enable the patients to follow up with specific doctors, an NFC ID for each patient to
store his/her medical information and history on it. This storage of information on
the NFC card helps the doctors to keep up with the patient.
The test plans that were made and their results:
At first, a survey among people was made to test if the application has positive effects
on the public serves and also to ensure that it raises the awareness and whether a large
number of people may use it or not. 100% of people said that the application will raise
the awareness, in addition to other questions in the form.
Three test plans were made. The first one was to figure out if the application will
work successfully and to detect syntax, logic and runtime errors. After building the
application and testing all objects in a runtime mode on virtual device (emulator), an
error was found with the button (emergency button in sign up page). This button did
not do its function after clicking on it. The error was that the design and text of the
button was made in XML file as shown in figure (53) without connecting it to the
java code using (onClick) function. This function means when this button is clicked,
the next page opens (emergency page). As a result, this code was modified by
adding this function (onClick) as shown in figure (54). Finally, the application was
94 | P a g e
built again and the debugging which is an error detector was made. This
modification made the first test plan successful and the button responded and did
its function.
4
Figure (53)
Figure (54)
In the second test plan, the responsiveness of the application was tested. The
application was run on the phone, about 300 seconds (5 minutes) were taken to
start the application. This was too much for the activity to be done. It was found that
the delay in the code was 300000 ml instead of 3000ml (3 sec). As a result, a
modification on the delay was done to solve this negative result by adding code:
new Timer().schedule(task, delay: 3000); as shown in figure (55).
Figure (55)
95 | P a g e
Finally, a survey was made among 10 emergency doctors in different specialization
to see if the application will be successful and applicable in real life or not. It also
tested whether the application will raise the awareness of the people about the first
aid instructions for several emergency cases and common risk factors to avoid the
huge number of deaths and the diseases complications. It was estimated that if the
rate of excellence of awareness was more than 50%, the design requirement will be
achieved. This was successfully done as the rate happened to be 60%.
Figure (56)
Conclusion
In conclusion, the application saves the patients of emergency cases like fainting,
burns and heart attacks as fast as much, even before the arrival of ambulance by
providing users with needed first aid instructions. Furthermore, it allows the user to
reach the nearest doctor according to his place by the admin control. In addition,
the app allows the patient to follow up with the needed doctor online at any time,
scanning the NFC to identify the medical history of the patient and finally raising
awareness to the most common risk factors for the most severe disease like cancer
or diabetes. A survey was made on 10 doctors and the ambulance agent. Another
one was made using Google forms to ask people. According to the survey’s results:
when asked about the reasons why the emergency cases in Egypt are not usually
saved quickly: majority of both doctors and people (35 % doctors, 64.7% of people)
said it was due to the usual ambulance delay. Also, the application proved to be
effective according to 60 % of doctors and 100 % of people. It was proved that the
96 | P a g e
application has an excellent responsiveness according to 70% of the doctors which is
due to the java which is characterized with its high execution speed. Also, it was
found that 100% would use the application according to both of the surveys. 60% of
doctors and 100% of people said it would raise the awareness about basic first aid
instructions, common risk factors in addition to lowering the deaths due to health
issues.
Recommendation
The following groups may consider further improvements from several aspects: the
user’s side, general awareness side, and the user-doctor connection side. Firstly,
launching the application in real life would require its availability allover Egypt, not
just in Tanta as it while testing. Also, it’s highly recommended to allow video call
communication so that a better medical consult could be made. Besides, utilizing
google maps (GPS) would be a game changer, making the user more vulnerable to
identifying the nearest doctor’s location to them to order, without the need of the
administration control system. For the application to be totally-functioning, it can
provide further assistance to the nearest hospitals and pharmacies locations. On
the developers’ side, it’s advised to use Flatter programming language instead of
Java in order to allow the application to run on both iOS and Android. Finally, the
application can represent a good bonus if used by the Egyptian Local Ambulance
managers, by sending them notifications with the patient’s location shortly by
pressing a button in the interface, accompanied by the shortest route for the
ambulance to reach them.
For future work and solutions for the public health, the following solutions may be
done:
• Improving the services in the hospitals as 17% of the emergency doctors
participated in the survey said that the low qualified hospitals and serves
play a major rule in the public health issues. ‘
•
• Also making courses to raise the awareness of people by tee basic first aid
and how to deal with emergency cases will be very useful.
97 | P a g e
•
•
Provide more vaccines for babies and children to prevent them from the
diseases and infections
Also, it will be very effective if the country found a solution for the water and
air pollution as they contribute strongly in the public health issues
Learning outcomes
Subject
BI.3.01
Biology
BI.3.02
Biology
98 | P a g e
Description of
the LO
Transfer
The neuron is the building block of the nervous system. It
consists of the axon, the dendrites and the cell body. The
dendrites’ function is to receive information or stimulus
from the environment or from another neuron by synapses.
Then, a signal is created due to the stimulus making a
potential in the cell membrane, which if it reached to -55 mv
Describe the
(threshold), an action potential will be fired making the
relationship between
structure and function signal travel along the neuron to reach its target cells. The
cell body is the site of processing the received information.
of a neuron in its role The axon is the site that the action potential is traveling at to
in cell communication. reach its targets. In our capstone project, the application
does the same function as the neuron. In the interface there
are buttons to click. This click is considered as a stimulus.
When this action is done, the code that have been set in the
application will start to process the information and do its
function as the cell body of the neuron do. After the
processing of the information and applying the code, an
output will come out in form of another page in the
application.
Describe how the structure
of the neuron membrane
facilitates its function with
a primary focus on how
the neuron and the
transmission of a nerve
The propagation of the impulses through the axon to
reach another neuron is affected by a factor which is the
thickness of the axon, in invertebrate the axon is wide
comparing to the axon of our neuron and the wideness of
the axon affecting the speed of propagation so, if the
axon is thin , the propagation of impulses travel slower
so, it solved with myelin sheath around it which increase
impulse allows
communication within an
organism and with the
external environment
BI.3.08
Biology
Predict the role of
hormones in maintaining
homeostasis.
CH.3.01
Chemistry
99 | P a g e
In this unit the emphasis
should be on learning the
ways in which scientists do
their work, the importance of
evidence and the limitations
of scientific research.
Scientific experiments rely
primarily on quantitative
measurement. A natural
implication of the limits of
scientific experimentation is
uncertainty in measuring. It
should be familiar with this
already and should apply it
to the process of designing
experiments or reviewing the
results of other experiments.
the speed of propagation and that is exactly in the
application it must be examined the factors that affect
our application comparing with other applications like
comparing the axon between vertebrates and
invertebrates the code in the application may have
features which make it better or worse so, it must
examine the code well to know if there are weakness in
it and how to improve it. like what have made with
myelin sheath to improve the axon to propagate the
impulses quickly
In the endocrine system hypothalamus is the regulator
for the endocrine signaling because stimulate or inhibit
the secretion of hormones from the pituitary gland and
each hormone is responsible for making different
function to maintain our body its look like the
application the hypothalamus is the Java code which
regulates all buttons (hormones) to make different
functions to maintain the application and this is the idea
everything have its regulator which is responsible for
maintain it
In every work in the life or every action made the
accuracy must be determined because if the accuracy is
absent in the work , it will make it fail ,like, in our life
everything is accurate and every law for nature have
made well and accurate so, in the application the
accuracy have to be checked well for another reason and
this reason is if the code has any small Error it will lead
to make the application do not run also the factor of
precision must be determined because all codes must be
precise to each other because, if we have XML code said
that the button called “be aware !” must be yellow and
another code said that it must be blue it will cause an
error in the application and the two colors will not be
applied so, as accuracy and precision are determined in
CH.3.07 CH.3.09
Chemistry
LO7 Determine types
of bonding based on
Coulomb’s Law and
the position of the
elements on the
periodic table.
LO9 Describe, explain
and represent the ways
in which molecular
architecture relates to
the properties of
substances
PH.3.04
Physics
Design a system of
communication
through applying
previous knowledge
PH.3.05
Physics
How information can
be transmitted via
100 | P a g e
all laws in our life we have to determine it also while
coding
LO7 describes chemical bonds which is strong bond
between atoms or to form molecules and it divides into
ionic , covalent or metallic bonds and it also known as
intramolecular force what have learned from this bond :
is the bond between the XML code and Java code that
the button in the interface with its attributes its XML and
the function of each button located in the Java code and
there is strong bond between them and if the XML code
do not match the Java code the code will have error and
the application will not work so, it must remain the bond
between the Java and XML code . LO9 describes
intermolecular force or physical bond which is the bond
between molecules to form compounds it divides into :
dipole - dipole bond , London dispersion bond and
hydrogen bond and this bond is not as strong as
chemical bond so, it is like the bond between every
button it is not strong bond because it is not affecting the
run of the application but it affects the effectiveness of it
.
The basic elements of communication are the
transmitter , medium and receiver , the transmitter:
converts the original source information into suitable
form to transmit it by a process called encoding and the
medium transfer these information to the receiver which
will accepts the transmitted signals and then converts
those signals back to their original form like the
application which receives the information from the
patient as transmitter and send it as the application to the
doctor which is the receiver
In this LO the analog and digital data , the digital data
express variation in the system’s variable in response to
a set of discrete values that it is there is value or not no
intermediate and this is exactly in the code if there are
any error in the code, the application do not work. in the
codes and digital date ( all or none ) if the code is
located and completely right the application work and if
the code is not located the application work but if there
electromagnetic
radiation
ES.3.01
Earth
science
The link between tectonic
plates and patterns of
volcanism and seismicity
ES.3.02
Earth
science
The data sets that
provide evidence for
plate motions,
including GPS data
CS.3.01
Computer
science
It demonstrates
understanding of the
requirements for
101 | P a g e
are code and this code have an error the application do
not work
Analog data is continuous information with a
theoretically infinite number of possible values so, its
not like codes but the analog data represents the videos
if the application have it
The earth consists of 4 layers the crust, mantle, outer
core and inner core. The crust is the thin outer layer of
the Earth. The mantle: is much thicker than the crust at
almost 3000km deep. The outer core is the layer beneath
it and the inner core is so deep within the earth that it's
under immense and its looks like our application
consists of interfaces like and every interface followed
by another interface like the layers of the earth and for
every layer its role for the earth like every interface has
its role for the application
GPS is the global positioning system which is a satellitebased system for accurate location of points on Earth. It
consists of 24 satellites. Receivers at stations on Earth use
the signals (radio waves) from satellites to calculate the
location of the station. The receiver measures the time it
takes radio signals to travel from four or more satellites to
its location, calculates the distance to each satellite, and
from this calculation determines the user’s longitude,
latitude, and altitude. This process was used to determine the
location of the patient and to send it to the doctor to reach
and treat him. This happens by click on button “Send
location” in the application so, the location of the patient
which was determined using GPS reach the doctor.
In Computer Science, the integrated development
environment (IDE) which is called the Android Studio was
learned. It has different facilities and properties that can be
used to design, build and test an application. This was the
IDE used in building the application. An XML file which is
responsible for the interface design of the application was
used and a java file which contains the code that makes the
producing mobile
applications
application interactive. Also, the Android SDK which
contains required libraries was used, in addition to an
emulator which is an android virtual device (AVD) instead
of mobile phone to run and test the application.
APA citation
Associates, E.-Z. a. (2014, october ). EGYPT HEALTH ISSUES SURVEY. Retrieved from unicef :
https://www.unicef.org/egypt/reports/egypt-health-issues-survey
aswatmasria. (2016, september 28). Over 43,000 deaths in Egypt linked to pollution in one year.
Retrieved from egyptindependent: https://ww.egyptindependent.com/over-43000deaths-egypt-linked-pollution-one-year/
Bank, W. (n.d.). Egypt GDP. Retrieved from tradingeconomics:
https://tradingeconomics.com/egypt/gdp
Chronic Disease Risk Factors. (2015, april 9). Retrieved from government of canada :
https://www.canada.ca/en/public-health/services/chronic-diseases/chronic-diseaserisk-factors.html
Fathi, Y. (2012, November 25). Egypt's public hospitals: From bad to worse. Retrieved from
english.ahram: http://english.ahram.org.eg/NewsContent/1/64/58686/Egypt/Politics/Egypts-public-hospitals-From-bad-to-worse.aspx
Haseena, M., Department of Zoology, & University of Gujrat, Pakistan. (2017, july 13).
Environmental Risk Assessment and Remediation. Retrieved from alliedacademies:
https://www.alliedacademies.org/articles/water-pollution-and-human-health7925.html
Heller, M. (2017, october 26). What is Kotlin? The Java alternative explained. Retrieved from
infoworld: https://www.infoworld.com/article/3224868/what-is-kotlin-the-javaalternative-explained.html
Hemmendinger, D. (2019, Jane 17). Computer programming language. Retrieved from
britannica: https://www.britannica.com/technology/computer-programming-language
IHME. (2017). What causes the most deaths? Retrieved from healthdata:
http://www.healthdata.org/egypt
Java Tutorial. (n.d.). Retrieved from javatpoint.com: https://www.javatpoint.com/java-tutorial
102 | P a g e
Journal of Family Health – First Aid Training . (2017). Journal of family health, 18,19,20.
Retrieved from https://www.omicsonline.org/open-access/knowledge-and-attitude-offirst-aid-skills-among-health-science-students-attaibah-university-2329-91261000257.php?aid=74695
Kuan, K., & Chawla, K. (n.d.). Android basics : user interface. Retrieved from Udacity:
https://www.udacity.com/course/android-basics-user-interface--ud834
NFC Resources . (n.d.). Retrieved from secure technology alliance :
https://www.securetechalliance.org/smart-cards-applications-nfc/
Noncommunicable diseases. (n.d.). Retrieved from World health organization:
http://www.emro.who.int/egy/programmes/noncommunicable-diseases.html
reece, j. B., Urry, l. A., cain, m. L., Wasserman, S. A., Minorsky, P. V., & Jackson, R. B. (2016).
campbell biology. united states of america : pearson .
Ritchie , H., & Roser, M. (2019, november ). Air Pollution. Retrieved from ourworldindata:
https://ourworldindata.org/air-pollution
Road traffic injuries. (2018, 12 7). Retrieved from world health organization :
https://www.who.int/news-room/fact-sheets/detail/road-traffic-injuries
Roser, E. O.-O. (2018, january 14). Global Health. Retrieved from our world in data :
https://ourworldindata.org/health-meta
schildt, h. (2011). Java the complete reference . In h. schildt, Java the complete reference (pp.
81-108).
staff, E. T. (2019). 32.5% of Egyptians live in extreme poverty: CAPMAS. Egypt today , 5-6.
Retrieved from https://www.egypttoday.com/Article/1/73437/32-5-of-Egyptians-live-inextreme-poverty-CAPMAS
Szondy, D. (2013, may 6). Breitling Emergency II watch doubles as a satellite emergency beacon.
Retrieved from new atlas: https://newatlas.com/breitling-emergency-2/27364/
ZULQADAR, A. (2019, february 12). get in touch . Retrieved from REZAID:
https://rezaid.co.uk/sdlc-waterfall-model/
103 | P a g e
Download