Here’s an updated description of the ICSE session I kicked off this blog with. Looks like we’re scheduled for the second morning afternoon of the conference (Thurs May 21, 11am 2pm), straight after the keynote.
Update: Slides and notes from the session now available.
Software Engineering for the Planet
This session is a call to action. What can we, as software engineers, do to help tackle the challenge of climate change (besides reducing our personal carbon footprints)? The session will review recent results from climate science, showing how big the challenge is. We will then identify ways in which software engineering tools and techniques can help. The goal is to build a research agenda and a community of software engineering researchers willing to pursue it.
The ICSE organisers have worked hard this year to make the conference “greener” – to reduce our impact on the environment. This is partly in response to the growing worldwide awareness that we need to take more care of the natural environment. But it is also driven by a deeper and more urgent concern.
During this century, we will have to face up to a crisis that will make the current economic turmoil look like a walk in the park. Climate change is accelerating, confirming the more pessimistic of scenarios identified by climate scientists [1-4]. Its effects will touch everything, including the flooding of low-lying lands and coastal cities, the disruption of fresh water supplies for much of the world, the loss of agricultural lands, more frequent and severe extreme weather events, mass extinctions, and the destruction of entire ecosystems .
And there are no easy solutions. We need concerted systematic change in how we live, to reduce emissions so as to stabilize the concentration of greenhouse gases that drive climate change. Not to give up the conveniences of modern life, but to re-engineer them so that we no longer depend on fossil fuels to power our lives. The challenge is massive and urgent – a planetary emergency. The type of emergency that requires all hands on deck. Scientists, engineers, policymakers, professionals, no matter what their discipline, need to ask how their skills and experience can contribute.
We, as software engineering researchers and software practitioners have many important roles to play. Our information systems help provide the data we need to support intelligent decision making, from individuals trying to reduce their energy consumption, to policymakers trying to design effective governmental policies. Our control systems allow us to make smarter use of the available power, and provide the adaptability and reliability to power our technological infrastructure in the face of a more diverse set of renewable energy sources.
The ICSE community in particular has many other contributions to make. We have developed practices and tools to analyze, build and evolve some of the most complex socio-technical systems ever created, and to coordinate the efforts of large teams of engineers. We have developed abstractions that help us to understand complex systems, to describe their structure and behaviour, and to understand the effects of change on those systems. These tools and practices are likely to be useful in our struggle to address the climate crisis, often in strange and surprising ways. For example, can we apply the principles of information hiding and modularity to our attempts to develop coordinated solutions to climate change? What is the appropriate architectural pattern for an integrated set of climate policies? How can we model the problem requirements so that the stakeholders can understand them? How do we debug the models on which policy decision are based?
This conference session is intended to kick start a discussion about the contributions that software engineering research can make to tackling the climate crisis. Our aim is to build a community of concerned professionals, and find new ways to apply our skills and experience to the problem. We will attempt to map out a set of ideas for action, and identify potential roadblocks. We will start to build a broad research agenda, to capture the potential contributions of software engineering research, and discuss strategies for researchers to refocus their research towards this agenda. The session will begin with a short summary of the latest lessons from climate science, and a concrete set of examples of existing software engineering research efforts applied to climate change. We will include an open discussion session, to map out an agenda for action. We invite everyone to come to the session, and take up this challenge.