Submitted:
12 January 2025
Posted:
13 January 2025
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Literature Review
3. Problem Statement
Use Case Diagram
4. Use Case Descriptions
5. Use Case Specifications
6. Prototype

7. Methodology and Validity
Software Testing Strategy
7.1. Identifying Requirements & Objectives
7.2. Unit Testing
7.3. Integration Testing
7.5. System Testing
7.6. Acceptance Testing
7.7. Black-Box Testing
7.8. White-Box Testing
7.9. Testing Conclusion
7.10. Test Plan
| Use Case | Test Case | Description | Procedure | Expected Results |
|---|---|---|---|---|
|
UC01: Login |
TC01-1: Successful login |
User logs in successfully Providing correct username and password |
Users put their Login details which is their correct username and password for logging in | User should be logged in as User and username should be visible at the top and the so the user can experience all the facilities of the portal and website |
|
TC01-2: System Error |
The system has some technical or software related errors or the server is down | User tries to login to the website or the portal | Due to system error or the server is down, the user gets a unsuccessful login and cant access the website or the portal |
| Use Case | Test Case | Description | Procedure | Expected Results |
|---|---|---|---|---|
|
UC02: Place Order |
TC01: Successfully placed the order. |
User will place the order he desires. | The user requests the “place order” he has placed. The cashier “accepts” or “denies” the requested “place order”. | Our expected result is that the cashier sends their placed order to the appropriate chef who then begins to prepare the order. Afterwards it is delivered to the customer in the method they desired namely “Dine in”, “Takeaway”, and “Home Delivery”. |
|
TC02: Order Canceled |
The user cancels his order |
The users may change their mind. So, there will be an option to “cancel “the order. | Once the order is canceled, the user should see a message in the app “The order is canceled successfully” | |
|
TC03: System Error |
Sometimes there can be an error in the system, and so the order may not be placed online. | Systems may get an error for various reasons, such as overloading, bugs in the code etc. In this case, the order might not be placed successfully. |
Users should see a message in the app “Sorry, something's wrong, the order cannot be placed at the moment. Please try again” |
8. Risk Management Plan
8.1. Identify Risks
8.2. Assess Risks
8.3. Contingency Plans
8.4. Monitoring and Control
8.9. Plan for Maintenance and Evolution
8.9.1. Establish Maintenance Protocols
8.9.2. Integration of User Feedback
8.9.3. Version Control and Documentation
8.9.4. Scalability and Adaptability
8.9.5. Continuous Improvement
8.10. Evolution Plan
8.10.1. Personalization Feature
8.10.2. Chatbot Feature
10.2.3. Gamification Feature
10.2.4. Multilingual Feature
Conclusion
8. Appendix
8.1. List of Figures
- Figure 1: Our Use Case Diagram
- Figure 2: Sequence Diagram for Order Placement System
- Figure 3: Sequence Diagram for Login System
- Figure 4: Activity Diagram for our software
- Figure 5: State Chart Diagram for our software
- Figure 6: [From left to right, top to bottom] sequence of interactions in our User Interface Design
- Figure 7: Gannt Chart for our Project Management Timeline
- Figure 8: Diagrams explaining the role of Modules in Unit Testing
- Figure 9: Diagram explaining the role of Modules in Integration Testing
8.2. List of Tables
- Table 1: Use Case descriptions.
- Table 2: Use Case “Login” Test Plan
- Table 3: Use Case “Place Order” Test Plan
8.3. Link to our UI Mock up on Wix.com
References
- Elmasri, R., & Navathe, S. B. (2015). Fundamentals of database systems. Pearson.
- Connolly, T., & Begg, C. (2014). Database systems: A practical approach to design, implementation, and management. Pearson Education.
- S, B. (2022). What is Scrum methodology? & Scrum project management. Nimble. Retrieved from https://www.nimblework.com/agile/scrum-methodology/.
- GeeksforGeeks. (2019). Agile software testing. GeeksforGeeks. Retrieved from https://www.geeksforgeeks.org/agile-software-testing/.
- Bhakhra, S. (2019). Scrum (software development). GeeksforGeeks. Retrieved from https://www.geeksforgeeks.org/scrum-software-development/.
- Shah, K. (2021). Risk management in software development: A complete guide. Third Rock Techkno. Retrieved from https://www.thirdrocktechkno.com/blog/risk-management-in-software-development-a-complete-guide/.
- CodiLime. (2022). Risk management in software development projects. CodiLime. Retrieved from https://codilime.com/blog/risk-management-in-software-development-projects/.
- Chesti, I. A., Humayun, M., Sama, N. U., & Jhanjhi, N. Z. (2020, October). Evolution, mitigation, and prevention of ransomware. In 2020 2nd International Conference on Computer and Information Sciences (ICCIS) (pp. 1-6). IEEE.
- Alkinani, M. H., Almazroi, A. A., Jhanjhi, N. Z., & Khan, N. A. (2021). 5G and IoT based reporting and accident detection (RAD) system to deliver first aid box using unmanned aerial vehicle. Sensors, 21(20), 6905. [CrossRef]
- Babbar, H., Rani, S., Masud, M., Verma, S., Anand, D., & Jhanjhi, N. (2021). Load balancing algorithm for migrating switches in software-defined vehicular networks. Computational Materials and Continua, 67(1), 1301-1316. [CrossRef]
- Alferidah, D. K., & Jhanjhi, N. Z. (2020, October). Cybersecurity impact over big data and IoT growth. In 2020 International Conference on Computational Intelligence (ICCI) (pp. 103-108). IEEE.
- Hamilton, T. (2019). What is software testing? Guru99.com. Retrieved from https://www.guru99.com/software-testing-introduction-importance.html.
- Yasar, K. (2022). What is software testing? Definition, types, and importance. WhatIs.com. Retrieved from https://www.techtarget.com/whatis/definition/software-testing.
- Athuraliya, A. (2022). Sequence diagram tutorial: Complete guide with examples. Creately. Retrieved from https://creately.com/guides/sequence-diagram-tutorial/.
- Lucidchart. (2019). How to draw a sequence diagram in UML. Lucidchart. Retrieved from https://www.lucidchart.com/pages/how-to-draw-a-sequence-diagram-in-uml.
- Athuraliya, A. (2022). The easy guide to UML activity diagrams. Creately. Retrieved from https://creately.com/guides/activity-diagram-tutorial/.
- Lucidchart. (2023). UML activity diagram tutorial. Lucidchart. Retrieved from https://www.lucidchart.com/pages/uml-activity-diagram.
- Tutorialspoint. (2019). UML - Statechart diagrams. Tutorialspoint. Retrieved from https://www.tutorialspoint.com/uml/uml_statechart_diagram.htm.
- ClickUp Blog. (2021). How to make a Gantt chart in Excel? ClickUp Blog. Retrieved from https://clickup.com/blog/gantt-chart-excel/.
- Yasar, K. (2022). What is software testing? Definition, types, and importance. WhatIs.com. Retrieved from https://www.techtarget.com/whatis/definition/software-testing.
- Hamilton, T. (2019). What is software testing? Introduction, definition, basics & types. Guru99.com. Retrieved from https://www.guru99.com/software-testing-introduction-importance.html.
- GeeksforGeeks. (2019). Agile methodology in software testing. GeeksforGeeks. Retrieved from https://www.geeksforgeeks.org/agile-methodology-in-software-testing/.
- S, B. (2022). What is Scrum methodology? & Scrum project management. Nimble.
- CodiLime. (2022). Risk management in software development projects. Retrieved from https://codilime.com/blog/risk-management-in-software-development-projects/.
- Konatham, B., Simra, T., Amsaad, F., Ibrahem, M. I., & Jhanjhi, N. Z. (2024). A Secure Hybrid Deep Learning Technique for Anomaly Detection in IIoT Edge Computing. Authorea Preprints.
- GeeksforGeeks. (2019). What is risk management? GeeksforGeeks. Retrieved from.
- Srinivasan, K., Garg, L., Chen, B. Y., Alaboudi, A. A., Jhanjhi, N. Z., Chang, C. T., ... & Deepa, N. (2021). Expert System for Stable Power Generation Prediction in Microbial Fuel Cell. Intelligent Automation & Soft Computing, 30(1). [CrossRef]
- Humayun, M., Niazi, M., Jhanjhi, N. Z., Mahmood, S., & Alshayeb, M. (2023). Toward a readiness model for secure software coding. Software: Practice and Experience, 53(4), 1013-1035. [CrossRef]
- Mughal, M. A., Ullah, A., Cheema, M. A. Z., Yu, X., & Jhanjhi, N. Z. (2024). An intelligent channel assignment algorithm for cognitive radio networks using a tree-centric approach in IoT. Alexandria Engineering Journal, 91, 152-160. [CrossRef]









| Use Case Name | Basic Flow @ Happy Path | Alternate Flow @ Alternate Path | Exception Flow @ Exception Pathway |
|---|---|---|---|
| UC01: Login |
The user successfully logged in with correct username and password | The login method was unsuccessful because of the wrong username or wrong password. | User account does not exist, so user have to create a new account. |
| UC02: Place Order |
The customer requests their desired food by placing an order from our ordering system | The customer cancels the order | System error, so order cannot be placed |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).