Mohamed Almorsy Abdelrazek

Prof. Dr. Mohamed Almorsy Abdelrazek


Research Focus & Metrics

Academic Career Length

12Years (2015-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
7 November 2018
Verified
Book Chapter
Closed access
PDF file
PLPhu Lai
Phu Lai
QHQiang He
Qiang He
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
FCFeifei Chen
Feifei Chen
JHJohn Hosking
John Hosking
YYYun Yang
Yun Yang

13 August 2020 in IEEE Transactions on Parallel and Distributed Systems
Verified
Journal Article
Closed access
XXXiaoyu Xia
Xiaoyu Xia
FCFeifei Chen
Feifei Chen
QHQiang He
Qiang He
JGJohn Grundy
John Grundy
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
HJHai Jin
Hai Jin
In the edge computing (EC) environment, edge servers are deployed at base stations to offer highly accessible computing and storage resources to nearby app users. From the app vendor's perspective, caching data on edge servers can ensure low latency in app users' retrieval of app data. However, an edge server normally owns limited resources due to its limited size. In this paper, we investigate the collaborative caching problem in the EC environment with the aim to minimize the system cost including data caching cost, data migration cost, and quality-of-service (QoS) penalty. We model this collaborative edge data caching problem (CEDC) as a constrained optimization problem and prove that it is NP-complete. We propose an online algorithm, called CEDC-O, to solve this CEDC problem during all time slots. CEDC-O is developed based on Lyapunov optimization, works online without requiring future information, and achieves provable close-to-optimal performance. CEDC-O is evaluated on a real-world data set, and the results demonstrate that it significantly outperforms two representative approaches.

14 April 2024
Verified
Conference Paper
Open access
SBScott Barnett
Scott Barnett
SKStefanus Kurniawan
Stefanus Kurniawan
STSrikanth Thudumu
Srikanth Thudumu
ZBZach Brannelly
Zach Brannelly
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
Software engineers are increasingly adding semantic search capabilities to applications using a strategy known as Retrieval Augmented Generation (RAG). A RAG system involves finding documents that semantically match a query and then passing the documents to a large language model (LLM) such as ChatGPT to extract the right answer using an LLM. RAG systems aim to: a) reduce the problem of hallucinated responses from LLMs, b) link sources/references to generated responses, and c) remove the need for annotating documents with meta-data. However, RAG systems suffer from limitations inherent to information retrieval systems and from reliance on LLMs. In this paper, we present an experience report on the failure points of RAG systems from three case studies from separate domains: research, education, and biomedical. We share the lessons learned and present 7 failure points to consider when designing a RAG system. The two key takeaways arising from our work are: 1) validation of a RAG system is only feasible during operation, and 2) the robustness of a RAG system evolves rather than designed in at the start. We conclude with a list of potential research directions on RAG systems for the software engineering community.


21 July 2020 in IEEE Transactions on Parallel and Distributed Systems
Verified
Journal Article
Closed access
XXXiaoyu Xia
Xiaoyu Xia
FCFeifei Chen
Feifei Chen
QHQiang He
Qiang He
JGJohn C. Grundy
John C. Grundy
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
HJHai Jin
Hai Jin
Edge computing, as an extension of cloud computing, distributes computing and storage resources from centralized cloud to distributed edge servers, to power a variety of applications demanding low latency, e.g., IoT services, virtual reality, real-time navigation, etc. From an app vendor's perspective, app data needs to be transferred from the cloud to specific edge servers in an area to serve the app users in the area. However, according to the pay-as-you-go business model, distributing a large amount of data from the cloud to edge servers can be expensive. The optimal data distribution strategy must minimize the cost incurred, which includes two major components, the cost of data transmission between the cloud to edge servers and the cost of data transmission between edge servers. In the meantime, the delay constraint must be fulfilled - the data distribution must not take too long. In this paper, we make the first attempt to formulate this Edge Data Distribution (EDD) problem from the app vendor's perspective and prove its NP-hardness. We propose an optimal approach named EDD-IP and an O(k)-approximation algorithm named EDD-A. EDD-IP and EDD-A are evaluated on a real-world dataset and the results demonstrate that they significantly outperform three representative approaches.

20 March 2018 in IEEE Access
Verified
Journal Article
Open access
Shamsul HudaShamsul Huda
Shamsul Huda
KLKevin Liu
Kevin Liu
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
AIAmani Ibrahim
Amani Ibrahim
SASultan Alyahya
Sultan Alyahya
Shafiq AhmadShafiq Ahmad
Shafiq Ahmad
Software systems are now ubiquitous and are used every day for automation purposes in personal and enterprise applications; they are also essential to many safety-critical and mission-critical systems, e.g., air traffic control systems, autonomous cars, and SCADA systems. With the availability of massive storage capabilities, high speed Internet, and the advent of Internet of Things (IoT) devices, modern software systems are growing in both size and complexity. Maintaining a high quality of such complex systems while manually keeping the error rate at a minimum is a challenge. Therefore, automated detection of faulty components in a software system is important during software development and also post-delivery. Fault detection models usually needs to be trained on a labeled-balanced dataset with both faulty and non-faulty samples. Earlier work, e.g. Mohsin et al. (2016), showed that most real fault detection training dataset are imbalanced. Thereby, the trained model gets over-fitted and classifies faulty components as non-faulty components. The consequence of a high false negative rate is cumulative and results in generating more errors when using the model in other software systems – never seen before, which is very expensive. In this paper, we propose a software defect prediction ensemble model which considers the class imbalance problem in real software datasets. We use different oversampling techniques to build an ensemble classifier that can reduce the effect of low minority samples in the defective data. The proposed approach is verified using PROMISE software engineering dataset. The results show that our ensemble oversampling technique can more greatly reduce the false negative rate compared to the standard classification techniques and identify the faulty components more accurately resulting in a less expensive detection system (lowering the rate of non-faulty predictions of faulty modules).