Network


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

Hotspot


Dive into the research topics where Sherif Yacoub is active.

Publication


Featured researches published by Sherif Yacoub.


IEEE Transactions on Reliability | 2004

A scenario-based reliability analysis approach for component-based software

Sherif Yacoub; Bojan Cukic; Hany H. Ammar

This paper introduces a reliability model, and a reliability analysis technique for component-based software. The technique is named Scenario-Based Reliability Analysis (SBRA). Using scenarios of component interactions, we construct a probabilistic model named Component-Dependency Graph (CDG). Based on CDG, a reliability analysis algorithm is developed to analyze the reliability of the system as a function of reliabilities of its architectural constituents. An extension of the proposed model and algorithm is also developed for distributed software systems. The proposed approach has the following benefits: 1) It is used to analyze the impact of variations and uncertainties in the reliability of individual components, subsystems, and links between components on the overall reliability estimate of the software system. This is particularly useful when the system is built partially or fully from existing off-the-shelf components; 2) It is suitable for analyzing the reliability of distributed software systems because it incorporates link and delivery channel reliabilities; 3) The technique is used to identify critical components, interfaces, and subsystems; and to investigate the sensitivity of the application reliability to these elements; 4) The approach is applicable early in the development lifecycle, at the architecture level. Early detection of critical architecture elements, those that affect the overall reliability of the system the most, is useful in delegating resources in later development phases.


IEEE Transactions on Software Engineering | 2002

A methodology for architecture-level reliability risk analysis

Sherif Yacoub; Hany H. Ammar

The paper presents a methodology for reliability risk assessment at the early stages of the development lifecycle, namely, the architecture level. We describe a heuristic risk assessment methodology that is based on dynamic metrics. The methodology uses dynamic complexity and dynamic coupling metrics to define complexity factors for the architecture elements (components and connectors). Severity analysis is performed using Failure Mode and Effect Analysis (FMEA) as applied to architecture models. We combine severity and complexity factors to develop heuristic risk factors for the architecture components and connectors. Based on analysis scenarios, we develop a risk assessment model that represents components, connectors, component risk factors, connector risk factors, and probabilities of component interactions. We also develop a risk analysis algorithm that aggregates risk factors of components and connectors to the architectural level. Using the risk aggregation and the risk analysis model, we show how to analyze the overall risk factor of the architecture as the function of the risk factors of its constituting components and connectors. A case study of a pacemaker architecture is used to illustrate the application of the methodology. The methodology is used to identify critical components and connectors and to investigate the sensitivity of the architecture risk factor to changes in the heuristic risk factors of the architecture elements.


Pattern Recognition Letters | 2003

Performance analysis of pattern classifier combination by plurality voting

Sherif Yacoub; John Burns; Steven J. Simske

Plurality voting is widely used in pattern recognition. However, there is little theoretical analysis of plurality voting. In this paper, we attempt to explore the rationale behind plurality voting. The recognition/error/rejection rates of plurality voting are compared with those of majority voting under different conditions. It is demonstrated that plurality voting is more efficient in achieving the tradeoff between rejection rate and error rate. We also discuss some practical problems when applying plurality voting to real-world applications.


software product lines | 2002

Performance Analysis of Component-Based Applications

Sherif Yacoub

Performance analysis is a software engineering activity that involves analyzing a software application with respect to performance quality attributes such as response and execution times. Performance analysis tools provide the necessary support for the analyst to monitor program execution, record and analyze performance data, and locate and understand areas of poor performance. Performance analysis methods and techniques are highly dependent on the properties of the software system to be analyzed. Product line engineering applications possess some special properties that impose constraints on the selection of the performance analysis techniques to be applied and the tools to be used. The development of a component-based reference architecture is crucial to the success of a true product line. The component-based nature facilitates the integration of components and the replacement of a component with another to meet the requirements of an instance application of the product line. In this paper, we discuss performance analysis of component-based software systems and its automation. We discuss how component-based system properties influence the selection of methods and tools used to obtain and analyze performance measures. We use a case study of the document content remastering product line to illustrate the application of a performance analysis method to component-based applications.


Lecture Notes in Computer Science | 2001

UML Support for Designing Software Systems as a Composition of Design Patterns

Sherif Yacoub; Hany H. Ammar

Much of the research work on design patterns has primarily focused on discovering and documenting patterns. Design patterns promise early reuse benefits at the design stage. To reap the benefits of deploying these proven design solutions, we need to develop techniques to construct applications using patterns. These techniques should define a composition mechanism by which patterns can be integrated and deployed in the design of software applications. Versatile design models should be used to model the patterns themselves as well as their composition. In this paper, we describe an approach called Pattern-Oriented Analysis and Design (POAD) that utilizes UML modeling capabilities to compose design patterns at various levels of abstractions. In POAD, the internal details of the pattern structure are hidden at high design levels (pattern views) and are revealed at lower design levels (class views). We define three hierarchical traceable logical views based on UML models for developing pattern-oriented designs; namely the Pattern-Level view, the Pattern Interfaces view, and the Detailed Pattern-Level view. The discussion is illustrated by a case study of building a framework for feedback control systems.


international conference on document analysis and recognition | 2005

PerfectDoc: a ground truthing environment for complex documents

Sherif Yacoub; Vinay Saxena; Sayeed Nusrulla Sami

In this paper, we present PerfectDoc; a ground truthing and document correction tool. The tool provides post processing correction capabilities that are required after complex document analysis and understanding tasks. The tool has the advantage of being comprehensive (integration of most common correction tasks), easy to use (minimal clicks for corrections), configurable (can be used for different types of documents), and provides separate correction views. We used the tool to correct the output from a document understanding system used to extract articles from 80-years archive of Time weekly magazine.


international conference on document analysis and recognition | 2005

Identification of document structure and table of content in magazine archives

Sherif Yacoub; Jose Abad Peiro

In this paper, we present a generic approach for reliable identification of the table of content (TOC) pages in scanned documents. We use multiple sources of information to obtain a reliable assessment of the TOC pages and the position of articles. These sources are produced by using three methods: title matching, section keyword matching, and numeric content. Finally a combination component is used to score potential TOC pages and select the best candidates. The system is used to identify the table of content, locate the beginning of articles, aid the process of advertisement identification (where present), and in general, identify the structure of scanned documents for the process of article extraction and online deployment of digital content. Results of applying the algorithms to an 80-years archive of Time weekly magazine are presented.


document engineering | 2005

Document digitization lifecycle for complex magazine collection

Sherif Yacoub; John Burns; Paolo Faraboschi; Daniel Ortega; Jose Abad Peiro; Vinay Saxena

The conversion of large collections of documents from paper to digital formats that are suitable for electronic archival is a complex multi-phase process. The creation of good quality images from paper documents is just one phase. To extract relevant information that they contain, with an accuracy that fits the purpose of target applications, an automated document analysis system and a manual verification/review process are needed. The automated system needs to perform a variety of analysis and recognition tasks in order to reach an accuracy level that minimizes the manual correction effort downstream.This paper describes the complete process and the associated technologies, tools, and systems needed for the conversion of a large collection of complex documents and deployment for online web access to its information rich content. We used this process to recapture 80 years of Time magazines. The historical collection is scanned, automatically processed by advanced document analysis components to extract articles, manually verified for accuracy, and converted in a form suitable for web access. We discuss the major phases of the conversion lifecycle and the technology developed and tools used for each phase. We also discuss results in terms of recognition accuracy.


computer software and applications conference | 2005

Performability analysis of a pipeline software architecture

Swapna S. Gokhale; Sherif Yacoub

An architecture style defines a commonly occurring pattern of the structural organization of components and connectors such that the impact of the pattern on the different non functional attributes is known. It is possible to make a qualitative assessment of whether a specific style is conducive to the nonfunctional attribute of performance based on the knowledge and experience in the use of the style. It is necessary however, that such a qualitative judgment be substantiated by a quantitative estimate obtained using a systematic performance analysis approach, since architecture styles are likely to be used in domains where application performance will play a critical role in ensuring its widespread use. Recognizing this need, several research efforts have focused on the development of quantitative performance analysis approaches for general purpose software architectures as well as for architecture styles. A notable drawback of the existing approaches is that they do not consider failures of components and connectors and hence provide optimistic performance estimates. In this paper we present a performability analysis approach for a pipeline architecture style which accounts for unreliable components. The performance estimate provided by the proposed approach is more realistic than what can be provided by the prevalent approaches. We illustrate the potential of the approach with an industrial case study of a document analysis system.


Reliability Engineering & System Safety | 2003

Analyzing the behavior and reliability of voting systems comprising tri-state units using enumerated simulation

Sherif Yacoub

Abstract Voting is a common technique used in combining results from peer experts, for multiple purposes, and in a variety of domains. In distributed decision making systems, voting mechanisms are used to obtain a decision by incorporating the opinion of multiple units. Voting systems have many applications in fault tolerant systems, mutual exclusion in distributed systems, and replicated databases. We are specifically interested in voting systems as used in decision-making applications. In this paper, we describe a synthetic experimental procedure to study the behavior of a variety of voting system configurations using a simulator to: analyze the state of each expert, apply a voting mechanism, and analyze the voting results. We introduce an enumerated-simulation approach and compare it to existing mathematical approaches. The paper studies the following behaviors of a voting system: (1) the reliability of the voting system, R ; (2) the probability of reaching a consensus, P c ; (3) certainty index, T ; and (4) the confidence index, C . The configuration parameters controlling the analysis are: (1) the number of participating experts, N , (2) the possible output states of an expert, and (3) the probability distribution of each expert states. We illustrate the application of this approach to a voting system that consists of N units, each has three states: correct (success), wrong (failed), and abstain (did not produce an output). The final output of the decision-making (voting) system is correct if a consensus is reached on a correct unit output, abstain if all units abstain from voting, and wrong otherwise. We will show that using the proposed approach, we can easily conduct studies to unleash several behaviors of a decision-making system with tri-state experts.

Collaboration


Dive into the Sherif Yacoub's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Hany H. Ammar

West Virginia University

View shared research outputs
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