29th Int. Conference on Software Engineering® 20 - 26 May 2007



Marsha Chechik, University of Toronto, Canada,
Paola Inverardi, Universitá di L'Aquila, Italy,

Schedule: Workshops will run from 9:00AM until 12:30PM, and from 2:00PM until 5:30PM, with a lunch break between 12:30PM and 2:00PM

At a Glance

Complete List

(W1) 4th Intl. Workshop on Mining Software Repositories (MSR 2007)
Days: 19-20 May, 19 May (full day), 20 May (full day)    Venue: Marquette

Co-Chairs: Harald Gall and Michele Lanza

Software repositories such as source control systems, archived communications between project personnel, and defect tracking systems are used to help manage the progress of software projects. Software practitioners and researchers are beginning to recognize the potential benefit of mining this information to support the maintenance of software systems, improve software design/reuse, and empirically validate novel ideas and techniques. Research is now proceeding to uncover the ways in which mining these repositories can help to understand software development, to support predictions about software development, and to plan various aspects of software projects. The goal of this two-day workshop is to strengthen the community of researchers and practitioners who are working to recover and use the data stored in software repositories to further understanding of software development practices. We expect the presentations and discussions at MSR 2007 in Minneapolis to continue on a number of general themes and challenges from the previous workshops held at ICSE 2006 in China, ICSE 2005 in the US, and ICSE 2004 in Europe.

(W2) 2nd Intl. Workshop on SHAring and Reusing architectural Knowledge - Architecture, rationale, and Design Intent (SHARK/ADI 2007)
Days: 19-20 May, 19 May (full day), 20 May (full day)    Venue: Hennepin Room

Organisers: Paris Avgeriou, Paul S. Grisham, Philippe Kruchten, Patricia Lago and Dewayne E. Perry

Software architecture plays an increasingly important role to manage the complex interactions and dependencies between the stakeholders and to provide a central artifact that can be used as a reference by them. It also supports early analysis of the system, especially with respect to quality attributes and successful evolution of the system. Existing approaches on software architecting typically focus on components and connectors and fail to document the design decisions that resulted in the architecture as well as the organizational, process and business rationale underlying the design decisions. This results in high maintenance cost, high degrees of design erosion and lack of information and documentation of relevant architectural knowledge. This workshop focuses on current approaches, tackling this problem: methods, languages, notations, tools to extract, represent, share, use and re-use architectural knowledge. Architectural Knowledge (AK) is defined as the integrated representation of the software architecture of a software-intensive system (or a family of systems), the architectural design decisions and their rationale, and the influences of the external context/environment.

(W3) 3rd Intl. Workshop on Software Engineering for Secure Systems (SESS 2007)
Days: 19-20 May, 19 May (half-day), 20 May (full day)    Venue: Carver Room

Organisers: Danilo Bruschi, Bart De Win, Seok-Won Lee and Mattia Monga

The SESS workshop aims at providing a venue for software engineers and security researchers to exchange ideas and techniques. Designers have to cope with the complexity of insecure operating environments by considering threats to their application correctness. Security concerns should be taken into account as early as possible, and not added to systems as an after-thought. Security features such as cryptographic protocols and tamper-resistant hardware cannot be simply added on to transform an insecure product into a secure one. Security solutions and patterns are hard to reuse in different contexts, they crosscut all the system components and a vulnerability alone might compromise the trustworthiness of the whole system. Thus, not surprisingly, several security holes are recurrent, notwithstanding the experience accumulated by security research in the last decades. Software engineers and practitioners should assimilate basic security techniques and discover new techniques for integrating them in the current practice, while understanding associated costs and benefits.

(W4) Intl. Workshop on Modeling in Software Engineering (MiSE 2007)
Days: 19-20 May, 19 May (half-day), 20 May (full day)    Venue: Lasalle

Organisers: Joanne Atlee, Robert France, Geri Georg, Ana Moreira, Bernhard Rumpe, Steffen Zschaler

Engineers have used models for centuries to manage complexity effectively. There is a growing body of work on the use of models to manage inherent problem and solution complexity during software development. We are interested in model-related research at all levels of the software development, including the use of models during software execution. This workshop will provide a forum for discussing the challenges associated with modeling software and with incorporating modeling practices into the software development process. The discussions will be highly interactive, and focused on the sharing of ideas and on progressing towards a shared vision of research goals.

(W5) 3rd Intl. Workshop on Predictor Models in SE (PROMISE 2007)
Day: 20 May, full day workshop    Venue: Conrad D

Organisers: Gary D. Boetticher, Tim Menzies, Tom Ostrand

Software engineering is a decision intensive discipline. Do we really understand all the factors that can influence those decisions? Can we build models that reveal hidden patterns in software resource management, in development processes, or in software artifacts themselves? How well do these models predict? Can they be used without requiring domain expert intervention? Do the models lead to better decisions? How are we to validate these models? Is the model creation process repeatable? Are there better, faster, cheaper ways to build models? How effective are these models for identifying causal relations? The PROMISE workshop seeks to address these questions and others, and to deliver to the software engineering community useful, usable, verifiable models, and public datasets for building and evaluating new models. At present, the Promise repository contains more than 30 datasets.

(W6) Intl. Workshop on the Economics of Software and Computation (ESC 2007)
Day: 20 May, full day workshop    Venue: Conrad C

Organisers: Rick Kazman, Kevin Sullivan, Mary Shaw, Barry Boehm, Jyrki Kontio

Software is the key element in future complex systems. It is the source of enormous economic value, but also of significant grief. A large part of the problem is that software developers continue to make key technical decisions without an adequate treatment of their economics. First, much of software engineering continues to be guided by the traditional separation of concerns between systems engineering and software engineering. Software engineering is thus reduced to that of the implementer of specifications given by systems engineers, and of program verifier and maintainer. Such a state of affairs is not tenable when the key source of value and of risk is the software. Second, software engineers tend to think in terms of formal concepts of program structure and semantics, not in terms of the economic (and also ethical, aesthetic, and political) value of technical properties, risks and decisions. Third, we simply lack formal, testable and tested theories, methods, and tools to support value-based analysis and decision-making. The First International Workshop on the Economics of Software and Computation will address these problems by promoting the integration of computer science and software engineering, on one hand, with the social sciences, on the other, especially economics. The goal is to develop scientific knowledge and technology to enable a far more effective treatment of value and values in the conception, definition, development, deployment, operation, regulation, and evolution of software and software-intensive systems. To this end, ESC-1 will provide an interactive forum to discuss and advance the state-of-the-art research and practice in the economics of software and computation, emphasizing rigorous methods and theories based on knowledge from such disciplines as coupling theory, utility theory, game theory, and financial economics to address technical and managerial problems in software and software-intensive system development. While other forums address software business issues broadly, ESC seeks to foster research in which economic concepts, models, and tools are employed to improve our understanding and the development of software-intensive systems.

(W7) Early Aspects at ICSE: Workshop in Aspect-Oriented Requirements Engineering and Architecture Design
Day: 21 May, full day workshop    Venue: Conrad C

Organisers: Ruzanna Chitchyan, Ana Moreira, Awais Rashid, Bedir Tekinerdogan, Elisa Baniassad, João Araújo, Paul Clements

Early aspects are crosscutting concerns that exist in the early life cycle phases of software development, including the requirements analysis, domain analysis and architecture design activities. Early aspects aim to localize requirements and architectural concerns whose influence would otherwise tend to be scattered over multiple early life cycle modules, leading to serious maintenance problems. Since these early development phases produce the early design decisions that have the most profound impact on the whole system, dealing with aspects at these early life cycle phases is critical. This workshop builds on the work started with the previous Early Aspects workshops to strengthen cross-fertilization of ideas in requirements engineering, domain engineering, software architecture design and aspect-oriented software development. The specific aim of the ICSE 2007 workshop is twofold: (a) to initiate creation of an Early Aspects application demonstration and comparisons benchmark; and (b) to solicit submission of new research.

(W8) 6th Intl. Workshop on Scenarios and State Machines (SCESM 2007)
Day: 21 May, full day workshop    Venue: Carver Room

Co-Chairs: Wolfgang Grieskamp and Nicolas Kicillof

Scenarios and state machines are two of the fundamental modeling perspectives for developing behavioral abstractions of complex, reactive software. Scenarios represent a partial view on the interactions between multiple system components; state machines typically model the complete behavior of individual components. Both perspectives have advantages – scenarios are easily understood by stakeholders at all levels, lead naturally to tests and focus on inter-component communication; state machines, on the other hand, provide precise descriptions of component behavior and can be used for generating implementations (either manually or automatically). In particular, UML supports both notations and in UML2.0, scenarios can be modeled in a much more expressive way than with previous versions of UML. This workshop aims to investigate the connection between scenarios and state machines, assess how this connection can be exploited to improve software development, support the evaluation of techniques that exploit the connection and support the showcasing of developer tools based on both views.

(W9) 5th Intl. Workshop on Software Quality (WoSQ 2007)
Day: 21 May, full day workshop    Venue: Marquette

Organisers: Barry Boehm, Sunita Chulani, June Verner and Bernard Wong

To develop software quickly, on time and within budget is not good enough if the product developed is full of defects and today, software stakeholders are demanding higher quality software than ever before. As the software market matures, users want to be assured of quality. They no longer accept the claims of the IT department at face value, but expect demonstrations of quality. In recent years, much of the software engineering research has focussed on standards, methodologies and techniques for improving software quality, measuring software quality and software quality assurance. Most of this research is focused on an internal view of quality whereas few measures of the customer view of quality exist. In the 5th WoSQ, we intend to bring together academic, industrial and commercial communities interested in software quality in order to discuss the different technologies that have been defined and used in the software quality area.

(W10) Intl. Workshop on Systems Development in SOA Environments (SDSOA)
Day: 21 May, full day workshop    Venue: Conrad B

Organisers: Grace Lewis, Dennis Smith, Kostas Kontogiannis, Stefan Schuster, Marin Litoiu

The Service-Oriented Architecture (SOA) paradigm is having a substantial impact on the way software systems are developed. Although significant progress is being made in several fronts, there are not a set of clear, central themes to focus research activity. As a result, there is a danger that important research needs will be overlooked, while other efforts will focus on issues of peripheral long-term significance in practice. The objective of this workshop is to begin developing a long-term community-wide research agenda for the successful development of SOA-based systems. A tentative research taxonomy will be presented, as well as papers that focus on specific parts of the taxonomy. Through an interactive workshop format, researchers will collaboratively identify open research issues and develop a draft research agenda for the community.

(W11) Intl. Workshop on Emerging Trends in FLOSS Research and Development (FLOSS 2007)
Day: 21 May, full day workshop    Venue: Conrad D

Organisers: Andrea Capiluppi, Gregorio Robles, Walt Scacchi, Brian Fitzgerald, Joe Feller, Karim Lakhani and Scott Hissam

Much software engineering research relates to open source in one or other way, as when software engineering prototypes and tools that are offered under open source licenses and empirical studies which are based on mining huge amounts of available open source project data. Many open source projects have born and nurtured in academic environments. Despite these clearly strong relationships, the software engineering community (both academia and industry) and the open source communities have not fulfilled the potential of a closer collaboration. These communities need to be brought together. For example: - software engineering researchers need to find out effective ways to share results with open source developers - open source development and evolution challenge classical good software engineering approaches, models and practice and may provide new insights - open source offers a rich phenomenon and ad vast amount of data but open source developers participation in empirical studies is needed in contextualisation of empirical results - open source developers may benefit from getting to know the software engineering state-of-the-art, not having to "re-invent the wheel" in their projects. The Workshop on ``Emerging Trends in FLOSS Research and Development" is based on the growing interest of researchers practitioners and software industries on Free/Libre Open Source Software (FLOSS): its scope is discussing the phenomenon of global open source software engineering and how to reach out to the open source community.

(W12) Intl. Workshop on Aerospace Software Engineering (AeroSE 2007)
Days: 21-22 May, 21 May (full day), 22 May (full day)    Venue: Conrad A

Organisers: Mats Heimdahl and Henry Muccini

The goal of the 1st International Workshop on Aerospace Software Engineering Workshop (AeroSE 2007) is to bring together software engineering and aerospace engineering researchers to exchange theories, ideas, and techniques and experiences in Managing the Complexity of Aerospace Software. In particular, the workshop will explore the impact of model-based development and automation on the software development process as well as how to demonstrate the quality of a software system (a.k.a. certification). The AeroSE 2007 workshop will be held in Minneapolis, MN USA in conjunction with the 29th International Conference on Software Engineering (ICSE 2007).

(W13) 2nd Intl. Workshop on Realising Evidence-Based Software Engineering (REBSE 2007)
Day: 22 May, full day workshop    Venue: Conrad C

Co-Chairs: David Budgen, Pearl Brereton, Barbara Kitchenham and Mark Turner

"Science is built up of facts as a house is built of stones, but an accumulation of facts is no more a science than a heap of stones is a house" [Poincare]
If software engineering is to advance as an engineering discipline it needs to move away from its current dependence upon advocacy and analysis, towards employing more objective, systematic, and empirically-based approaches to developing an understanding of what works, why, and under what conditions. The 'evidence-based paradigm' is now well established in clinical medicine as an objective and structured means of assembling and analysing the available data in order to answer research questions. It has also been adopted in other domains such as education, criminology and social policy, for which the empirical practices are closer to those deployed for software engineering. The aim of this workshop is to explore more deeply the experiences with, and potential of, applying this paradigm in software engineering to improve research and practice, and to identify how it will influence current empirical practices in software engineering.

(W14) Intl. Workshop on Dynamic Analysis (WODA 2007)
Day: 22 May, full day workshop    Venue: Conrad D

Co-Chairs: Alessandro Orso and Andreas Zeller

Dynamic analysis techniques are increasingly used to complement more traditional static analysis. Approaches based on static analysis operate on a static representation of the program, consider all possible (and some infeasible) behaviors, and are thus complete, but often imprecise. Dynamic analysis techniques, conversely, reason over a set of program executions and analyze only observed behaviors. Dynamic analysis includes both offline techniques, which operate on some captured representation of the system's behavior (e.g., a trace), and runtime techniques, which analyzes the system's behavior on the fly, while the system is executing. Although inherently incomplete, dynamic analyses can be more precise than their static counterpart and show promise in aiding the understanding, development, and maintenance of robust and reliable large-scale systems. In the last years, both practitioners and researchers are realizing that the limitations of static analysis can be overcome by integrating static and dynamic analysis, and that the performance of dynamic analysis can in turn be improved by leveraging static analysis. The overall goal of WODA 2007 is to bring together researchers and practitioners working in all areas of dynamic analysis to discuss new issues, share results and ongoing works, and foster collaborations.

(W15) Intl. Workshop on Software Technologies for Ultra-Large-Scale Systems (ULS 2007)
Day: 22 May, full day workshop    Venue: Marquette

Organisers: Richard P. Gabriel, Rick Kazman, Linda Northrop, Douglas C. Schmidt, and Kevin Sullivan

Given the inevitable trends towards increasing complexity of software-intensive systems, many future systems will be ultra-large scale (ULS). Radical scale-up will be observed in many dimensions: implementation complexity, distribution, decentralization, networking, storage, and quality-of-service, dependability/security, size and structure of development organizations and methods, complexity of organizations surrounding deployed systems, and so forth. Radical increases in scale and complexity will demand new approaches to all aspects of system conception, definition, development, deployment, use, maintenance, evolution, and regulation. If software-intensive systems developed today are likened to buildings, then ULS systems are more akin to cities: they will exhibit organization and require technological approaches fundamentally different than those that are appropriate at the level of existing systems. This workshop, the First ICSE Workshop on ULS systems, has several goals: to raise awareness of ULS systems in the ICSE community; to further our understanding of the characteristics of ULS systems; to explore the unique research problems of ULS systems; to help foster a community who study and build ULS systems; and to understand the role and the shortcomings of traditional software engineering concepts, methods, and tools relative to ULS systems.

(W16) 2nd Intl. Workshop on Incorporating COTS Software into Software Systems (IWICSS 2007)
Day: 22 May, full day workshop    Venue: Carver Room

Co-Chairs: Alexander Egyed, Hausi Müller, Dewayne E. Perry, Dennis B. Smith, Scott Tilley

The goal of the workshop is to explore innovative ways of integrating commercial off-the-shelf software products into software systems for purposes often unimagined by their creators. It will investigate the challenges and risks faced as well as the benefits gained in building COTS-based software systems. The papers accepted to this workshop will describe tools and techniques for plugging COTS software products into software systems safely, reliably, and predictably. In the past, researchers have predominantly investigated COTS component integration with respect to requirements engineering, risk assessment, and selection. The more recent integration of entire products into software applications complements traditional software development with techniques for designing, implementing, and testing COTS-based systems.

(W17) Intl. Workshop on Assessment of Contemporary Modularization Techniques (ACoM.07)
Day: 22 May, full day workshop    Venue: Conrad B

Co-Chairs: Elisa Baniassad , Alessandro Garcia, Cristina Videira Lopes, Christa Schwanninger, Jianjun Zhao

A number of new modularization techniques are emerging to cope with the challenges of contemporary software engineering, such as aspect-oriented software development (AOSD), feature-oriented programming (FOP), and the like. The effective assessment of such emerging modularization technologies plays a pivotal role on: (i) a better understanding of their real benefits and drawbacks when compared to conventional development techniques, and (ii) their effective transfer to mainstream software development. The ACoM workshop is the first initiative to put together researchers and practitioners with different backgrounds in order to discuss the multi-faceted issues that emerge in the assessment and/or comparison of new modularization techniques. The workshop will strongly be focused on discussions, and it will combine short presentations and discussion groups.

(W18) 4th Intl. Workshop on Software Engineering for Automotive Systems (SEAS 2007)
Day: 26 May, full day workshop    Venue: Marquette

Organisers: Alexander Pretschner (chair), Christian Salzmann, Bernhard Schätz, Thomas Stauner

The amount of software functions in cars as well as their interconnectivity grows exponentially. Driving forces of this development are the availability of cheaper and more powerful hardware as well as the demand for innovation through new functionality, e.g. to increase energy efficiency, comfort and safety. From a technical point of view, the software applications running on in-vehicle networks form a highly distributed mission-critical real-time system of the code size of a desktop workstation. Managing the complexity during development while keeping it fully predictable is the central issue in a market that Mercer estimates to hit a staggering 316 billion Euros by 2015. The workshop, the fourth in a very successful series, will be concerned with all aspects of software engineering for automotive systems. Specifically, we target the integration problem that is a consequence of the vertical (or modular) division of labor in the manufacturing process: automotive systems consist of a number of independently specified and developed sub-systems that have to be integrated into the overall system. Due to constraints like intellectual property this integration is based on nothing but the specification and development artifacts such as interface descriptions. Because of safety and quality requirements on automotive software, this integration phase is of particular relevance for software development. The workshop is intended to provide a discussion forum for researchers and practitioners working in or interested in the field of automotive software. The organizers and the program committee address both academia and industry to transfer techniques and methods from other domains to the applicability in embedded systems.

(W19) 3rd Intl. Workshop on Software Engineering for High Performance Computing Applications (SE-HPC 2007)
Day: 26 May, full day workshop    Venue: Carver Room

Organisers: Jeffrey Carver, Philip Johnson, Adam Porter, Walter Tichy and Lawrence Votta

High performance computing systems are used to develop software for wide variety of domains including nuclear physics, crash simulation, satellite data processing, fluid dynamics, climate modeling, bioinformatics, and financial modeling. Recent initiatives in the HPC community, such as the DARPA High Productivity Computing Systems program, recognize that dramatic increases processor speed and memory access times do not necessarily translate into high-level increases in actual development productivity. While the machines are getting faster, the developer effort required to fully exploit these advances can be prohibitive. There is an emerging movement within the HPC community to define new ways of measuring high performance computing systems, ways which take into account not only the low-level hardware components, but the higher-level costs of producing usable HPC applications. This movement creates an opportunity for the software engineering community to apply our techniques and knowledge to a new and important application domain. Furthermore, the design, implementation, and maintenance of HPC software systems can be significantly different from the systems and development processes more typically studied by the software engineering community. This workshop brings together researchers from the software engineering community with researchers and practitioners from the high performance computing system application community. The organization of the workshop allows participants to share perspectives and present findings from research and practice that are relevant to the HPCS application development. A significant portion of the workshop is devoted to discussion of the position papers with the goal of generating a research agenda to improve tools, techniques, and experimental methods for HPC software engineering in the future.

(W20) Intl. Workshop on Software Engineering for Pervasive Computing Applications, Systems and Environments (SEPCASE 2007)
Day: 26 May, full day workshop    Venue: Hennepin Room

Organisers: Anand Tripathi, Roy Campbell, Liviu Iftode and Paolo Bellavista

This workshop aims to provide a forum for researchers to discuss software engineering methods and related research challenges for designing and building pervasive computing systems and applications. Such systems are intended to support seamless mobility of users across different physical spaces by providing context-aware adaptation of their applications in regard to functionality, transparent resource discovery and access, and proactive actions. Context-based dynamic integration of distributed services and components in mobile applications is an intrinsic aspect of such environments. Building pervasive computing applications requires knowledge of many areas, such as programming models and software architectures, component based application integration, service-oriented architectures, middleware systems, security and privacy, sensor data aggregation for context management, database systems, policy-based system designs, fault-tolerant computing, application of formal methods, to name a few. This workshop would include presentations by the participants and several panel discussion sessions on topics related to these areas. The workshop participants would share their experiences and vision towards developing a common view of the best engineering practices for designing and building pervasive computing systems.

(W21) 2nd Intl. Workshop on Automation of Software Test (AST 2007)
Day: 26 May, full day workshop    Venue: Lasalle Room

Co-Chairs: Hong Zhu, Eric Wong and Amit Paradkar

Software testing is indispensable for all software development. It is imperative to reduce the cost and improve the effectiveness of software testing by automating the testing process, which contains many activities using a wide range of techniques and methods. In the past decades, a great amount of research effort has been spent on automatic test case generation, automatic test oracles, etc. and there is a rapid growth of practices in using automated software testing tools. The workshop aims at bridging the gap between theory and practice in order to improve the current-state of software testing practice and to foster innovative research in the area. The theme of the workshop focuses on both theories and practice of software test automation. The topics include, but are not limited to, the automation of software testing in the context of various software development methodologies, the techniques, methods, tools and environments of software test automation, and the experiments, empirical studies, experience reports and vision of the future on the automation of software testing.

(W22) Intl. Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2007)
Days: 26-27 May, 26 May (full day), 27 May (full day)    Venue: Symphony II

Organisers: Betty Cheng, Rogério de Lemos, Stephen Fickas, David Garlan, Marin Litoiu, Jeff Magee, Hausi A. Müller, Richard Taylor

An increasingly important requirement for software-intensive systems is the ability to self-manage by adapting at run time to handle such things as resource variability, changing user needs, and system intrusions or faults. Such a system must configure and reconfigure itself, continually tune and optimize itself, protect and recover itself, while keeping its complexity hidden from the user. The topic of self-adaptive and self-managing systems has been studied in a large number of specific application areas, including autonomic computing, robotics, control systems, programming languages, software architectures, fault-tolerant computing, and biological computing. The goal of this symposium is to bring together researchers and practitioners from many of these diverse areas to discuss the fundamental principles, state of the art, and critical challenges of self-adaptive and self-managing systems. Specifically, we intend to focus on the software engineering aspects, including the methods, architectures, algorithms, techniques and tools that can be used to support dynamic adaptive and self-managing behavior. Topics of interest include, but are not limited to: design and architectural language support for the self-adaptation of software; algorithms for software self-management; integration mechanisms for self-adaptive and self-managing systems; formal notations for modeling and analysis of software self-adaptation; architecture patterns for supporting self-adaptation; verification and validation of self-managing software; methods for engineering user-trust of self-managing systems; methods to instrument existing systems to observe self-managing behaviour over long periods of time; adaptive components; evaluation and assurance for self-adaptive systems; and decision algorithms for self-adaptive systems. The following application areas are of particular interest: system management; problem determination including logging, analysis and diagnostics; mobile computing; dependable computing; autonomous robotics; adaptable user interfaces; service-oriented applications.

Please refer to each specific workshop website for detailed information.