4,951 papers · page 173 of 248
James A. Jones, Mary Jean Harrold, John T. Stasko
One of the most expensive and time-consuming components of the debugging process is locating the errors or faults. To locate faults, developers must identify statements involved in failures and select suspicious statements that might contain faults. This paper presents a new tech…
Jung-Min Kim, Adam A. Porter
Regression testing is an expensive and frequently executed maintenance process used to revalidate modified software. To improve it, regression test selection (RTS) techniques strive to lower costs without overly reducing effectiveness by carefully selecting a subset of the test s…
Peter Knauber, Giancarlo Succi
No abstract available.
John C. Knight
Safety-critical systems are those systems whose failure could result in loss of life, significant property damage, or damage to the environment. There are many well known examples in application areas such as medical devices, aircraft flight control, weapons, and nuclear systems.…
John C. Knight
No abstract available.
Philippe Kruchten
The Rational Unified Process® (RUP®) is a software engineering process framework. It captures many of the best practices in modern software development in a form that is suitable for a wide range of projects and organizations. It embeds object-oriented techniques and uses the UML…
Philippe Kruchten, Rich Hilliard, Rick Kazman, Wojtek Kozaczynski, J. Henk Obbink, Alexander Ran
No abstract available.
Philippe Kruchten, Bran Selic, Wojtek Kozaczynski
The presence of a solid architectural vision is a key discriminator in the success or failure of a software project. This tutorial examines what software architecture is and what it is not. It discusses and illustrates how to describe architecture through a set of design viewpoin…
Shinji Kusumoto, Masahiro Imagawa, Katsuro Inoue, Shuuma Morimoto, Kouji Matsusita, Michio Tsuda
Function point analysis (FPA) was proposed to help measure the functionality of software systems. It is used to estimate the effort required for the software development. However, it has been reported that since function point measurement involves judgment on the part of the meas…
Craig Larman
This tutorial is an introduction to design patterns used in the design of object-oriented software applications.
Craig Larman, Frances Paulisch
In this workshop, we invite practitioners and researchers interested in the application of iterative, adaptive, and agile processes. And we expect to learn from each other. We include those favoring detailed or large-scale process descriptions (such as the Rational UP) to those f…
Rogério de Lemos, Cristina Gacek, Alexander B. Romanovsky
This workshop summary gives a brief overview of a one day workshop on "Architecting Dependable Systems" held in conjunctions with ICSE 2002.
Raimondas Lencevicius, Edu Metz, Alexander Ran
No abstract available.
Emmanuel Letier, Axel van Lamsweerde
Goal orientation is an increasingly recognized paradigm for eliciting, structuring, analyzing and documenting system requirements. Goals are statements of intent ranging from high-level, strategic concerns to low-level, technical requirements on the software-to-be and assumptions…
Carlos José Pereira de Lucena, Alessandro F. Garcia, Andrea Omicini, Jaelson Castro, Franco Zambonelli
Objects and agents are abstractions that exhibit points of similarity, but the development of agent-based software poses other challenges to software engineering since software agents are inherently more complex entities. In addition, a large-scale multi-agent system needs to sat…
Alessandro Maccari
Software architecture assessments are a means to detect architectural problems before the bulk of development work is done. They facilitate planning of improvement activities early in the lifecycle and allow limiting the changes on any existing software. This is particularly bene…
Dick Mays, Richard J. LeBlanc
This paper introduces a new programming methodology for building real-time systems that allows the construction of concurrent programs without the explicit creation and synchronization of threads. The approach requires the program to have an acyclic invocation structure. This res…
Alok Mehta, George T. Heineman
There is a constant need for practical, efficient and cost-effective software evolution techniques. We propose a novel evolution methodology that integrates the concepts of features, regression tests, and component-based software engineering (CBSE). Regression test cases are unta…
Amir Michail
Nowadays, applications are typically written using an object-oriented GUI framework. In this paper we explore the possibility of using the GUI of such applications to guide browsing and search of their source code. Such a tool would be helpful for software maintenance and reuse, …
Audris Mockus, James D. Herbsleb
Finding relevant expertise is a critical need in collaborative software engineering, particularly in geographically distributed developments. We introduce a tool that uses data from change management systems to locate people with desired expertise. It uses a quantification of exp…