Mohammad Alshayeb
King Fahd University of Petroleum and Minerals
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Mohammad Alshayeb.
Information & Software Technology | 2009
Mohammad Alshayeb
Developers and designers always strive for quality software. Quality software tends to be robust, reliable and easy to maintain, and thus reduces the cost of software development and maintenance. Several methods have been applied to improve software quality. Refactoring is one of those methods. The goal of this paper is to validate/invalidate the claims that refactoring improves software quality. We focused this study on different external quality attributes, which are adaptability, maintainability, understandability, reusability, and testability. We found that refactoring does not necessarily improve these quality attributes.
Information & Software Technology | 2015
Issam H. Laradji; Mohammad Alshayeb; Lahouari Ghouti
Abstract Context Several issues hinder software defect data including redundancy, correlation, feature irrelevance and missing samples. It is also hard to ensure balanced distribution between data pertaining to defective and non-defective software. In most experimental cases, data related to the latter software class is dominantly present in the dataset. Objective The objectives of this paper are to demonstrate the positive effects of combining feature selection and ensemble learning on the performance of defect classification. Along with efficient feature selection, a new two-variant (with and without feature selection) ensemble learning algorithm is proposed to provide robustness to both data imbalance and feature redundancy. Method We carefully combine selected ensemble learning models with efficient feature selection to address these issues and mitigate their effects on the defect classification performance. Results Forward selection showed that only few features contribute to high area under the receiver-operating curve (AUC). On the tested datasets, greedy forward selection (GFS) method outperformed other feature selection techniques such as Pearson’s correlation. This suggests that features are highly unstable. However, ensemble learners like random forests and the proposed algorithm, average probability ensemble (APE), are not as affected by poor features as in the case of weighted support vector machines (W-SVMs). Moreover, the APE model combined with greedy forward selection (enhanced APE) achieved AUC values of approximately 1.0 for the NASA datasets: PC2, PC4, and MC1. Conclusion This paper shows that features of a software dataset must be carefully selected for accurate classification of defective components. Furthermore, tackling the software data issues, mentioned above, with the proposed combined learning model resulted in remarkable classification performance paving the way for successful quality control.
Pattern Recognition | 2014
Sabri A. Mahmoud; Irfan Ahmad; Wasfi G. Al-Khatib; Mohammad Alshayeb; Mohammad Tanvir Parvez; Volker Märgner; Gernot A. Fink
Abstract A comprehensive Arabic handwritten text database is an essential resource for Arabic handwritten text recognition research. This is especially true due to the lack of such database for Arabic handwritten text. In this paper, we report our comprehensive Arabic offline Handwritten Text database (KHATT) consisting of 1000 handwritten forms written by 1000 distinct writers from different countries. The forms were scanned at 200, 300, and 600 dpi resolutions. The database contains 2000 randomly selected paragraphs from 46 sources, 2000 minimal text paragraph covering all the shapes of Arabic characters, and optionally written paragraphs on open subjects. The 2000 random text paragraphs consist of 9327 lines. The database forms were randomly divided into 70%, 15%, and 15% sets for training, testing, and verification, respectively. This enables researchers to use the database and compare their results. A formal verification procedure is implemented to align the handwritten text with its ground truth at the form, paragraph and line levels. The verified ground truth database contains meta-data describing the written text at the page, paragraph, and line levels in text and XML formats. Tools to extract paragraphs from pages and segment paragraphs into lines are developed. In addition we are presenting our experimental results on the database using two classifiers, viz. Hidden Markov Models (HMM) and our novel syntactic classifier. The database is made freely available to researchers world-wide for research in various handwritten-related problems such as text recognition, writer identification and verification, forms analysis, pre-processing, segmentation. Several international research groups/researchers acquired the database for use in their research so far.
Empirical Software Engineering | 2015
Mohammed Misbhauddin; Mohammad Alshayeb
Model-driven engineering, an emerging trend in software engineering, has enabled the use of refactoring to UML models. Numerous approaches to model refactoring, problem detection, consistency management, and tool support to automate and verify refactoring are discussed and distributed across numerous research literatures. This paper provides a systematic overview of existing research in the field of model refactoring. A total of 3,295 articles, related to the field of UML model refactoring, were extracted from well-known electronic databases. A multi-stage selection process was used to ensure proper inclusion of relevant studies for review and analysis. Ninety-four primary studies were eventually selected and analyzed based on a number of different criteria: UML models considered for refactoring, formalisms used to support refactoring at the model level, important to consider when building refactoring tool support, and the effect of refactoring on model quality. The results of this review indicate that UML model refactoring is a highly active area of research. Quite a few quality techniques and approaches have been proposed in this area, but it still has some important open issues and limitations to be addressed in future work.
international conference on frontiers in handwriting recognition | 2012
Sabri A. Mahmoud; Irfan Ahmad; Mohammad Alshayeb; Wasfi G. Al-Khatib; Mohammad Tanvir Parvez; Gernot A. Fink; Volker Märgner; Haikal El Abed
In this paper, we report our comprehensive Arabic offline Handwritten Text database (KHATT) after completion of the collection of 1000 handwritten forms written by 1000 writers from different countries. It is composed of an image database containing images of the written text at 200, 300, and 600 dpi resolutions, a manually verified ground truth database that contains meta-data describing the written text at the page, paragraph, and line levels. A formal verification procedure is implemented to align the handwritten text with its ground truth at the form, paragraph and line levels. Tools to extract paragraphs from pages and segment paragraphs into lines are developed. Preliminary experiments on Arabic handwritten text recognition are conducted using sample data from the database and the results are reported. The database will be made freely available to researchers world-wide for research in various handwritten-related problems such as text recognition, writer identification and verification, etc.
IET Software | 2011
Abdulaziz Alkhalid; Mohammad Alshayeb; Sabri A. Mahmoud
Enhancing, modifying or adapting the software to new requirements increases the internal software complexity. Software with high level of internal complexity is difficult to maintain. Software refactoring reduces software complexity and hence decreases the maintenance effort. However, software refactoring becomes quite challenging task as the software evolves. The authors use clustering as a pattern recognition technique to assist in software refactoring activities at the package level. The approach presents a computer aided support for identifying ill-structured packages and provides suggestions for software designer to balance between intra-package cohesion and inter-package coupling. A comparative study is conducted applying three different clustering techniques on different software systems. In addition, the application of refactoring at the package level using an adaptive k-nearest neighbour (A-KNN) algorithm is introduced. The authors compared A-KNN technique with the other clustering techniques (viz. single linkage algorithm, complete linkage algorithm and weighted pair-group method using arithmetic averages). The new technique shows competitive performance with lower computational complexity.
Advances in Engineering Software | 2010
Abdulaziz Alkhalid; Mohammad Alshayeb; Sabri A. Mahmoud
Improving the quality of software is a vital target of software engineering. Constantly evolving requirements force software developers to enhance, modify, or adapt software. Thus, increasing internal complexity, maintenance effort, and ultimately cost. In trying to balance between the needs to change software, maintain high quality, and keep the maintenance effort and cost low, refactoring comes up as a solution. Refactoring aims to improve a number of quality factors, among which is understandability. Enhancing understandability of ill-structured software decreases the maintenance effort and cost. To improve understandability, designers need to maximize cohesion and minimize coupling, which becomes more difficult to achieve as software evolves and internal complexity increases. In this paper, we propose a new Adaptive K-Nearest Neighbor (A-KNN) algorithm to perform clustering with different attribute weights. The technique is used to assist software developers in refactoring at the function/method level. This is achieved by identifying ill-structured software entities and providing suggestions to improve cohesion of such entities. We also compare the proposed technique with three function-level clustering techniques Single Linkage algorithm (SLINK), Complete Linkage algorithm (CLINK) and Weighted Pair-Group Method using Arithmetic averages (WPGMA). A-KNN showed competitive performance with the other three algorithms and required less computational complexity.
Software and Systems Modeling | 2015
Mohammed Misbhauddin; Mohammad Alshayeb
Use case diagrams are primary artifacts used for modeling functional requirements. Use case diagrams are part of the Unified Modeling Language (UML) suite of models that has become a de facto standard for modeling object oriented languages. Each model in this suite is described by a metamodel that dictates its syntax and semantics. The use case diagram is considered the most controversial diagram in UML. Practitioners claim that the use case diagram cannot be used as a valuable artifact for requirement analysis. The main reason behind this concern is the lack of behavioral description of a use case depicted within the model. Quite a few extensions to the use case metamodel have been proposed in literature to incorporate behavioral aspect of a use case within the metamodel. All these extensions omit a few important features like generalization and most of them can only be used for model representation and cannot be used for model analysis and evaluation. In this paper, we propose an extension to the UML use case metamodel with use case behavior specification elements. The main objective of the proposed extension is to provide a complete metamodel for use case diagrams which includes representation for all its elements and relationships in a conflict-free manner and one that includes information for model analysis, evaluation, and interchange among modeling tools. In order to include all valuable information related to a use case, a number of use case representation templates were considered for the proposed extension. Simultaneously, to enable the use case models generated based on the proposed metamodel to be used for analysis, pertinent information related to model usage in analysis such as effort estimation, use case scheduling, and use case metrics evaluation were considered from published studies, tools, and paradigms and included within the proposed metamodel.
asia-pacific software engineering conference | 2009
Karim O. Elish; Mohammad Alshayeb
Refactoring, the process of improving the design of existing code by changing its internal structure without affecting its external behavior, tends to improve software quality by improving design, improving readability, and reducing bugs. There are many different refactoring methods, each having a particular purpose and effect. Consequently, the effect of refactorings on software quality attribute may vary. Software testing is an external software quality attributes that takes lots of time and effort to make sure that the software performs as intended. In this paper, we propose a classification of refactoring methods based on their measurable effect on software testing effort. This, in turn, helps the software developers decide which refactoring methods to apply in order to optimize a software system with regard to the testing effort.
IET Software | 2011
Mohammad Alshayeb; M. Naji; Mahmoud O. Elish; Jarallah AlGhamdi
Stable software, the capability of software to evolve while preserving its design, is an important software feature that software engineers strive for. Stable software tends to reduce maintenance cost and effort. Object-oriented (OO) classes form the basic components of the software systems; hence, stable OO classes may contribute to reducing the maintenance and effort cost. The authors identified factors that affect class stability and then used these factors to propose new class stability metric (CSM). Also, the authors theoretically and empirically validated CSM. The results show that the proposed CSM is negatively correlated with the maintenance effort.