4,951 papers · page 162 of 248
Oscar Nierstrasz, Serge Demeyer
The rapid growth of object-oriented development over the past twenty years has given rise to many object-oriented systems that are large, complex and hard to maintain. These systems exhibit a range of problems, effectively preventing them from satisfying the evolving requirements…
Ciaran O'Reilly
The development of a software system - of any reasonable size - from initial conception through ongoing maintenance and evolution accrues significant coordination overheads. Often the mechanisms used to manage change and coordination detract from the time developers have to pursu…
Cristóvão Oliveira, Michel Wermelinger
CommUnity proposes a formal approach to software architecture. It uses a parallel program design language in the style of Unity programs (Chandy and Misra, 1988), combining elements from IP (Francez and Forman, 1996). The concepts of software architecture - including configuratio…
Alessandro Orso, Taweesup Apiwattanapong, James Law, Gregg Rothermel, Mary Jean Harrold
Impact analysis - determining the potential effects of changes on a software system - plays an important role in software engineering tasks such as maintenance, regression testing, and debugging. In previous work, two new dynamic impact analysis techniques, CoverageImpact and Pat…
Alessandro Orso, James A. Jones, Mary Jean Harrold, John T. Stasko
To investigate the program-execution data efficiently, we must be able to view the data at different levels of detail. In our visualization approach, we represent software systems at three different levels: statement level, file level, and system level. At the statement level, we…
Alessandro Orso, Adam A. Porter
Michael John Pacione
Software visualisation is the process of modelling software systems for comprehension. The comprehension of software systems both during and after development is a crucial component of the software process. The complex interactions inherent in the object-oriented paradigm make vi…
Dewayne E. Perry, Susan Elliott Sim, Steve M. Easterbrook
The topic of this paper was the correct use and interpretation of case studies as an empirical research method. Using an equal blend of lecture and discussion, it gave a foundation for conducting, reviewing, and reading case studies. There were lessons for software engineers as r…
Mauro Pezzè, Michal Young
The best approach to testing object-oriented software depends on many factors: the application-under-test, the development approach, the organization of the development and quality assurance teams, the criticality of the application, the development environment and the implementa…
Dietmar Pfahl, Ioana Rus, David Raffo, Paul Wernick
Vahe Poladian, João Pedro Sousa, David Garlan, Mary Shaw
An important emerging requirement for computing systems is the ability to adapt at run time, taking advantage of local computing devices, and coping with dynamically changing resources. Three specific technical challenges in satisfying this requirement are to (1) select an approp…
Ana Belén Barragáns-Martínez, José Juan Pazos-Arias
Bas van der Raadt, Jasper Soetendal, Michiel Perdeck, Hans van Vliet
Based on interviews with a number of architects and managers from a wide range of organizations, we characterize how architecture is perceived in practice. We identify three groups of organizations that differ with respect to their level of architectural thinking and the alignmen…
Hridesh Rajan
Component integration creates value by automating the costly and error-prone task of imposing desired behavioral relationships on components manually. Requirements for component integration, however, complicate software design and evolution in several ways: first, they lead to co…
David F. Redmiles, Kumiyo Nakakoji
The theme and title for this panel is inspired by Donald Schon's writings about the reflective practitioner in which he describes professional practice as being a process of reflection in action. Ill-defined problems including design decisions lead to breakdowns, which become opp…
Genaína Nunes Rodrigues
The main contribution of this research is to provide platform-independent means to support reliability design following the principles of a model driven approach. The contribution aims to systematically address dependability concerns from the early to the late stages of software …
Roshanak Roshandel
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…
Nathan D. Ryan, Alexander L. Wolf
All systems built from distributed components involve the use of one or more protocols for inter-component communication. Whether these protocols are based on a broadly used standard or are specially designed for a particular application, they are likely to evolve. The goal of th…
Christian Salzmann, Thomas Stauner, Alexander Pretschner
Bradley R. Schmerl, David Garlan
Software architectural modeling is crucial to the development of high-quality software. Tool support is required for this activity, so that models can be developed, viewed, analyzed, and refined to implementations. This support needs to be provided in a flexible and extensible ma…