Omar Faruk, ID No and Sakib Ibn Abdullah, ID No in the Department of Computer Science and Engineering, Daffodil International University has been accepted as satisfactory in partial fulfillment of the requirements for the degree of B.Sc. Department of Computer Science and Engineering Faculty of Information Science and Technology Daffodil International University. Asif Uz Zaman Asif, Lecturer, Department of CSE Daffodil International University, Dhaka for his deep knowledge and passionate interest in the field of "Application Development" to realize our entire project.
We would also like to express our gratitude to the authority of Daffodil International University for providing a suitable environment and enough resources to complete our project and also to other faculty members and staff for their supportive mentality. We would like to thank our entire course mate in Daffodil International University, who participated in the project discussion and encouraged us while completing the course work. The app's main interface consists of two buttons, one for sending emergency messages to the numbers added by user in the number section and another for live location sharing.
Motivation
Objectives
Expected Outcomes
Features
Report Layout
We have used the business process model (BPM), use case model and logical data model to explain the infrastructure of our application. This chapter also includes
This chapter covers the entire design-related topic like how we have designed our back-end and front-end of our application, what tools we have used for designing and
BACKGROUND
- Introduction
- Related Works
- Comparative Studies
- Scope of the Problem
- Challenges
Some of the important apps are – Disaster Alert app which warns the user about an impending natural disaster, FEMA app which provides information about nearby relief and shelter centers, Zello Walkie Talkie app which has push to talk and text messaging feature. in emergencies [6]. However, we have not included so many features to make the app as easy as possible and to keep the user interface simple so that users don't have to get confused while using the app. Pressing the emergency button will only provide the user's static location, meaning the location coordinate will indicate the location where the user was when they clicked the emergency button.
If a user wants to alert the desired person with an updated location, the user must press the emergency button again. Please note that for each message alert sent, the message cost will be deducted from the user's SIM balance. Before developing the application, we thought about how to make the application effectively simple, from user registration to using all the features of the application.
REQUIREMENT SPECEFICITION
- Requirement Collection
- Android
- Reasons choosing Android
- Requirement Analysis
- Use Case Modeling and Description
- Logical Data Model
- Design requirement
Use case modeling is the way to give others an idea about what features are there in developed software and who can use those features or what credentials need to be met to use the features of the developed software. From the use case description, one will get an idea about how the application works and what functionalities the application offers to the user. In our application, user must login with a phone number to use the application.
By adding numbers to the number list, users can send emergency messages to all the added numbers. There are no prerequisites for this use case as this is the initial stage of our application. There are exceptional ways that a phone number may be invalid or the verification code may be sent incorrectly.
Users can add a phone number that will be used to send an emergency alert or remove a phone number that is not needed. As there are no limits or restrictions for adding numbers, so users can add numbers as much as users prefer. Users can modify the message that will be sent as an emergency alert during a distress situation to the numbers that users will add.
Exceptional paths are that the location can be disabled and no numbers or invalid numbers have been added. Users can log out of the application. Log out leaves the application. Users can also exit the application by clicking the exit button in the application footer.
Entities of an Entity Relationship Diagram can be people or can also be non-living things like product, system, etc.
DESIGN SPECEFICITION
- Front-end Design
- Back-end Design
- Interaction Design and User Experience
- Implementation Requirements
Users must use the number placed in the phone where the app is installed. A random six-digit number called OTP will be sent via message to the number the user used to log in. If a user is sharing a real-time location with another user, this interface will show who the user is sharing location with.
This dialog box appears after the user clicks the plus sign button at the bottom right of the number interface. By clicking the Edit button at the bottom right of the message interface, the user can customize the message. When a user clicks the Share Location button on the main interface, this dialog box pops up where a user has to provide the number of another user with whom the user wants to share the location.
This location will continue to update as long as the user does not interrupt location sharing by disabling the location or canceling location sharing. By clicking on the option with three dots in the upper right corner, the user can log out of the application. A user of an application does not need to know how that application's background processes work, and the user only sees and interacts with the front-end design.
This database is used to log users into the app and share location between users in real time. To design a better interaction for an application, there are a few things to consider such as – Possible ways for the user to interact with the interface, that give the user an idea of what the result of the action the user wants to perform, an appropriate error message that explains what the user does wrong, the response time after the user interacts with the product, organizing elements in the interface in such a way that any user can smoothly perform an action using that element [10]. User experience, or UX, covers the entire area of a product that relates to the user, such as what users want in the product, what users prefer, what users can do with the app, and what the users' limitations are when using the product.
To enhance user experience with a product, the interaction design must be done properly, the user can easily find or access every element of a product, accurate information must be provided to users about a product, and the interface must be attractive to users. All but one were satisfied with using all of the app's features. For sending emergency messages, an Internet connection is not required, but it will charge the cost of the message, which will be deducted from the user's phone balance.
IMPLEMENTATION AND TESTING
- Implementation of Database
- Implementation of Front-end Design
- Testing Implementation
- Test Results and Reports
We have used various widgets, buttons and containers to arrange the objects on the interface, among them some citable ones are mentioned below. We used this container to display a list of numbers that users will add to send emergency messages. We have used ScrollView in our application where the layout is long so that the user can scroll and see content that is not visible on the user's phone screen.
Whenever we needed to show non-editable texts to the users, we used this tool. We have used EditText in our application so that users can enter information where necessary or modify an existing text. Testing of our application is done halfway through the development phase and also in the post-development phase.
Since our application has two main functions, namely sending emergency messages and sharing live location, our main focus while testing was whether these two functions work properly or not. But for the two main functions to work properly, other sub-functions must also work properly, which means that we have not neglected to test the sub-functions of our application. In the post-development testing, we used our Android phones to perform the final test to see if all components of our application work perfectly and if there are any glitches.
We also let other users use our application so they can give feedback whether they like the application or not. If someone did not like our application, we also asked about the reasons why they did not like the application. Based on our tests, we saw that after clicking the emergency button, the application sends a static location coordinate in the numbers we added for sending emergency messages. When testing the live location sharing option, we saw that it creates an element in the shared locations list that exists in the location layout.
This location can be stopped by clicking the trash can icon on the right side of each element or by pressing the Cancel Location Sharing button on the Home layout.
IMPACT ON SOCIETY, ENVIRONMENT AND SUSTAINABILITY
- Impact on Society
- Impact on Environment
- Ethical Aspects
- Sustainability Plan
This application is spam free so users don't need to be annoyed while using this application. The interface of this application is kept very simple so that users of all ages can use this application. This application is not much featured so users don't have to struggle to find a desired feature to act.
We do not collect any private user data and any user data is used with the user's consent. This application also uses appropriate ways to inform the user what permission should be allowed for the perfect functioning of the application. Sufficient information is provided in the user interface of the application so that while interacting with the interface the user can easily understand the operation of each element in the interface and what will be the result if the user performs any action.
The persistence plan makes an application more stable and effective so that after a certain time users do not lose interest in using the application. Sustainable apps are those that are developed with new features from time to time or revamp existing features for better app effectiveness. Sustainability of applications can also be maintained by developing an application in that area where users should not be terminated after a certain period.
So it is always beneficial to have this application as we don't know when an emergency will arise. We also plan to add more features to the application in future development which will make the application more sustainable. We will try to get user review in a broad way to know what features users like and what users don't for future development, which will be a great way to make the application maintain.
CONCLUSION AND FUTURE PLAN
Discussion and Final Thoughts
Future Plan for Further Developments