Department of Software Engineering
Permanent URI for this communityhttps://repository.nileuniversity.edu.ng/handle/123456789/38
Browse
Item SIDELOBE REDUCTION USING WAVELET NEURAL NETWORK FOR BINARY CODED PULSE COMPRESSION(ARPN Journal of Engineering and Applied Sciences, 2016-01-02) Ibrahim Anka SalihuPulse compression technique is a popular technique used for improving waveform in radar systems. Series of undesirable sidelobes usually accompany the technique that may mask small targets or create false targets. This paper proposed a new approach for pulse compression using Feed-forward Wavelet Neural Network (WNN) with one input layer, one output layer and one hidden layer that consists of three neurons. Networks of 13-bit Barker code and 69-bit Barker code were used for the implementation. WNN-based back-propagation (BP) learning algorithm was used in training the networks. These networks used Morlet and sigmoid activation functions in hidden and output layer respectively. The simulation results from the proposed method shows better performance in sidelobe reduction where more than 100 dB output peak sidelobe level (PSL) is achieved, compared to autocorrelation function (ACF). Furthermore, the results show that WNN approach has significant improvement in noise reduction performance and Doppler shift performance compared to Recurrent Neural Network (RNN) and Multi-Layer Perceptron (MLP).Item Reverse Engineering Mobile Apps for Model Generation Using a Hybrid Approach(Journal of Telecommunication, Electronic and Computer Engineering, 2016-02-02) Ibrahim Anka SalihuThe popularity of mobile devices is ever increasing which led to rapid increase in the development of mobile applications. Model-Based testing can improve the quality of mobile application but the models are not always available or are of inadequate quality. Reverse engineering approaches are used to automatically generate model from the GUI of mobile applications for model-based testing. This paper proposes a hybrid approach for reverse engineering mobile applications which exploit the capabilities of both static and dynamic approaches while trying to maximize the quality of the generated models. The insight of this approach is to use static analysis on app’s source to identify supported events. The generated events can be used to dynamically explore an app at run-time to generate a state model of the app’s GUI. The preliminary results from our approach indicated that the technique can generate high quality models from android apps.Item Systematic Exploration of Android Apps’ Events for Automated Testing(ACM, 2016-11-16) Ibrahim Anka SalihuThe popularity of mobile devices is ever increasing which led to rapid increase in the development of mobile applications. GUI testing has been an effective means of validating Android apps. However, it still suffers a strong challenge about how to explore event sequence in the GUIs. This paper proposes a hybrid approach for systematic exploration of mobile apps which exploit the capabilities of both static and dynamic approaches while trying to improve app’s state exploration. Our approach is based static analysis on app’s bytecode to extract events supported by an app. The generated events are used to dynamically explore an app at run-time. The experimental results show that our approach can explore significant number of app’s state for the generation of high quality test case.Item A Hybrid Approach for Reverse Engineering GUI Model from Android Apps for Automated Testing(Journal of Telecommunication, Electronic and Computer Engineering, 2017-02-02) Ibrahim Anka SalihuNowadays, smartphone users are increasingly relying on mobile applications to complete most of their daily tasks. As such, mobile applications are becoming more and more complex. Therefore, software testers can no longer rely on manual testing methods to test mobile applications. Automated model-based testing techniques are recently used to test mobile applications. However, the models generated by existing techniques are of insufficient quality. This paper proposed a hybrid technique for reverse engineering graphical user interface (GUI) model from mobile applications. It performs static analysis of application’s bytecode to extract GUI information followed by a dynamic crawling to systematically explore and reverse engineer a model of the application under test. A case study was performed on real-world mobile apps to evaluate the effectiveness of the technique. The results showed that the proposed technique can generate a model with high coverage of mobile apps behaviour.Item Comparative Study of Mobile Applications Testing Techniques for Context Events(American Scientific Publisher, 2018-02-02) Ibrahim Anka SalihuThe increase of mobile devices with rich innovative features has become an enabler for developing mobile applications (mobile apps) that offer users an advance and extremely-localized context-aware content. Mobile apps receive and process events from both internal and external sources due to the changing context to produce the appropriate output. These events need to be tested to ensure that an application behaves correctly. The goal of this study is to present a comparative study of mobile apps testing approaches focusing on context events. We defined the comparison criteria that comprise six key points, events identification, method of analysing mobile apps, the testing technique, classification of context event, validation method and evaluation metrics to enable us answer the research questions. Several approaches from the literature were analysed to evaluate their effectiveness. Results from our study show that the popular approaches offer limited coverage of mobile app context events. This is because they consider only a few selected context events in mobile apps for test case generation. This study identifies the limitations and the possibilities for improving context events coverage for effective testing of mobile apps.Item A Static-dynamic Approach for UI Model Generation for Mobile Applications(IEEE, 2018-02-02) Ibrahim Anka SalihuNowadays, smartphone users are increasingly relying on mobile applications to complete most of their daily tasks. To ensure acceptable quality and to meet its specifications, mobile apps need to be tested thoroughly. As testing mobile apps becomes challenging and tedious, test automation can alleviate this process. Model-based testing is an approach for test automation that is popularly used to test mobile applications. In order to benefit from model-based testing, there is a need for technique and tool for automated model generation. Therefore, this paper presents a hybrid approach for automated User Interface (UI) model generation for mobile applications. It performs static analysis of application’s bytecode to extract UI information, followed by a dynamic crawling to systematically explore and reverse engineer a model of the application under test. We then evaluate our approach on several open-source mobile applications. The results showed that our approach can generate a high-quality model from mobile applications.Item Test Case Generation from Android Mobile Applications Focusing on Context Events(Association for Computing Machinery, 2018-02-02) Ibrahim Anka SalihuNowadays mobile apps are developed to address more critical areas of people’s daily computing needs, which bring concern on the applications’ quality. Today’s Mobile apps processed not only the traditional GUI events but also accept and react to constantly varying context events which may have an impact on the application’s behaviour. To build high quality and more reliable applications, there is a need for effective testing techniques to test apps before release. Most of recent testing technique focuses on GUI events only making it difficult to identify other defects in the changes that can be inclined by the context in which an application runs. This paper proposed an approach for testing mobile apps considering the two sets of events: GUI events which we identified through static analysis of bytecode and context events obtained from analysis of manifest.xml file. Results from the experimental evaluation indicated that our approach is effective in identifying and testing context events.Item AMOGA: A Static-Dynamic Model Generation Strategy for Mobile Apps Testing(IEEE, 2019-01-31) Ibrahim Anka SalihuIn the past few years, mobile devices have been increasingly replacing traditional computers, as their capabilities, such as CPU computation, memory, RAM size, and many more, are being enhanced almost to the level of conventional computers. These capabilities are being exploited by mobile apps developers to produce apps that offer more functionalities and optimized performance. To ensure acceptable quality and to meet their specifications (e.g., design), mobile apps need to be tested thoroughly. As the testing process is often tedious, test automation can be the key to alleviating such laborious activities. In the context of the Android-based mobile apps, researchers and practitioners have proposed many approaches to automate the testing process mainly on the creation of the test suite. Although useful, most existing approaches rely on reverse engineering a model of the application under test for test case creation. Often, such approaches exhibit a lack of comprehensiveness, as the application model does not capture the dynamic behavior of the applications extensively due to the incompleteness of reverse engineering approaches. To address this issue, this paper proposes AMOGA, a strategy that uses a hybrid, static-dynamic approach for generating a user interface model from mobile apps for model-based testing. AMOGA implements a novel crawling technique that uses the event list of UI element associated with each event to dynamically exercise the events ordering at the run time to explore the applications’ behavior. An experimental evaluation was performed to assess the effectiveness of our strategy by measuring the code coverage and the fault detection capability through the use of mutation testing concept. The results of the experimental assessment showed that AMOGA represents an alternative approach for model-based testing of mobile apps by generating comprehensive models to improve the coverage of the applications. The strategy proved its effectiveness by achieving high code coverage and mutation score for different applicationsItem A User Readiness Model of Social Media for Learning among Polytechnic Students in Nigeria(Path of Science, 2019-06-30) Ibrahim Anka SalihuThe adoption of Internet resources for learning continues to grow in the world today. Despite the abundant benefit of utilizing social media due to the growth of web 2.0, an internet resource for communication and interaction, its use has not been fully embraced as a teaching tool in Nigeria. Social media is becoming a prominent communication tool and found to be facilitating teaching and learning activities among students. However, the user readiness of social media in learning by the students has been challenging. Despite the wide acceptance of social media (such as Facebook, Twitter, and WhatsApp, e.t.c.) amongst Nigerian polytechnic students, they do not utilize it for academic pursuit. This study examined the Use of Social Media among students in Nigerian Polytechnics. The main objective of this study is to find out the user readiness’ factors that influence the use of social media by the students in Nigerian Polytechnic. The evaluation results show that social media is an indispensable Internet platform among Nigerian Polytechnic students.Item TEGDroid: Test Case Generation Approach for Android Apps Considering Context and GUI Events(International Journal on Advanced Science Engineering Information Technology, 2020-02-02) Ibrahim Anka SalihuThe advancement in mobile technologies has led to the production of mobile devices (e.g. smartphone) with rich innovative features. This has enabled the development of mobile applications that offer users an advanced and extremely localized context-aware content. The recent dependence of people on mobile applications for various computational needs poses a significant concern on the quality of mobile applications. In order to build a high quality and more reliable applications, there is a need for effective testing techniques to test the applications. Most existing testing technique focuses on GUI events only without sufficient support for context events. This makes it difficult to identify other defects in the changes that can be inclined by context in which an application runs. This paper presents an approach named TEGDroid for generating test case for Android Apps considering both context and GUI Events. The GUI and context events are identified through the static analysis of bytecode, and the analysis of app’s permission from the XML file. An experiment was performed on real world mobile apps to evaluate TEGDroid. Our experimental results show that TEGDroid is effective in identifying context events and had 65%-91% coverage across the eight selected applications. To evaluate the fault detection capability of this approach, mutation testing was performed by introducing mutants to the applications. Results from the mutation analysis shows that 100% of the mutants were killed. This indicates that TEGDroid have the capability to detect faults in mobile apps.Item Design and Implementation of a Mobile Library Management System for Improving Service Delivery(Path of Science, 2021-02-02) Ibrahim Anka SalihuA mobile library management system provides a more efficient way of managing library processes and rendering effective library services irrespective of time and place. This research work aimed to develop a Mobile Library Management System for the Nile University of Nigeria Library to overcome the challenges that hinder the librarians from managing the library processes on the go. The android mobile library management system was developed using Android Studio, HTML, CSS, PHP, and MySQLi database. Service Responsibility Table was used in eliciting and documenting the user’s requirements for the library management system. The proposed Android-based mobile library system was evaluated through a survey by the librarians. The evaluation has shown that the proposed system is capable of complementing the existing library management systems.Item Development of Hausa dataset a baseline for speech recognition(Data in Brief, 2022-01-10) Umar Adam Ibrahim; Moussa Mahamat Boukar; Muhammed Aliyu SuleimanThe Hausa language read-speech dataset was created by recording native Hausa speakers. The recording took place at Nile university of Nigeria audio studio and radio broadcasting studio. The recorded dataset was segmented into unigram and bigram. The Hausa speech dataset contain 47hr of recorded audio speech. The dataset can be used for automatic speech recognition, speech synthesis, Text-to-Speech and speech-to-text applicationItem Development of User Management in Ihya Digital Ecosystem Using Iterative Incremental Method(International Conference Advancement in Data Science, E-learning and Information System, 2022-02-02) Ibrahim Anka SalihuInformation systems have an essential role in the development of technology and information in Indonesia. Information systems are employed and utilized in many facets of society and organizations. Digitizing and utilizing this information system will often form an integrated relationship between several digital sectors into an ecosystem or what is commonly called a digital ecosystem. Digital ecosystem provides benefits for users by exchanging data between systems within it since only one user account could access several systems or services in the ecosystem. The development of user management in the digital ecosystem will serve as a solution to accommodate the increasing number of users of the digital ecosystem. Iterative incremental development methods are used in the development of user management in Ihya digital ecosystem. The system was also tested using scenario tests, user acceptance tests, and load tests. Based on the results of the tests, the Ihya digital ecosystem user management module has met user needs with a User Acceptance Test value of 82.5%. Further development can be done in this research, including using APIs in the data exchange process and adding a two-factor authentication feature to improve data security.Item Automatic Classification of Equivalent Mutants in Mutation Testing of Android Applications(MDPI, 2022-04-14) Bilkisu Muhammad-Bello; Ibrahim Anka SalihuSoftware and symmetric testing methodologies are primarily used in detecting software defects, but these testing methodologies need to be optimized to mitigate the wasting of resources. As mobile applications are becoming more prevalent in recent times, the need to have mobile applications that satisfy software quality through testing cannot be overemphasized. Testing suites and software quality assurance techniques have also become prevalent, which underscores the need to evaluate the efficacy of these tools in the testing of the applications. Mutation testing is one such technique, which is the process of injecting small changes into the software under test (SUT), thereby creating mutants. These mutants are then tested using mutation testing techniques alongside the SUT to determine the effectiveness of test suites through mutation scoring. Although mutation testing is effective, the cost of implementing it, due to the problem of equivalent mutants, is very high. Many research works gave varying solutions to this problem, but none used a standardized dataset. In this research work, we employed a standard mutant dataset tool called MutantBench to generate our data. Subsequently, an Abstract Syntax Tree (AST) was used in conjunction with a tree-based convolutional neural network (TBCNN) as our deep learning model to automate the classification of the equivalent mutants to reduce the cost of mutation testing in software testing of android applications. The result shows that the proposed model produces a good accuracy rate of 94%, as well as other performance metrics such as recall (96%), precision (89%), F1-score (92%), and Matthew’s correlation coefficients (88%) with fewer False Negatives and False Positives during testing, which is significant as it implies that there is a decrease in the risk of misclassification.Item Review of Machine Learning Techniques For Class Imbalance Medical Dataset(International Conference on Multidisciplinary Engineering and Applied Science, 2023-02-02) Ibrahim Anka SalihuData imbalance threatens a medical dataset where the dominant class is typically viewed as unfavorable. In contrast, the minority class is supposed to be the positive one, affecting the machine learning prediction performance. This aims to examine how resampling strategies in Machine Learning(ML) have recently been used in medical data sets. Many researchers used the preprocessing stage's data-level approach to resample the imbalanced medical data. Thirty-two sources were reviewed in which data level techniques of balancing the imbalanced data were applied to medical datasets spanning 2018 to 2023, with oversampling methods outperforming the under-sampling methods.Item Comparative Analysis of Fully Automated Testing Techniques for Android Applications(International Conference on Multidisciplinary Engineering and Applied Sciences (ICMEAS-2023), 2023-02-02) Ibrahim Anka SalihuThe software testing community has continued to research and develop new ways of testing Android mobile applications to ensure an application function as expected and serves its purpose. Given that every testing technique/tool has its strengths and weaknesses. This study aims to present a comparative analysis of fully automated techniques which automatically generate and execute test cases concurrently during runtime. We selected 10 fully automated techniques published from 2013 to 2023 techniques to identify the similarities and differences that exist among them. We clearly define the comparative criteria (such as the exploration method, systematic method, termination criterion, extraction criterion, and scheduling method) used for comparing the selected techniques. The analysis shows that most fully automated techniques adopt an active learning exploration approach for exploring the application under test (AUT). We also observed that only the techniques utilizing the active learning approach are capable of modelling and abstracting the graphic user interface (GUI) of the AUT, others randomly select events to be fired into the AUT.Item Mutation Testing Techniques for Android Applications: A Comparative Study(International Conference on Multidisciplinary Engineering and Applied Science, 2023-02-02) Ibrahim Anka SalihuMobile applications are becoming increasingly used to achieve various computing needs. Hence, it is essential to guarantee quality of the applications. Software testing has been the main activity for ensuring the quality of software, however, it is a critical and costly activity. Furthermore, code coverage is commonly used as metric for verifying the effectiveness of testing technique. However, numerous researchers and experts claimed that considering code coverage only to ascertain the testing quality is not enough to ensure quality of apps. In view of this, mutation testing has been introduced to complement the procedure by assuring that apps behave as expected and are released free of faults. Several techniques/tools were proposed based on different syntax and mutation operators. This study presents a comparative study of six (6) mutation techniques/tools for Android applications to highlight their strengths and weakness which will give an insight to researchers on the directions for further research