Network


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

Hotspot


Dive into the research topics where Roshanak Roshandel is active.

Publication


Featured researches published by Roshanak Roshandel.


international conference on software engineering | 2008

Early prediction of software component reliability

Leslie Cheung; Roshanak Roshandel; Nenad Medvidovic; Leana Golubchik

The ability to predict the reliability of a software system early in its development, e.g., during architectural design, can help to improve the systems quality in a cost-effective manner. Existing architecture-level reliability prediction approaches focus on system-level reliability and assume that the reliabilities of individual components are known. In general, this assumption is unreasonable, making component reliability prediction an important missing ingredient in the current literature. Early prediction of component reliability is a challenging problem because of many uncertainties associated with components under development. In this paper we address these challenges in developing a software component reliability prediction framework. We do this by exploiting architectural models and associated analysis techniques, stochastic modeling approaches, and information sources available early in the development lifecycle. We extensively evaluate our framework to illustrate its utility as an early reliability prediction approach.


foundations of software engineering | 2001

Taming architectural evolution

André van der Hoek; Marija Mikic-Rakic; Roshanak Roshandel; Nenad Medvidovic

In the world of software development everything evolves. So, then, do software architectures. Unlike source code, for which the use of a configuration management (CM) system is the predominant approach to capturing and managing evolution, approaches to capturing and managing architectural evolution span a wide range of disconnected alternatives. This paper contributes a novel architecture evolution environment, called Mae, which brings together a number of these alternatives. The environment facilitates an incremental design process in which all changes to all architectural elements are integrally captured and related. Key to the environment is a rich system model that combines architectural concepts with those from the field of CM. Not only does this system model form the basis for Mae, but in precisely capturing architectural evolution it also facilitates automated support for several innovative capabilities that rely on the integrated nature of the system model. This paper introduces three of those: the provision of design guidance at the architectural level, the use of specialized software connectors to ensure run-time reliability during component upgrades, and the creation of component-level patches to be applied to deployed system configurations.


ACM Transactions on Software Engineering and Methodology | 2004

Mae---a system model and environment for managing architectural evolution

Roshanak Roshandel; André van der Hoek; Marija Mikic-Rakic; Nenad Medvidovic

As with any other artifact produced as part of the software life cycle, software architectures evolve and this evolution must be managed. One approach to doing so would be to apply any of a host of existing configuration management systems, which have long been used successfully at the level of source code. Unfortunately, such an approach leads to many problems that prevent effective management of architectural evolution. To overcome these problems, we have developed an alternative approach centered on the use of an integrated architectural and configuration management system model. Because the system model combines architectural and configuration management concepts in a single representation, it has the distinct benefit that all architectural changes can be precisely captured and clearly related to each other---both at the fine-grained level of individual architectural elements and at the coarse-grained level of architectural configurations. To support the use of the system model, we have developed Mae, an architectural evolution environment through which users can specify architectures in a traditional manner, manage the evolution of the architectures using a check-out/check-in mechanism that tracks all changes, select a specific architectural configuration, and analyze the consistency of a selected configuration. We demonstrate the benefits of our approach by showing how the system model and its accompanying environment were used in the context of several representative projects.


quality of software architectures | 2007

A Bayesian model for predicting reliability of software systems at the architectural level

Roshanak Roshandel; Nenad Medvidovic; Leana Golubchik

Modern society relies heavily on complex software systems for everyday activities. Dependability of these systems thus has become a critical feature that determines which products are going to be successfully and widely adopted. In this paper, we present an approach to modeling reliability of software systems at the architectural level. Dynamic Bayesian Networks are used to build a stochastic reliability model that relies on standard models of software architecture, and does not require implementation-level artifacts. Reliability values obtained via this approach can aid the architect in evaluating design alternatives. The approach is evaluated using sensitivity and uncertainty analysis.


working ieee/ifip conference on software architecture | 2004

Understanding tradeoffs among different architectural modeling approaches

Roshanak Roshandel; Bradley Schmerl; Nenad Medvidovic; David Garlan; Dehua Zhang

Over the past decade, a number of architecture description languages (ADLs) have been proposed to facilitate modeling and analysis of software architecture. While each claims to have various benefits, to date, there have been few studies to assess the relative merits of these approaches. In this paper, we describe our experience using two ADLs to model a system initially described in UML, and compare their effectiveness in identifying system design flaws. We also describe the techniques we used for extracting architectural models from a UML system description.


international symposium on empirical software engineering | 2004

Using empirical testbeds to accelerate technology maturity and transition: the SCRover experience

Barry W. Boehm; Jesal Bhuta; David Garlan; Eric Gradman; LiGuo Huang; Alexander Lam; Raymond J. Madachy; Nenad Medvidovic; Kenneth Meyer; Steven Meyers; Gustavo Pérez; Kirk Reinholtz; Roshanak Roshandel; Nicolas Rouquette

This paper is an experience report on a first attempt to develop and apply a new form of software: a full-service empirical testbed designed to evaluate alternative software dependability technologies, and to accelerate their maturation and transition into project use. The SCRover testbed includes not only the specifications, code, and hardware of a public safety robot, but also the package of instrumentation, scenario drivers, seeded defects, experimentation guidelines, and comparative effort and defect data needed to facilitate technology evaluation experiments. The SCRover testbeds initial operational capability has been recently applied to empirically evaluate two architecture definition languages (ADLs) and toolsets, Mae and AcmeStudio. The testbed evaluation showed (1) that the ADL-based toolsets were complementary and cost-effective to apply to mission-critical systems; (2) that the testbed was cost-effective to use by researchers; and (3) that collaboration in testbed use by researchers and the Jet Propulsion Laboratory (JPL) project users resulted in actions to accelerate technology maturity and transition into project use. The evaluation also identified a number of lessons learned for improving the SCRover testbed, and for development and application of future technology evaluation testbeds.


automated software engineering | 2010

RESISTing reliability degradation through proactive reconfiguration

Deshan Cooray; Sam Malek; Roshanak Roshandel; David Kilgore

Situated software systems are an emerging class of systems that are predominantly pervasive, embedded, and mobile. They are marked with a high degree of unpredictability and dynamism in the execution context. At the same time, such systems often need to satisfy strict reliability requirements. Most current software reliability analysis approaches are not suitable for situated software systems. We propose an approach geared to such systems, which continuously furnishes refined reliability predictions at runtime by incorporating various sources of information. The reliability predictions are leveraged to proactively place the software in the optimal configuration with respect to changing conditions. Our approach considers two representative architectural reconfiguration decisions that impact the systems reliability: reallocation of components to processes and changing the architectural style. We have realized the approach as part of a framework intended for mission-critical settings, called REsilient SItuated SofTware system (RESIST), and evaluated it using a mobile emergency response system.


international conference on software engineering | 2004

Calculating architectural reliability via modeling and analysis

Roshanak Roshandel

We present a software architecture-based approach to compositional estimation of systems reliability. Our approach is applicable to early stages of development when the implementation artifacts are not yet available, and exact execution profile is unknown. The uncertainty of the execution profile is modeled using stochastic processes with unknown parameters. The compositional approach calculates overall reliability of the system as a function of the reliability of its constituent components and their (complex) interactions. Sensitivity analysis to identify critical components and interactions will be provided.


international conference on software engineering | 2009

Improving the reliability of mobile software systems through continuous analysis and proactive reconfiguration

Sam Malek; Roshanak Roshandel; David Kilgore; Ibrahim Elhag

Most of the current software reliability analysis approaches are geared to traditional desktop software systems, which are relatively stable and static throughout their execution. In this paper, we present a framework targeted at mobile computing domain that addresses the uncertainties associated with the reliability analysis in this setting. Moreover, the frameworks architecture-centric reliability estimates are leveraged to improve the runtime reliability of the system through dynamic architectural reconfiguration.


ACM Sigsoft Software Engineering Notes | 2013

Views on software engineering from the twin peaks of requirements and architecture

Matthias Galster; Mehdi Mirakhorli; Jane Cleland-Huang; Janet E. Burge; Xavier Franch; Roshanak Roshandel; Paris Avgeriou

The disciplines of requirements engineering (RE) and software architecture (SA) are fundamental to the success of software projects. Even though RE and SA are often considered in isolation, drawing a line between RE and SA is neither feasible nor reasonable as requirements and architectural design impact each other. This observation motivated the Twin Peaks model that was the subject of the Second International Workshop on the Twin Peaks of Requirements and Architecture (TwinPeaks@ICSE 2013). TwinPeaks@ICSE 2013 was held in conjunction with the 35th International Conference on Software Engineering 2013 in San Francisco, CA. The workshop aimed at providing a forum for researchers, practitioners and educators from the areas of RE and SA to discuss their experiences, forge new collaborations, and explore innovative solutions that address the challenges that occur when relating RE and SA. The workshop provided participants with an opportunity to become familiar with the relationship between RE and SA in the broader context of software engineering, rather than in an isolated context of either RE or SA. The workshop featured one industrial keynote, five research paper presentations, two invited talks and four working group discussions.

Collaboration


Dive into the Roshanak Roshandel's collaboration.

Top Co-Authors

Avatar

Nenad Medvidovic

University of Southern California

View shared research outputs
Top Co-Authors

Avatar

Sam Malek

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Leana Golubchik

University of Southern California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Mehdi Mirakhorli

Rochester Institute of Technology

View shared research outputs
Top Co-Authors

Avatar

Xavier Franch

Polytechnic University of Catalonia

View shared research outputs
Top Co-Authors

Avatar

David Garlan

Carnegie Mellon University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Leslie Cheung

University of Southern California

View shared research outputs
Researchain Logo
Decentralizing Knowledge