Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Ahmed Al-Emran is active.

Publication


Featured researches published by Ahmed Al-Emran.


Empirical Software Engineering | 2007

A flexible method for software effort estimation by analogy

Jingzhou Li; Guenther Ruhe; Ahmed Al-Emran; Michael M. Richter

Effort estimation by analogy uses information from former similar projects to predict the effort for a new project. Existing analogy-based methods are limited by their inability to handle non-quantitative data and missing values. The accuracy of predictions needs improvement as well. In this paper, we propose a new flexible method called AQUA that is able to overcome the limitations of former methods. AQUA combines ideas from two known analogy-based estimation techniques: case-based reasoning and collaborative filtering. The method is applicable to predict effort related to any object at the requirement, feature, or project levels. Which are the main contributions of AQUA when compared to other methods? First, AQUA supports non-quantitative data by defining similarity measures for different data types. Second, it is able to tolerate missing values. Third, the results from an explorative study in this paper shows that the prediction accuracy is sensitive to both the number N of analogies (similar objects) taken for adaptation and the threshold T for the degree of similarity, which is true especially for larger data sets. A fixed and small number of analogies, as assumed in existing analogy-based methods, may not produce the best accuracy of prediction. Fourth, a flexible mechanism based on learning of existing data is proposed for determining the appropriate values of N and T likely to offer the best accuracy of prediction. New criteria to measure the quality of prediction are proposed. AQUA was validated against two internal and one public domain data sets with non-quantitative attributes and missing values. The obtained results are encouraging. In addition, acomparative analysis with existing analogy-based estimation methods was conducted using three publicly available data sets that were used by these methods. Intwo of the three cases, AQUA outperformed all other methods.


empirical software engineering and measurement | 2007

Impact Analysis of Missing Values on the Prediction Accuracy of Analogy-based Software Effort Estimation Method AQUA

Jingzhou Li; Ahmed Al-Emran; Guenther Ruhe

Effort estimation by analogy (EBA) is often confronted with missing values. Our former analogy- based method AUQA is able to tolerate missing values in the data set, but it is unclear how the percentage of missing values impacts the prediction accuracy and if there is an upper bound for how big this percentage might become in order to guarantee the applicability of AQUA. This paper investigates these questions through an impact analysis. The impact analysis is conducted for seven data sets being of different size and having different initial percentages of missing values. The major results are that (i) we confirm the intuition that the more missing values, the poorer the prediction accuracy of AQUA; (ii) there is a quadratic dependency between the prediction accuracy and the percentage of missing values; and (Hi) the upper limit of missing values for the applicability of AQUA is determined as 40%. These results are obtained in the context of AQUA. Further analysis is necessary for other ways of applying EBA, such as using different similarity measures or analogy adaptation methods from those used in AQUA. For that purpose, the experimental design in this study can be adapted.


Information & Software Technology | 2010

Studying the impact of uncertainty in operational release planning - An integrated method and its initial evaluation

Ahmed Al-Emran; Puneet Kapur; Dietmar Pfahl; Guenther Ruhe

Context: Uncertainty is an unavoidable issue in software engineering and an important area of investigation. This paper studies the impact of uncertainty on total duration (i.e., make-span) for implementing all features in operational release planning. Objective: The uncertainty factors under investigation are: (1) the number of new features arriving during release construction, (2) the estimated effort needed to implement features, (3) the availability of developers, and (4) the productivity of developers. Method: An integrated method is presented combining Monte-Carlo simulation (to model uncertainty in the operational release planning (ORP) process) with process simulation (to model the ORP process steps and their dependencies as well as an associated optimization heuristic representing an organization-specific staffing policy for make-span minimization). The method allows for evaluating the impact of uncertainty on make-span. The impact of uncertainty factors both in isolation and in combination are studied in three different pessimism levels through comparison with a baseline plan. Initial evaluation of the method is done by an explorative case study at Chartwell Technology Inc. to demonstrate its applicability and its usefulness. Results: The impact of uncertainty on release make-span increases - both in terms of magnitude and variance - with an increase of pessimism level as well as with an increase of the number of uncertainty factors. Among the four uncertainty factors, we found that the strongest impact stems from the number of new features arriving during release construction. We have also demonstrated that for any combination of uncertainty factors their combined (i.e., simultaneous) impact is bigger than the addition of their individual impacts. Conclusion: The added value of the presented method is that managers are able to study the impact of uncertainty on existing (i.e., baseline) operational release plans pro-actively.


product focused software process improvement | 2007

Operational planning, re-planning and risk analysis for software releases

Ahmed Al-Emran; Dietmar Pfahl

Software release planning takes place on strategic and operational levels. Strategic release planning aims at assigning features to subsequent releases such that technical, resource, risk and budget constraints are met. Operational release planning focuses on the realization of a single software release. Its purpose is to assign resources to feature development tasks such that total release duration is minimized under given process and project constraints. Re-planning becomes necessary on operational level due to addition or deletion of features during release development, or due to changes in the workforce. The allocation of resources to feature development tasks may depend on the accurate estimation of planning parameters such as feature size, developer productivity or development task dependencies. Risk analysis can help assess the vulnerability of a chosen release plan due to these dependencies. This paper presents a simulation-based approach to planning, re-planning and risk analysis of software releases on operational level. The core element of the approach is the process simulation model REPSIM-2 (Release Plan Simulator, Version 2). We describe the functionality of REPSIM-2 and illustrate its usefulness for planning, re-planning and risk analysis through application scenarios.


requirements engineering | 2010

Decision Support for Product Release Planning Based on Robustness Analysis

Ahmed Al-Emran; Dietmar Pfahl; Guenther Ruhe

Decision-making in requirements engineering often needs to be done in the presence of uncertainty. Rigorous methods can help to increase the probability of making the most appropriate decisions under the given circumstances. Robustness is a measure for the degree of stability of a solution in case of changes in the problem parameters. This paper presents a method (called DECIDERelease) that applies simulation-based analysis and multi-criteria decision analysis on top of the existing strategic release planning approach EVOLVE*. The purpose of DECIDERelease is to qualify decision-making by pro-actively exploring the robustness of the operational plans of upcoming releases. Based on this analysis, the strategic release plan that is the most robust against assumed changes in planning parameters at operational level can be selected. As a proof-of-concept, the applicability of DECIDERelease is demonstrated by an illustrative case study. Results from a survey administered to managers and engineers in industry indicate that the proposed method is perceived as useful in practice.


Software Process: Improvement and Practice | 2007

A System Dynamics Simulation Model for Analyzing the Stability of Software Release Plans

Dietmar Pfahl; Ahmed Al-Emran; Günther Ruhe

Release planning for incremental software development assigns features to releases such that most important technical, resource, risk and budget constraints are met. The research presented in this paper is an element of a three-staged procedure. In addition to an existing method for (i) strategic release planning that maps requirements to subsequent releases and (ii) a more fine-grained planning that defines resource allocations for each individual release, we propose a third step, i.e. (iii) stability analysis, which analyzes fine-grained plans of individual releases with regard to their sensitivity to planning errors. Planning errors can relate to alterations in expected personnel availability and productivity, feature and task-specific work volume, and degree of task dependency. The focus of this article is on stability analysis of proposed release plans. We present the simulation model Release Plan Simulator, Version 1 (REPSIM-1) and illustrate its usefulness for stability analyses with the help of a case example. (Less)


ICSP'07 Proceedings of the 2007 international conference on Software process | 2007

DynaReP: a discrete event simulation model for re-planning of software releases

Ahmed Al-Emran; Dietmar Pfahl; Günther Ruhe

Software release planning can be described as a process consisting of the following three phases: (i) strategic release planning, i.e., the assignment of features to subsequent releases; (ii) operational release planning, i.e., the allocation of resources to tasks within each individual release; and (iii) dynamic re-planning, i.e., the revision of plans in order to handle unexpected changes imposed on product/project managers responsible for the realization of individual releases. Example changes include the addition or removal of features and/or developers, adjustments due to overestimated developer productivity, or underestimated work volume of feature-specific tasks, and adjusted degrees of task dependencies. The research presented in this paper mainly focuses on phase (iii) in conjunction to phase (ii) of the release planning process, assuming that phase (i) has already been completed. For that purpose, we present a discrete-event simulation model called DynaReP (Dynamic Re-Planner), which can be used for operational planning and re-planning of individual software releases. The applicability, effectiveness, and efficiency of DynaReP are illustrated through a series of typical planning and re-planning scenarios.


international software process workshop | 2006

Simulation-Based stability analysis for software release plans

Dietmar Pfahl; Ahmed Al-Emran; Günther Ruhe

Release planning for incremental software development assigns features to releases such that most important technical, resource, risk and budget constraints are met. The research presented in this paper is based on a three staged procedure. In addition to an existing method for (i) strategic release planning that maps requirements to subsequent releases and (ii) a more fine-grained planning that defines resource allocations for each individual release, we propose a third step, i.e., (iii) stability analysis, which analyzes proposed release plans with regards to their sensitivity to unforeseen changes. Unforeseen changes can relate to alterations in expected personnel availability and productivity, feature-specific task size (measured in terms of effort), and degree of task dependency (measured in terms of work load that can only be processed if corresponding work in predecessor tasks has been completed). The focus of this paper is on stability analysis of proposed release plans. We present the simulation model REPSIM (Release Plan Simulator) and illustrate its usefulness for stability analysis with the help of a case example.


ICSP'10 Proceedings of the 2010 international conference on New modeling concepts for today's software processes: software process | 2010

Application of re-estimation in re-planning of software product releases

Ahmed Al-Emran; Anas Jadallah; Elham Paikari; Dietmar Pfahl; Günther Ruhe

Re-planning of product releases is a very dynamic endeavor and new research methods or improvements of existing methods are still required. This paper explores the role of re-estimation in the re-planning process of product releases. The purpose of this study is to analyze effects of defect and effort re-estimation in the process of release re-planning. In particular, two questions are answered: Question 1: In the absence of re-estimation, does conducting re-planning have any advantages over not conducting re-planning? Question 2: In the case of re-planning, does conducting re-estimation have any advantages over not conducting re-estimation? The proposed method H2W-Pred extends the existing H2W re-planning method by accommodating dynamic updates on defect and effort estimates whenever re-planning takes place. Based on the updates, effort for development of new functionality needs to be re-adjusted and balanced against the additional effort necessary to ensure quality early. The proposed approach is illustrated by case examples with simulated data. The simulation results show that conducting re-planning yields better release value in terms of functionality than not conducting re-planning. Furthermore, performing re-estimation when doing re-planning generates a portfolio of solutions that help balance trade-offs between several aspects of release value, e.g., between functionality and quality. If the development of a product release requires balancing between potentially conflictive aspects, such as quality vs. functionality, then re-estimation in the re-planning process is beneficial.


Software Process: Improvement and Practice | 2007

A System Dynamics Simulation Model for Analyzing the Stability of Software Release Plans: Research Sections

Dietmar Pfahl; Ahmed Al-Emran; Günther Ruhe

Workflows emphasize the partial order of activities, and the flow of data between activities. In contrast, cooperative processes emphasize the sharing of artefact, and its gradual evolution toward the final product, under the cooperative and concurrent activities of all the involved actors. This article contrasts workflow and cooperative processes and shows that they are more complementary than conflicting and that, provided some extensions, both approaches can fit into a single tool and formalism. This article presents Celine, a concurrent engineering tool that can also define and support classic workflows and software processes. We claim that the availability of both classes of features allows for the modeling and support of very flexible processes, closer to software engineering reality. Copyright

Collaboration


Dive into the Ahmed Al-Emran's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge