Software engineering and sustainability

Posted on July 30, 2009


We believe Software Engineering is ideally placed to provide a vehicle for sustainability in computing.

Here’s the aspects of sustainability we would like to see in our graduates.   With only a few exceptions, these things are covered by the Software Engineering curriculum (see paper for our teaching structure).

Systems Thinking:

– actions will have impacts + & -, intended and unintended, across scales, temporal, spatial, social

– relationships (hierarchies, partnerships)

– humans a part of nature

– scope of sustainability, relationships, history, definitions

Ethics etc:

– ethics, justice, culture, law, social, government frameworks

– roles of values, cultural beliefs

– individual and community involvement as important components

Evaluating Practice and Change:

-change management

-precautionary principle


-methods of decision making

-micro/macro ecological signals

-democratic process

-self evaluation, personal and professional

Earth Functioning / Basic Science:

– ecosystems

– natural laws governing functions

– interdependence / holism

-biological diversity

– carrying capacity

Sustainable Strategies, Basic Approaches (the toolkit):
-technical,  scientific, behavioural strategies  (4 system conditions)

-SBN auditing topics

-renewable energy

-pollution, waste

-industrial ecology

So what’s missing?     Clearly the specifics of sustainability are not covered.   Software Engineering does not include the history and definitions of sustainability.    It does, though,  cover the history of software engineering,  in some ways this history – of  new paradigms, of changing processes, 0f changing weights of structure and agility, of  a steady increase in the importance of the user, of a recognition that the computer is only a part of a complex information system, and of the impacts of ubiquity – all match the history of sustainability.

But, they don’t give rise to an ability to discern a Brundtland definition from a Strong sustainability definition (or, for that matter, know who Brundtland is).    But does that matter?

They also won’t get the earth system science.   But note that this paired with “basic science”.    The PISA folks make a useful distinction in their “Green at 15” report.   They separate the “learnings from science” from the “learning of  science”.   Their focus is  competence of science:  can they extrapolate? can they separate scientific information from non scientific aspects? can they distinguish between competing explanations? and so on.    Our students do get this to some degree.

So, they get the style of thinking we would like but without the application specifically .   We’re attempting to fill this gap through the class project.   Last year we used sustainability as the context for software engineering – the students worked on the information infrastructure for the Living Campus (eLivingCampus).  This year students are working with the Dunedin 350 group.   It’s not clear what they’ll do yet – keep you posted (or follow them on the wiki here).