Mark Shereshevsky
West Virginia University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Mark Shereshevsky.
ieee international software metrics symposium | 2004
Walid Abdelmoez; Diaa Eldin M. Nassar; Mark Shereshevsky; Nicholay Gradetsky; Rajesh Gunnalan; Hany H. Ammar; Bo Yu; Ali Mili
The study of software architectures is emerging as an important discipline in software engineering, due to its emphasis on large scale composition of software products, and its support for emerging software engineering paradigms such as product line engineering, component based software engineering, and software evolution. Architectural attributes differ from code-level software attributes in that they focus on the level of components and connectors, and that they are meaningful for an architecture. In this paper, we focus on a specific architectural attribute, which is the error propagation probability throughout the architecture, i.e. the probability that an error that arises in one component propagates to other components. We introduce, analyze, and validate formulas for estimating these probabilities using architectural level information.
dependable systems and networks | 2003
Mark Shereshevsky; Jonathan Crowell; Bojan Cukic; Vijai Gandikota; Yan Liu
We investigate the dynamics of monitored memory resource utilizations in an operating system under stress using quantitative methods of fractal analysis. In the experiments, we recorded the time series representing various memory related parameters of the operating system. We observed that parameters demonstrate clear multifractal behavior. The degree of fractality of these time series tends to increase as the system workload increases. We conjecture that the H¨ older exponent that measures the local rate of fractality may be used as a quantitative measure of software aging. We propose a simple proactive computer crash avoidance strategy based on the online fractal analysis of system memory resource observations.
acs ieee international conference on computer systems and applications | 2005
Walid Abdelmoez; Mark Shereshevsky; Rajesh Gunnalan; Hany H. Ammar; Bo Yu; S. Bogazzi; Mustafa Korkmaz; Ali Mili
Summary form only given. Software architectures are an emerging discipline in software engineering as they play a central role in many modern software development paradigms. Quantifying software architectures is an important research agenda, as it allows software architects to subjectively assess quality attributes and rationalize architecture-related decisions. In this paper, we discuss the attribute of change propagation probability, which reflects the likelihood that a change that arises in one component of the architecture propagates (i.e. mandates changes) to other components.
computer software and applications conference | 2001
Mark Shereshevsky; Habib Ammari; Nicholay Gradetsky; Ali Mili; Hany H. Ammar
Because it codifies best practices, and because it supports various forms of software reuse, the discipline of software architecture is emerging as an important branch of software engineering research and practice. Because architectural-level decisions are prone to have a profound impact on finished software products, it is important to apprehend their quality attributes and to quantify them (as much as possible). In this paper, we discuss an information-theoretic approach to the definition and validation of architectural metrics, and illustrate our approach on a sample example.
acs ieee international conference on computer systems and applications | 2005
Rajesh Gunnalan; Mark Shereshevsky; Hany H. Ammar
Summary form only given. Software metrics have become an integral part of software development and are used during every phase of the software development life cycle. Research in the area of software metrics tends to focus predominantly on static metrics that are obtained by static analysis of the software artifact. But software quality attributes such as performance and reliability depend on the dynamic behavior of the software artifact. Estimating software quality attributes based on dynamic metrics for the software system are more accurate and realistic. The research presented in this paper attempts to narrow the gap between static metrics and dynamic metrics, and lay the foundation for a more systematic approach to estimate the dynamic behavior of a software system early in the software development cycle. Focusing on coupling metrics, we present an empirical study to analyze the relationship between static and dynamic coupling metrics and propose the concept of pseudo dynamic metrics to estimate the dynamic behavior early in the software development lifecycle.
international conference on software maintenance | 2004
Walid Abdelmoez; Mark Shereshevsky; Rajesh Gunnalan; Hany H. Ammar; Bo Yu; S. Bogazzi; Mustafa Korkmaz; Ali Mili
To assist the analysis software architectures, we have developed a Web-based CASE tool that automates the steps of capturing, modeling, and inspection of software architectures, in order to derive and display the change propagation probabilities.
working ieee/ifip conference on software architecture | 2005
Israr Pasha Shaik; Walid Abdelmoez; Rajesh Gunnalan; Mark Shereshevsky; A. Zeid; Hany H. Ammar; Ali Mili; Christopher P. Fuhrman
The study of software architectures is gaining importance due to its role in various aspects of software engineering such as product line engineering, component based software engineering and other emerging paradigms. With the increasing emphasis on design patterns, the traditional practice of ad-hoc software construction is slowly shifting towards pattern-oriented development. Various architectural attributes like error propagation, change propagation, and requirements propagation, provide a wealth of information about software architectures. In this paper, we show that change propagation probability (CP) is helpful and effective in assessing the design quality of software architectures. We study two different architectures (one that employs patterns versus one that does not) for the same application. We also analyze and compare change propagation metric with respect to other coupling-based metrics.
acs/ieee international conference on computer systems and applications | 2006
Israr Pasha Shaik; Walid Abdelmoez; Rajesh Gunnalan; Ali Mili; Christopher P. Fuhrman; Mark Shereshevsky; A. Zeid; Hany H. Ammar
The study of software architectures is gaining importance due to its role in various aspects of software engineering, like product line engineering, componentbased software engineering and other emerging paradigms. With the increasing emphasis on design patterns, the traditional practice of ad-hoc software construction is slowly shifting towards pattern-oriented development. Various architectural attributes like error propagation, change propagation, requirements propagation provide a wealth of information about software architectures. In this paper, we show that change propagation probability (CP) is helpful and effective in assessing the design quality of software architectures. We study two different architectures (one that employs patterns versus one that does not) for the same application. We also analyze and compare the change propagation metric with respect to other coupling-based metrics.
hawaii international conference on system sciences | 2005
Ali Mili; Frederick T. Sheldon; Fatma Mili; Mark Shereshevsky; Jules Desharnais
Redundancy is a feature of systems that arises by design or as an accidental byproduct of design, and can be used to detect, diagnose or correct errors that occur in systems operations. While it is usually investigated in the context of fault tolerance, one can argue that it is in fact an intrinsic feature of a system that can be analyzed on its own without reference to any fault tolerance capability. In this paper, we submit three alternative views of redundancy, which we propose to analyze to gain a better understanding of redundancy; we also explore means to use this understanding to enhance the design of fault tolerant systems.
Science of Computer Programming | 2005
Vittorio Cortellessa; Diego Del Gobbo; Mark Shereshevsky; Jules Desharnais; Ali Mili
Fault tolerance is the ability of a system to continue delivering its services after faults have caused errors. We have argued, in the past, that complex and/or critical systems are best validated by a wide range of methods, including proving, testing, and fault tolerance; we have also argued that in order to use these methods in concert, we need to cast them in a common framework. In this paper, we present mathematical characterizations of fault tolerance properties, using a relational calculus.