Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Roshanak Roshandel

dblp:78/1349 · DBLP profile ↗
← Back
13ranked-venue papers
5as first author
1since 2021 · last 2021
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 9 · 4 first-authorArtificial intelligence and machine learning · 1 · 1 since 2021Systems, architecture and hardware · 1Human-computer interaction and ubiquitous computing · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
7 papers
Requirements engineering and software design · 52% Software testing · 38% Software maintenance and evolution · 10%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Embedded and real-time systems · 81% Hardware reliability and fault tolerance · 19%

Topics — the 9 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Requirements engineering and software design
software architecture
0.362013
Early prediction of software component reliability · ICSE 2008
Estimating software component reliability by leveraging architectural models · ICSE 2006
2nd international workshop on the twin peaks of requirements and architecture (TwinPeaks 2013) · ICSE 2013
Software testing
software reliability
0.342013
Proactive Self-Adaptation for Improving the Reliability of Mission-Critical, Embedded, and Mobile Software · IEEE Trans. Software Eng. 2013
Estimating software component reliability by leveraging architectural models · ICSE 2006
Calculating Architectural Reliability via Modeling and Analysis · ICSE 2004
Embedded and real-time systems
embedded software
0.212013
Proactive Self-Adaptation for Improving the Reliability of Mission-Critical, Embedded, and Mobile Software · IEEE Trans. Software Eng. 2013
Embedded and real-time systems
cyber-physical system platforms
0.112010
RESISTing reliability degradation through proactive reconfiguration · ASE 2010
Requirements engineering and software design › software architecture
software architecture evolution
0.122004
Mae - a system model and environment for managing architectural evolution · ACM Trans. Softw. Eng. Methodol. 2004
Taming architectural evolution · ESEC / SIGSOFT FSE 2001
Software maintenance and evolution
software configuration management
0.122004
Mae - a system model and environment for managing architectural evolution · ACM Trans. Softw. Eng. Methodol. 2004
Taming architectural evolution · ESEC / SIGSOFT FSE 2001
Hardware reliability and fault tolerance
reliability analysis
0.012010
RESISTing reliability degradation through proactive reconfiguration · ASE 2010
Hardware reliability and fault tolerance › system reliability
software reliability
0.012010
RESISTing reliability degradation through proactive reconfiguration · ASE 2010
Requirements engineering and software design › software architecture › software architecture analysis
architecture consistency
0.012004
Mae - a system model and environment for managing architectural evolution · ACM Trans. Softw. Eng. Methodol. 2004

Methods — techniques the papers use, named apart from their topics

runtime reliability prediction · 0.4replication · 0.3component reallocation · 0.3proactive reconfiguration · 0.1stochastic modeling · 0.1architectural analysis · 0.1architectural modeling · 0.1stochastic processes · 0.0sensitivity analysis · 0.0consistency analysis · 0.0check-out/check-in mechanism · 0.0
YearPublicationVenuePosition
2021 Classification of diabetic retinopathy using unlabeled data and knowledge distillation
Sajjad Abbasi, Mohsen Hajabdollahi, Pejman Khadivi, Nader Karimi, Roshanak Roshandel, Shahram Shirani, Shadrokh Samavi
Artif. Intell. Medicine5
2013 2nd international workshop on the twin peaks of requirements and architecture (TwinPeaks 2013)
abstract
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 separately, it has been argued that drawing a line between RE and SA is neither feasible nor reasonable as requirements and architectural design processes impact each other. Requirements are constrained by what is feasible technically and also by time and budget restrictions. On the other hand, feedback from the architecture leads to renegotiating architecturally significant requirements with stakeholders. The topic of bridging RE and SA has been discussed in both the RE and SA communities, but mostly independently. Therefore, the motivation for this ICSE workshop is to bring both communities together in order to identify key issues, explore the state of the art in research and practice, identify emerging trends, and define challenges related to the transition and the relationship between RE and SA.
Paris Avgeriou, Janet E. Burge, Jane Cleland-Huang, Xavier Franch, Matthias Galster, Mehdi Mirakhorli, Roshanak Roshandel
ICSE7
2013 Proactive Self-Adaptation for Improving the Reliability of Mission-Critical, Embedded, and Mobile Software
abstract
Embedded and mobile software systems are marked with a high degree of unpredictability and dynamism in the execution context. At the same time, such systems are often mission-critical, meaning that they need to satisfy strict reliability requirements. Most current software reliability analysis approaches are not suitable for these types of software systems, as they do not take the changes in the execution context of the system into account. We propose an approach geared to such systems which continuously furnishes refined reliability predictions at runtime by incorporating various sources of information, including the execution context of the system. The reliability predictions are leveraged to proactively place the software in the (near-)optimal configuration with respect to changing conditions. Our approach considers two representative architectural reconfiguration decisions that impact the system's reliability: reallocation of components to processes and changing the number of component replicas. 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.
Deshan Cooray, Ehsan Kouroshfar, Sam Malek, Roshanak Roshandel
IEEE Trans. Software Eng.4
2011 Using community-based projects in software engineering education
abstract
Over the past six years, Seattle University's Master of Software Engineering program has adopted a common community-based software engineering project as the basis for class projects in a sequence of required and elective courses. These related projects offer a unifying experience for students in the program, allow in-depth treatment of course topics on a real software project, address needs of local non-profit organizations, and better prepare the students for their professional careers through civic engagement and leadership.
Roshanak Roshandel, Jeff Gilles, Richard LeBlanc
CSEE&T1
2010 RESISTing reliability degradation through proactive reconfiguration
abstract
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 system's 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.
Deshan Cooray, Sam Malek, Roshanak Roshandel, David Kilgore
ASE3
2010 Context-Driven Optimization of Mobile Service-Oriented Systems for Improving Their Resilience
abstract
Mobile software systems are characterized by their highly dynamic and unpredictable execution context. Such systems are permeating a number of domains where the systems operate in constantly changing conditions. We refer to such systems as Situated Software Systems. These systems are often deployed in mission-critical settings with stringent reliability requirements. Existing approaches to performing reliability analysis are insufficient in meeting the demands of situated software systems. We propose an approach aimed at such systems and present it in the form of a framework and tool suite known as REsilient SItuated SofTware system (RESIST). The framework utilizes information from the system's context to produce reliability predictions, and places the system in the optimally reliable configuration with respect to other competing quality attributes.
Deshan Cooray, Sam Malek, Roshanak Roshandel
SERVICES3
2008 Early prediction of software component reliability
abstract
The ability to predict the reliability of a software system early in its development, e.g., during architectural design, can help to improve the system's 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.
Leslie Cheung, Roshanak Roshandel, Nenad Medvidovic, Leana Golubchik
ICSE2
2006 Estimating software component reliability by leveraging architectural models
abstract
Software reliability techniques are aimed at reducing or eliminat-ing failures in software systems. Reliability in software systems istypically measured during or after system implementation. How-ever, software engineering methodology lays stress on doing the"correct things" early on in the software development lifecycle inorder to curb development and maintenance costs. In this paper, wepropose a framework for reliability estimation of software compo-nents at the level of software architecture.
Roshanak Roshandel, Somo Banerjee, Leslie Cheung, Nenad Medvidovic, Leana Golubchik
ICSE1
2006 Engineering reliability into hybrid systems via rich design models: recent results and current directions
abstract
Software reliability techniques are aimed at reducing or eliminating failures in software systems. Reliability in software systems has traditionally been measured during or after system implementation. However, software engineering methodology lays stress on doing the "correct things" early on in the software development lifecycle in order to curb development and maintenance costs. In this paper, we argue that reliability of a software system should be assessed throughout the system's life span, starting with the software architecture level. Our research goal is to estimate the reliability of software systems in early design stages, which we believe involves the ability to reason about numerous uncertainties that exist in this stage, including uncertainty due to lack of execution artifacts. Our proposed approach is to develop techniques that will couple software architectural models with a suite of stochastic reliability estimation models and allow us to reason about these uncertainties. In this paper, we present our recent results using our technique for reliability estimation of software components at the level of software architecture. Another important part of this paper is the discussion of our ongoing research efforts and open research problems in this area.
Somo Banerjee, Leslie Cheung, Leana Golubchik, Nenad Medvidovic, Roshanak Roshandel, Gaurav S. Sukhatme
IPDPS5
2004 Calculating Architectural Reliability via Modeling and Analysis
abstract
We present a software architecture-based approach to compositional estimation of system's 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.
Roshanak Roshandel
ICSE1
2004 Understanding Tradeoffs among Different Architectural Modeling Approaches
abstract
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.
Roshanak Roshandel, Bradley R. Schmerl, Nenad Medvidovic, David Garlan, Dehua Zhang
WICSA1
2004 Mae - a system model and environment for managing architectural evolution
abstract
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.
Roshanak Roshandel, André van der Hoek, Marija Mikic-Rakic, Nenad Medvidovic
ACM Trans. Softw. Eng. Methodol.1
2001 Taming architectural evolution
abstract
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.
André van der Hoek, Marija Mikic-Rakic, Roshanak Roshandel, Nenad Medvidovic
ESEC / SIGSOFT FSE3