January 2014: I am not maintaining or updating this page but it will remain available indefinitely.
Keynote talk at the REFSQ 2012 conference discussing how we need a different approach to requirements engineering for complex systems of systems in the enterprise.
An updated version of the talk first presented in Madrid in 2008. Presented at the University of Hamburg, April 2011.
Presented at an industry meeting in Aberdeen, Scotland. I discuss the issues for companies who are interested in moving systems to the cloud.
Keynote talk at International Conference on Software Technology, Berlin, March 2011
An updated version of my talk on designing for recovery (with pictures) presented at the SEPG Europe 2010 conference in Porto, Portugal in June 2010.
An introduction to responsibility modelling where we use the notion of responsibility as an abstraction to represent distributed human and machine activities in socio-technical systems that may involve several organisations. Seminar presented at the University of York, April 2008.
A keynote presentation at ASWEC 2008 in Perth, Western Australia. It is a revised version of a previous talk where I discuss the changes to the ways in which commercial software is developed by configuration of COTS and how the research community should respond to these.
This was a tutorial presented as ASWEC 2008 where I introduced the notion of time to value - the time between deciding to introduce a new system and the time when it actual becomes useful. I proposed that an approach based on socio-technical systems engineering, which considers social and organisational as well as technical factors, could reduce the time to value.
This was a keynote address to the 8th IEEE International Conference on Composition-based Software Systems in Madrid, February 2008. It is a completely revised and extended version of my talk on design for failure, geared to a software engineering audience. The argument made is that we need a design philosophy that considers how to recover from failure and incorporates support for recovery mechanisms such as the use of local knowledge and the ability to break rules.
This talk was presented at the 1st IEEE Conference on Digital Ecosystems in Cairns, Australia in February 2007. In the talk, I argue that we cannot practice top-down software engineering when we are designing with systems of systems and that we have to think about designing systems so that we can cope with failure.
This is an updated and extended version of my inaugural lecture at the UK's Institute of Electrical Engineers. I discuss the new challenges facing software engineering and explain some of the fundamental difficulties we face in software engineering innovation. I then discuss how I believe the way forward is for software engineering to evolve into complex systems engineering as software is created by integrating systems of systems.
This is an invited talk that I presented at Curtin University of Technology, Perth WA in February 2007. In the talk, I discuss why social analysis is important for dependable systems design and introduce some of the work we have been doing in socio-technical systems engineering. I then go on to introduce the Coherence approach which integrates social analysis with a UML-based design process.
Presented at JENUI 2005 - a conference of computer science educators in Spain. I argue that software reuse through the configuration of ERP systems and domain-specific systems is now the predominant approach for business system development and that we should reflect this in our computer science courses. I discuss some of the issues that arise when constructing software by configuration and highlight the challenges for introducing this into software engineering courses.
Presented at XP 2005, an annual conference on Extreme Programming and Agile Methods. In my talk, I discuss the need for critical systems development to be influenced by some of the key benefits from using an agile approach and I set out challenges for the XP community to adapt Extreme Programming techniques for this type of application.
Presented to an external audience at Lancaster University in 2002, this talk discusses how trustworthy systems can only be developed if we understand the relationships between computers, people using them and the work that they do. It has a Lancaster orientation and discusses the work of my group on the DIRC project.
I had the honour of being Chair of the (late, lamented) Informatics Division of the UK's Institute of Electrical Engineers in 2000 and this is my inaugural lecture. It argues that software engineering is distinct from other engineering disciplines because of its lack of physical foundations and that this means the discipline faces unique challenges in attempting to assess the value of research. Previous versions of the talk were presented at a workshop on Empirical Software Engineering, Keele University, 1998 and the International Conference on Software Maintenance, Oxford, 1999.
Presented at an IEEE International Conference on Systems Engineering held in Edinburgh in 2000. Its theme is that there is a lot of informality in everyday work and we need to design systems that don't make informal ways of working more difficult.
This talk introduces the topic of requirements engineering and discusses its importance in the software engineering process. It was presented at SISE-2000, Zurich.
Learning from the Impossible: Practical Projects in Systems Engineering
This talk was given at a conference on software engineering education held in Posnam, Poland in 1999. It discusses the educational value of setting very complex design exercises for students.