International Conference on
Global Software Engineering

ICGSE 2007
Munich, Germany
August 27-30, 2007

Conference Schedule
Keynote Talks
Conference Series
Technical Program
Organizing Committee
Program Committee
Important Dates
Venue and Hotel
Corporate Sponsors
ICGSE 2006
Contact Us

Important notice: Tutorials 2 and 5 will not be offered at ICGSE, please select a different tutorial instead.

Tutorials chair: Bernd Bruegge, Technical University Munich, Applied Software Engineering

The ICGSE 2007 offers 6 half-day tutorials. All will take place on August, 27, 2007 in Munich, Germany at the TU Munich site (see Venue).

T1: Risk Mitigation Tactics for Planning and Monitoring Global Software Development Projects
Matt Bass and Michael Smith, Siemens Corporate Research, Princeton, NJ (USA)
August 27, 2007, Half day Tutorial (morning)

This tutorial describes a structured approach for determining the global software development (GSD) related risks specific to a given project, selecting appropriate tactics for addressing these risks, and suggesting ways in which the level of risk can be monitored during the execution of the project.

Developing software using teams with geographically distributed teams presents a unique set of challenges that influence virtually all aspects of a project. The ways in which a particular project is influenced, however, depend on the specific characteristics of the project itself. As a result, no single solution is suitable for all projects. Understanding what strategies might work best on a given project is a significant challenge. This tutorial describes an approach for determining the GSD related risks, selecting appropriate tactics for addressing these risks, and suggesting ways in which the level of risk can be monitored during the execution of the project.

Topics Covered
Overview of issues inherent with GSD
Assessing risk in a GSD project
Selecting appropriate tactics for addressing the risks
Monitoring the ongoing level of risk during the execution of the project
A case study of an application of this approach

Matthew Bass
For the last several years Matthew Bass has worked on and research issues associated with developing software using geographically distributed teams. He has worked as a software architect, requirements engineer, and software engineer for applications in the telecommunication domain, automotive domain, and building automation domain. He is a co-author of the "Global Software Development Handbook" and the author of several journal and conference papers on the subject. Matthew has a Masters degree from Carnegie Mellon University in Software Engineering and a Bachelors Degree in Computer Science from the University of Pittsburgh.

Michael Smith
Michael has extensive experience in Global Software Development Projects in many capacities. He currently is a researcher and architect at Siemens Corporate Research (SCR), where he has most recently been leading the testing team for large mission critical project that is spread across multiple continents. Michael has given talks at various workshops and conferences, been involved with teaching, and has co-authored several papers on this subject and currently is working on several additional papers in this area. Michael has many years of experience in the telecommunications domain working on embedded system development and device drivers. Michael holds a Masters Degree in Software Engineering with a focus on distributed development.

Tutorial Level

Prior knowledge required
The tutorial is primarily aimed at practitioners.
Prior experience with large-scale software development projects is helpful, but not necessary.

Recent change: Tutorial 2 will not be offered at ICGSE, please select a different tutorial instead.

T2: Building Effective Global Software Test Teams through Training
Michael Hackett, LogiGear Corporation, Foster City, CA (USA)
August 27, 2007, Half day Tutorial (afternoon)

Software testing is part art, part science and a unique facet of software development. How to test software is not taught well in most places, especially considering the differences between software developers and software testers. Getting useful information from the test team is key to effective project management. In global teams testing can quickly become ineffective and a problem. Effective training for your offshore test team is critical to your organization's success.
The objective of this tutorial is to:
- use training to solve technical and management issues
- anticipate cultural and organizational issues unique to software testing
- use best-practice training for staff retention
- minimize stress and late-night meetings
- ensure that you get the right information from the offshore team

Michael Hackett, Vice President of Training, Consulting and Publications, is a founding partner of LogiGear Corporation. He has almost two decades of experience in software engineering and the testing of shrink-wrap, client/server and web-based applications in Banking, Securities, Healthcare and Consumer Electronics. Michael has helped well-known companies including Palm Computing, Oracle, CNET, Electronics for Imaging, Adobe Systems, The Learning Company, and The Well produce, test and release applications ranging from business productivity to educational multimedia titles - in English as well as a multitude of other languages. He has co-authored two books on software testing. Testing Applications on the Web- Test Planning for Mobile and Internet-Based Systems (Wiley, 2nd ed. 2003), available in English, Chinese and Japanese and Global Software Test Automation (HappyAbout Publishing, 2006). He currently sits on the Board of Advisors and teaches for the Certificate in Software Quality Engineering and Management at University of California at Santa Cruz Extension. Michael's training has brought Silicon Valley testing expertise to 10 countries. He holds a Bachelor of Science in Engineering from Carnegie Mellon University.

Tutorial level

Prior knowledge required
Familiarity with Software Testing
Familiarity with Offshore Team Hiring, Technology Transfer or Staff Development

T3: What Did You Say? Intercultural expectations, misunderstandings, and communications.
Frederick Zarndt, Planman Consulting, Coronado, CA (USA)
August 27, 2007, Half day Tutorial (morning)

What one says to compatriots in face-to-face conversations is often misunderstood; imagine the possibilities for misunderstanding with someone halfway around the world living in a different culture! This tutorial provides frameworks for intercultural communication and understanding based on the presenter's own experiences and on work by Geert Hofstede and others.

Frederick has lived and worked in the USA, Germany, Switzerland, Libya, Argentina, India, and Israel and visited many, many other countries for business and pleasure. Both as an individual contributor and as a manager, he has more than 25 years experience in software development at companies ranging from Seismograph Service Corporation in Libya, to Siemens-Albis in Switzerland, to Novell in the USA, to an internet startup in Utah USA, and to Planman Consulting, an Indian outsourcing firm.
Frederick served as Business Director and on the Board of Directors of a private, non-profit educational corporation specializing in individualized curriculum and instruction for kindergarten, elementary, and secondary students for 10 years. He has taught workshops on various topics since 1988.

Tutorial Level
Anyone can benefit, especially those new to global software development.

Prior knowledge required
None, although experience in working with other cultures is helpful.

T4: Seeing inside: Using social network analysis to understand patterns of collaboration and coordination in global software teams
Kate Ehrlich, Giuseppe Valetto, Mary Helander, IBM Research, USA
August 27, 2007, Half day Tutorial (afternoon)

One of the pervasive challenges facing any software development team is getting the right level of communication to ensure that people are able to coordinate their work effectively. The normal communication challenges that exist in any software project are exaggerated in global software teams by the different time-zones, cultures, and working environments. Communication issues are especially hard to address in software teams because they are largely invisible to management or to individuals in the team. Social network analysis (SNA) is an established method for revealing patterns of human communication and decision-making. This tutorial introduces students to basic concepts in SNA, illustrates how SNA can be used to address common communication problems in global software teams, and provides structured exercises in data capture, analysis and interpretation.

This tutorial is suitable for anyone involved in managing, participating in or studying global software development teams.

Dr. Kate Ehrlich
Kate is a researcher in the Collaborative User Experience group at IBM Research where she uses Social Network Analysis (SNA) as a research and consulting tool to gain insights into patterns of collaboration in distributed teams. She has used SNA with over 60 groups covering team dynamics, knowledge and information flow, collaboration, communities, innovation, software development and governance structure. Kate has published several academic and general articles on SNA, given presentations on SNA and was interviewed for a Business Week article on the use of SNA in organizations and on innovation. At the last ICGSE conference she presented a research paper that used SNA to study global software delivery teams. A version of this tutorial has been successfully taught to several internal consulting and technical groups.

Dr. Giuseppe Valetto
Peppo is a post-doc in the Software Quality and Testing group at IBM Research, where he is investigating the construction and analysis of socio-technical networks that can be derived from information kept in repositories commonly employed in software development projects. He is interested in how those networks relate to software quality, organizational performance, and, in general, the efficient governance of software development. Peppo's background is in software engineering and distributed systems research. He has taught courses on software engineering topics at CEFRIEL, in Milan, Italy and Columbia University, and he has published a number of articles on issues like software process, collaborative development tools, requirements engineering and estimation of development costs.

Dr. Mary Helander
Mary is a Math Scientist at IBM Research. She has 20+ years of industry and academic experience in operations research, software engineering and network optimization. Over the past two years, she has focused her work on network algorithms and analytics toward SNA. She is currently collaborating with Peppo and Kate on research related to the use of SNA methodology in software engineering and IT governance. Prior to joining IBM, Mary was an Associate Professor and Director of the Applied Software Engineering Lab at Linköping University in Sweden. She also taught extensively and did research at Northeastern University and the University at Buffalo.

Tutorial level

Prior knowledge required
Introductory knowledge of statistics; familiarity with software engineering repositories and tools (e.g. CVS, Bugzilla, etc.).

Recent change: Tutorial 5 will not be offered at ICGSE, please select a different tutorial instead.

T5: System Safety for Software Engineers in Global Industry: Concepts and Implementation
Andrew J. Kornecki, Department of Computer and Software Engineering, Embry Riddle Aeronautical University, Daytona Beach, FL (USA)
August 27, 2007, Half day Tutorial (morning)

This introductory tutorial is designed to provide a perspective on development of software-intensive safety-related system in a regulated industry where the multidisciplinary projects reach across national boundaries. The safety concepts and implementations are discussed focusing on the necessary conformance to local and international safety standards and guidelines.

The main goal of the tutorial is to increase the awareness of concepts, principles, methods and techniques related to software safety, as part of the overall system safety for complex systems developed in regulated industries working in a global environment. Software intensive dependable products are developed in multinational companies operating under variety of local and global guidelines and regulations. Safety critical systems and high integrity systems require additional activities to increase the level of their safety assurance. As modern systems are software intensive, there is a need to introduce safety analysis and design techniques into the development lifecycle. The field of safety critical systems covers multitude of diverse topics. There is need for understanding the concepts of dependability with a particular focus on safety. The safety requirements, hazard and risk analyses, fault tolerance, basics of software reliability, and issues of verification, validation and certification need to be discussed. The issues of safety standards across the application domain and across national boundaries are integral part of the tutorial offering. The selected tools supporting safety assurance of software products will be also introduced.
The tutorial fits the multidisciplinary audience due to the nature of modern complex systems requiring dependability and safety, developed in organizations spanning beyond one nation boundaries, and requiring conformance with variety of guidelines and standards. System, control, electrical, aerospace and software engineers, project managers, and anyone involved in software intensive system development may benefit from the tutorial. The tutorial provides a jump-start for engineers who want to apply practical safety analysis techniques. Due to breadth-first nature of the tutorial, no specific pre-requisites are required.

Dr. Kornecki received MSEE'70 in control and computer engineering and PhD'74 in systems engineering from the AGH Technical University of Mining and Metallurgy, Krakow, Poland. He has over thirty years of teaching/research experience in computer simulation, real-time software, and aviation applications. He teaches graduate software engineering courses on real-time design, performance analysis, and software safety. He contributed to research on intelligent simulation training systems, software engineering education, and safety critical aviation systems, and served as a visiting researcher with the Federal Aviation Administration (FAA), With NSF funding, he established a Real Time Laboratory at ERAU. He is a member of IEEE. He presented tutorials on the System Safety Conferences (2003, 2004), IEEE/NASA SE Workshop (2004), ACMSE 44th Southeast Conference (2006), and conducted industry training for engineers at CRM Guidant (2001, 2002), and for the FAA Aircraft Certification Training Program (2002, 2003, 2005).

T6: An Introduction to Global Product Line Requirements Engineering
Brian Berenbach, Siemens Corporate Research, Princeton, NJ USA)
August 27, 2007, Half day Tutorial (afternoon)

Empirical studies have shown that the use of a product line approach to software development can result in shorter time to market and improved productivity. Outsourcing and distributed development has added a new dimension to product management, exacerbating problems associated with transitioning from marketing studies to product definition to analysis and design. Communication problems can arise when requirements for products are captured on a regional or international basis. This half day tutorial provides an introduction to global product line requirements engineering from the perspective of project and product management. Topics covered include geographically distributed product lines including organizational and technical issues of globalization, distributed requirements elicitation, feature modeling, the role of the product line manager, and the use of metamodels to define global/distributed processes. The tutorial will cover the major facets of world-wide product line requirements engineering. Starting with product line requirements and feature modeling, the tutorial will cover the key concepts of requirements elicitation and management processes for product lines where there are issues of globalization or regionalization. Team exercises are based on real industrial issues encountered during the development of regional product lines at Siemens and other companies.

Berenbach is the program manager for requirements engineering at Siemens Corporate Technology. He has been working in the field of requirements engineering for over 15 years, first as a consultant, and then as a senior member of the technical staff at Siemens Corporate Research in Princeton. Recently at Siemens his program has been involved with product and product line definitions for such diverse products as medical systems, baggage handling, mail sorting, automated warehouses, and embedded automotive systems.

Prior knowledge required
No prior knowledge of requirements engineering processes or software development is required. Any business or software professional will be able to follow the material and understand the concepts.

Tutorial Level
This tutorial is primarily for professionals who are interested in learning about the product line approach to distributed software development, including roles, organizational structures and formal approaches to product line requirements definition.