ICSE 2009: ICSE09
slide show picture of Vancouver
31st International
Conference on
Software
Engineering®
31st International Conference on Software Engineering, Vancouver, Canada, May 16-24, 2009.   Sign up for announcements!

RSS feed image RSS Feed

Information for
Potential Conference
Exhibitors

Software Engineering in Practice

The "Software Engineering in Practice" Track at ICSE 2009 is a two-day track dedicated to the software practitioner, with presentation primarily form software practitioners or on issues close to industrial practice.

This track includes experience reports from practitioners on new advances in software engineering methods, practices or tools. The presentations are on a variety of topics relevant to the practitioner and are given in a well-structured way so that you can see how they apply would apply to your own area.

The track consists of peer-reviewed presentations and two invited speakers. Many of these presentations are from well-known companies or organizations or joint work between academia and industrial organizations.

We are proud to announce our two invited speakers: Steve McConnell, who will be the opening keynote of ICSE (and this track) and Andrew Brownsword, Chief Architect of Electronic Arts (a company known for developing state-of-the-art electronic games).


Steve McConnell Keynote


Andrew Brownsword's invited talk on Reflecting On Development Processes in the Video Game Industry

Biography: Andrew Brownsword is Chief Architect, EA BlackBox. Joining Electronic Arts in 1990 he was responsible for core runtime libraries and tools to support multi-platform game development throughout the rapidly growing studio. This work included 2D/3D graphics software, communications, asynchronous systems, authoring tools, early 3D hardware drivers, and platform support for multiple platforms. In 1998 Andrew joined the Need For Speed franchise team to lead the transition from C to C++ and to object-oriented data-driven design. Andrew was responsible for key components and architecture, delivered on multiple platforms. In 2004 he transitioned to the new EA BlackBox studio in downtown Vancouver and has been leading an internal shared technology team. As part of this role he has been guiding the transition to the highly concurrent next generation PlayStation3, XBox360 and PC platforms. Andrew has a B.Sc. in Computing Science from UBC.

Abstract: In the past thirty years consumer video game hardware has progressed from simple 8-bit processors, some dedicated display logic and a few kilobytes of memory to high clock rate multi-core processors coupled with a programmable graphics unit, large memories, high capacity optical and fixed drives, network interfaces, high definition audio/video output, and sophisticated user input devices. With this tremendous increase in capability has come a corresponding increase in the sophistication of video games, broadening their market appeal from a niche into a business that rivals Hollywood. The need to create products of this complexity has driven project team sizes from a couple of hackers in a basement to multi-disciplinary teams often numbering well over a hundred. Allowing project teams of this size to function effectively and deliver products on a manageable schedule has driven the evolution of software and content authoring practices and processes within the games industry. This evolution has drawn on experiences, concepts and tools from the software development industry at large, integrating them into the unique environment of video game development. This talk will provide an overview of some of these processes and best practices, as well as the key challenges in the creation of hit titles such as Skate and Need For Speed.

Papers

Filter papers by category:

Show all
Architecture
Defect Prediction
Model-Driven
Process Improvement
Risk Management
Security
Testing
Validation


An Open Test Bed for Medical Device Integration and Coordination (Andrew King, Sam Procter, Dan Andresen, John Hatcliff, Steve Warren (Kansas State Univ.) William Spees, Raoul Jetley Paul Jones, Sandy Weininger (US Food and Drug Administration) )

Authors: Andrew King, Sam Procter, Dan Andresen, John Hatcliff, Steve Warren (Kansas State Univ.) William Spees, Raoul Jetley Paul Jones, Sandy Weininger (US Food and Drug Administration)
Presenting at: TBD
Affiliation: Kansas St. Univ., US FDA (USA)

Abstract: Modern medical devices increasingly incorporate connectivity mechanisms that offer the potential to stream device data into electronic health records, integrate information from multiple devices into single customizable displays, and coordinate the actions of groups of cooperating devices. However, it is not clear what middleware and integration architectures may be best suited for these possibly numerous scenarios. Moreover, current verification and validation techniques and regulatory guidelines used in the device industry are not targeted to assuring groups of integrated devices. In this paper, we propose a publish-subscribe architecture for medical device integration based on the Java Messaging Service, and we report on our experience with this architecture in multiple scenarios that we believe represent the types of deployments that will benefit from rapid device integration. This implementation serves as an open test bed for exploring a multitude of development, quality assurance, and regulatory issues related to medical device coordination.

Back to top

Automated Testing of Healthcare Document Transformations in the PICASSO Interoperability Platform (Massimo Pascale, Marcello Roselli, Umberto Rugani (Codices) Cesare Bartolini, Antonia Bertolino, Francesca Lonetti, Eda Marchetti, Andrea Polini (ISTI-CNR))

Authors: Massimo Pascale, Marcello Roselli, Umberto Rugani (Codices) Cesare Bartolini, Antonia Bertolino, Francesca Lonetti, Eda Marchetti, Andrea Polini (ISTI-CNR)
Presenting at: TBD
Affiliation: Codices, ISTI-CNR (Italy)

Abstract: In every application domain, achieving interoperability among heterogenous information systems is a crucial challenge and alliances are formed to standardize data-exchange formats. In the healthcare sector, HL7-V3 provides the current international reference models for clinical and  administrative documents. Codices, an Italian company, provides the PICASSO platform that uses HL7-V3 as the pivot format to fast achieve a highly integrated degree of interoperability among health-related applications. Given the XML structure of HL7-V3, PICASSO can exploit the XSLT technology to flexibly transform documents. However, Codices spends a large part of the PICASSO deployment workflow for manually validating the required XSL stylesheets. In this paper, we describe a pilot experience in automating this testing activity, based on the TAXI tool that applies systematic black-box techniques to generate a set of XML instances from a schema. Observed benefits to Codices development process are reported and discussed.

Back to top

Automatic GUI Test Generation for Smartphone Applications -- an Evaluation (Antti Jääskeläinen, Mika Katara, Antti Kervinen, Mika Maunumaa, Tuula Pääkkönen (Nokia Devices), Tommi Takala, Heikki Virtanen (Tampere University of Technology))

Authors: Antti Jääskeläinen, Mika Katara, Antti Kervinen, Mika Maunumaa, Tuula Pääkkönen (Nokia Devices), Tommi Takala, Heikki Virtanen (Tampere University of Technology)
Presenting at: TBD
Affiliation: Tampere Univ. of Technology, Nokia (Finland)

Abstract: In this paper we present the results of an evaluation where we studied the effectiveness of automatic test generation for graphical user interface (GUI) testing of smart phone applications. To describe the context of our evaluation, the tools and the test model library we have developed for the evaluation are also presented. The library contains test models for basic S60 applications, such as camera, contacts, etc. The tools include an on-line test generator that produces sequences of so called keywords to be executed on the test targets. In our evaluation, we managed to find over 20 defects from applications that had been on the market for several months, and heavily tested using conventional methods before the release. We also describe the problems we faced during the evaluation.

Back to top

Case Study: How Analysis of Customer Found Defects Can Be Used by System Test to Improve Quality (Evelyn Moritz (Avaya))

Authors: Evelyn Moritz (Avaya)
Presenting at: TBD
Affiliation: Avaya (USA)

Abstract: In the context of long-term, large-scale, industrial software development, process improvement and measurement to support process improvement is a necessity.  Our software projects face the ongoing challenge, “How can we reduce the number of customer found defects in a cost-effective manner?” This paper describes how the system test team of a large telecommunications company approached this challenge.  Customer found defects were analyzed in a systematic way to provide information that system testers could turn into actionable activities in a test lab. Our findings indicated that most defects found by customers were associated with existing feature usage in various configurations while our test focus had primarily been on new feature operation. We categorized the information from our analysis using a technique called Minimum Conditions.  Then, these data, together with an Exploratory Test method, were used to supplement existing test processes.  The effort resulted in a $750,000 savings over two product releases.

Back to top

Experience Report: Using Tools and Domain Expertise to Remediate Architectural Violations in the LogicBlox Software Base (R. E. K. Stirewalt (Michigan State Univ.), Spencer Rugaber, Hwa-You Hsu (Georgia Inst. Of Tech.), David Zook (LogicBlox))

Authors: R. E. K. Stirewalt (Michigan State Univ.), Spencer Rugaber, Hwa-You Hsu (Georgia Inst. Of Tech.), David Zook (LogicBlox)
Presenting at: TBD
Affiliation: Michigan State Univ., Georgia Inst. Of Tech., LogicBlox (USA)

Abstract: When modeling the architecture of an existing software system, developers often find inconsistencies between the conceptual and the as-built architecture. To impose the conceptual view on the code often involves large refactoring to remediate architectural violations. This paper reports our experience applying large refactoring to remediate an architectural violation in LogicBlox, a large, multi-language multi-platform system. We used DSM-based analysis in conjunction with a suite of code analysis tools to identify and effect large refactorings. A key insight of this experience is the value of automatically generated proto-interfaces, which may help experts identify standard abstractions around which to structure the refactoring effort.We contribute a process for refactoring that includes the generation of proto-interfaces and the explicit inclusion of expert review.

Back to top

Experience with Modularity in an Advanced Teleconferencing Service Deployment (Eric Cheung, Thomas M. Smith (AT&T Labs))

Authors: Eric Cheung, Thomas M. Smith (AT&T Labs)
Presenting at: TBD
Affiliation: AT&T Labs (USA)

Abstract: In this paper, we describe our experience with the design of an advanced teleconferencing service under two different frameworks -- an early implementation of the Distributed Feature Composition architecture, and the SIP Servlet API. The usual design goals of software modularity for encapsulation and reuse are pursued. Interestingly, two very different designs resulted. This paper discusses the factors that influenced our design decisions. In particular, we examine the different characteristics of the two frameworks as well as the maturity of project requirements, and illustrate the ways in which these factors affect various mechanisms for achieving software modularity. We also aim to draw on this experience to propose a set of design guidelines for building modular, composable SIP Servlet applications for Voice over IP and converged services

Back to top

Extended eTVRA vs. Security Checklist: Experiences in a Value-Web (Ayse Morali, Emmanuele Zambon (Univ. of Twente), Siv Hilde Houmb, Karin Sallhammar (Telenor R&I), Sandro Etalle (Eindhoven Tech. Univ.) )

Authors: Ayse Morali, Emmanuele Zambon (Univ. of Twente), Siv Hilde Houmb, Karin Sallhammar (Telenor R&I), Sandro Etalle (Eindhoven Tech. Univ.)
Presenting at: TBD
Affiliation: Univ. Twente (The Netherlands), Telenor R&I (Norway), Eindhoven Tech. Univ. (The Netherlands)

Abstract: Security evaluation according to Common Criteria is a resource and time demanding activity. Therefore, only few companies take their products through a Common Criteria evaluation. To support security evaluation, the European Telecommunications Standards Institute (ETSI) has developed a threat, vulnerability, risk analysis (eTVRA) method for the Telecommunication (Telco) domain. n this paper, we evaluate the time and resource efficiency of parts of eTVRA and the quality of the result produced by following eTVRA compared to a more pragmatic approach (Protection Profile-based checklists). We use both approaches to identify and analyze risks of a new SIM card currently under development by a small hardware company and a large Telco provider.

Back to top

Extracting, Specifying and Predicting Software System Properties in Component Based Real-Time Embedded Software Development (Ji Eun Kim (Research and Technology Center, Bosch LLC), Oliver Rogalla, Simon Kramer, Arne Haman (Corporate Research, Robert Bosch GmbH))

Authors: Ji Eun Kim (Research and Technology Center, Bosch LLC), Oliver Rogalla, Simon Kramer, Arne Haman (Corporate Research, Robert Bosch GmbH)
Presenting at: TBD
Affiliation: Bosch (USA), Robert Bosch (Germany)

Abstract: Bosch has established Component Based Software Development (CBSD) for automotive systems, which are resource constrained real-time embedded systems such as engine control systems. Classical CBSD approaches enable effective software reuse mainly in functional aspects by managing complexity with abstraction and encapsulation. However, to fully exploit the advantages of CBSD for real-time embedded systems, non-functional system properties such as timing and memory usage need to be addressed by the underlying component model. It is important that non-functional properties have a certain degree of precision to ensure hardware dimensioning and cost optimization for such systems. Static analysis methods used to extract or analyze non-functional properties (e.g., worst case execution time) in most cases introduce overestimation which is a hindrance for accurate prediction of non-functional properties. Therefore, accurate prediction of system properties requires specifying semantic context information such as modes in the component model to reduce overestimation. This paper describes how we extend the Bosch software component model to specify non-functional component properties with modes information. We demonstrate how mode dependent timing behavior is automatically extracted from the software, specified in the component specification and used for analysis and prediction in real-time embedded systems. This paper shows that semantic context information such as modes enhances performance analysis and prediction by ruling out infeasible worst-case situations that lead to overly conservative performance predictions.

Back to top

Functional Abstractions for testing Repository-Style Information Systems (Paolo Salvaneschi (Univ. of Bergamo))

Authors: Paolo Salvaneschi (Univ. of Bergamo)
Presenting at: TBD
Affiliation: Univ. Bergamo (Italy)

Abstract: We propose a set of functional test patterns for testing a class of repository-style information systems. This class, that we call “workflow-based”, implements not only functions reading and writing from/to the database, but also workflows (business processes) that may be constrained by states of application objects. Patterns are based on models (functional abstractions) of the software product. The testing strategy combines testing different models (hierarchy of functions, models of business processes and state/transition automata) using different testing techniques for each type of model. We discuss the patterns application to a large health care software product. We analyze the results (about 2700 test cases) and the effect of testing multiple patterns on the discovered failures and types of faults. We also describe the use of the method for testing about thirty software applications of an information system of a large retail company.

Back to top

Improving Quality, One Process Change At a Time (Caryna Pinheiro (MCIT Solutions Inc.), Frank Maurer (University of Calgary), Jonathan Sillito (University of Calgary))

Authors: Caryna Pinheiro (MCIT Solutions Inc.), Frank Maurer (University of Calgary), Jonathan Sillito (University of Calgary)
Presenting at: TBD
Affiliation: MCIT Solutions, Univ. Calgary (Canada)

Abstract: We report on one organization's experience making process changes in a suite of projects. The changes were motivated by clients’ requests for better time estimates, better quality, better stability and more reliable test scheduling, resulting from high number of bug reports and constant delivery delays. The teams embarked on a series of top-down process changes inspired by the IBM Rational Unified Process. Changes included: adopting the Rational Tools, introducing iterative development, and later the hiring of a formal manual testing teams and supporting refactoring activities. To assess the impact of these changes we have collected fault data from 23 releases of the systems, including releases from before and after these changes had been introduced. In this report we discuss the challenges in making these process changes, the impact of these changes, and how the development teams leveraged these successes to gradually introduce other process improvements in a bottom-up fashion.

Back to top

Improving Software Risk Management in a Medical Device Company (Fergal Mc Caffery (Dundalk Institute of Technology), John Burton (Vitalograph Ltd.), Ita Richardson (Lero, University of Limerick))

Authors: Fergal Mc Caffery (Dundalk Institute of Technology), John Burton (Vitalograph Ltd.), Ita Richardson (Lero, University of Limerick)
Presenting at: TBD
Affiliation: Vitalograph, Dundalk, LERO (Ireland)

Abstract: Software Risk Management (RM) within Medical Device (MD) companies is a critical area. Failure of the software can have potentially catastrophic effects, leading to injury of patients or even death. Therefore regulators penalise MD manufacturers that do not devote sufficient attention to the areas of hazard analysis and RM throughout the software lifecycle. This paper describes the experience of a MD software development organization when they engaged in a research project to improve their RM practices. We explain how this was achieved through the development of a software process improvement RM model that integrates regulatory MD RM requirements with the goals and practices of the Capability Maturity Model Integration (CMMI). This model is known as the Risk Management Capability Model (RMCM). The authors describe the complete project lifecycle and evaluate the success of the project.

Back to top

Model Checking Flight Control Systems: The Airbus Experience (Thomas Bochot, Pierre Virelizier (Airbus France), Hélène Waeselynck (LAAS-CNRS), Virginie Wiels (ONERA))

Authors: Thomas Bochot, Pierre Virelizier (Airbus France), Hélène Waeselynck (LAAS-CNRS), Virginie Wiels (ONERA)
Presenting at: TBD
Affiliation: Airbus (France)

Abstract: This paper presents experiments realized by Airbus on model checking a safety critical system, lessons learnt and ways forward to extend the industrial use of formal verification at design level.

Back to top

Predicting Defects in SAP Java Code: An Experience Report (Tilman Holschuh (SQS), Markus Päuser (SAP), Kim Herzig (Saarland Univ.), Thomas Zimmermann (Univ. Calgary), Rahul Premraj (Vrije Univ.), Andreas Zeller (Saarland Univ.))

Authors: Tilman Holschuh (SQS), Markus Päuser (SAP), Kim Herzig (Saarland Univ.), Thomas Zimmermann (Univ. Calgary), Rahul Premraj (Vrije Univ.), Andreas Zeller (Saarland Univ.)
Presenting at: TBD
Affiliation: SQS, SAP, Saarland Univ. (Germany), Univ. Calgary (Canada), Vrije Univ. (The Netherlands),

Abstract: Which components of a large software system are the most defect-prone? In a study on a large SAP Java system, we evaluated and compared a number of defect predictors, based on code features such as complexity metrics, static error detectors, change frequency, or component imports, thus replicating a number of earlier case studies in an industrial context. We found the overall predictive power to be lower than expected; still, the resulting regression models successfully predicted 50…quot;60% of the 20% most defect-prone components.

Back to top

Refactoring Big Balls of Mud (Paul Adamczyk, Arturo Zambrano, Federico Balaguer, (LIFIA, Facultad de Informatica, Universidad Nacional de La Plata))

Authors: Paul Adamczyk, Arturo Zambrano, Federico Balaguer, (LIFIA, Facultad de Informatica, Universidad Nacional de La Plata)
Presenting at: TBD
Affiliation: LIFIA, Facultad de Informatica, Universidad Nacional de La Plata (Argentina)

Abstract: This experience report describes a redesign of a large commercial system. The goal of the redesign was to break up the system into two parts without changing its external behavior. Such a task is essentially a refactoring. We describe our redesign process as steps of a refactoring called Extract subsystem to a separate process. We believe that documenting large-scale refactorings is necessary to make redesigning commercial software easier.

Back to top

Using a Validation Model to Measure the Agility of Software Development in a Large Software Development Organization (Mikio Ikoma, Masayuki Ooshima, Takahiro Tanida, Michiko Oba (Software Division, Hitachi, Ltd.), Sanshiro Sakai (Shizuoka University))

Authors: Mikio Ikoma, Masayuki Ooshima, Takahiro Tanida, Michiko Oba (Software Division, Hitachi, Ltd.), Sanshiro Sakai (Shizuoka University)
Presenting at: TBD
Affiliation: Hitachi, Shizuoka Univ. (Japan)

Abstract: This paper provides a metric for evaluating the agility of software development projects and organizations. The metric is based on a validation model derived from the V&V model. In this metric, agility is defined as minimizing the time between the production of intermediate materials and the validation of those intermediate materials. The major distinguishing feature of this metric is that it is independent of any particular software development process model, such as agile software development methods and the waterfall model. Therefore, this metric can be used for software development organizations that have a wide variety of software development projects with varying kinds of development processes. This metric has been shown to be practical in large software development organizations through exhaustive use in more than 7,000 projects over the last 10 years.

Back to top

WEAVE: WEb Applications Validation Environment (Sreeranga P. Rajan, Oksana Tkachuk, Mukul Prasad, Indradeep Ghosh, Nitin Goel, (Fujitsu Laboratories of America), Tadahiro Uehara (Fujitsu Laboratories Limited))

Authors: Sreeranga P. Rajan, Oksana Tkachuk, Mukul Prasad, Indradeep Ghosh, Nitin Goel, (Fujitsu Laboratories of America), Tadahiro Uehara (Fujitsu Laboratories Limited)
Presenting at: TBD
Affiliation: Fujitsu Laboratories (USA, Japan)

Abstract: Ensuring software quality in the presence of multiple software development methodologies such as agile and waterfall models is a challenging task. Web applications are released to customers in "Beta" mode due to tremendous pressure on "time-to-market". In order to check end-to-end functional behavior of web applications, conventional testing tools have not matched short release cycles and have not kept up with agile software methodologies. In this paper we present a tool framework called WEb Applications Validation Environment (WEAVE) for checking functional behavior such as business logic and security of web applications. We have used WEAVE for finding defects in large Java-centric commercial-strength Web applications. We describe how we have architected WEAVE as a web service for company's internal software teams to improve software quality without an upfront investment in licenses and computing infrastructure.

Back to top