ICSE 2018
Sun 27 May - Sun 3 June 2018 Gothenburg, Sweden
Keynotes Plenary sessions

Sara Mazur

Frederick P. Brooks, Jr.

Margaret Hamilton

Brian Randell
Industry Forum Keynotes SEIP Keynote Speakers

Danica Kragic

Jan Bosch
Noel Lovisa
Linda Northrop
Frank Buschmann
SEET Keynote Speaker SEIS Keynote Speaker Most Influential Paper Award

Gregor Kiczales

Roberto Di Cosmo

Andrew J. Ko

Brad A. Myers

Sara Mazur

Sara Sara Mazur is Vice President and Head of Research at Ericsson. Prior to taking up this position, Mazur was Head of System Management within Ericsson’s Business Unit Networks, focusing on unit-wide technology and research coordination and strategic management of technologies, a post she held since 2007. Mazur has worked throughout her career on advanced technology to strengthen Ericsson’s technical excellence. She started at Ericsson Research in 1995 and has since held many management positions in the group that have kept her very close to the development of the telecommunications industry. Mazur holds a Master’s degree in science and a Ph.D. in electrical engineering from the KTH Royal Institute of Technology in Sweden. She is also an appointed Associate Professor in Fusion Plasma Physics in the same institute. 2015 she was appointed Honorary Doctorate Luleå Tekniska Universitet. Mazur is the inventor of 69 granted patents and has authored several journal articles in international physics journals and conference papers on international conferences. She is the co-author of the book Handbook of antennas in wireless communication. She maintains close ties with several universities and is a member of the strategic advisory board of the School of Electrical Engineering in the KTH Royal Institute of Technology in Sweden and member of Royal Swedish Academy of Engineering Sciences (IVA) on Education and Research. Mazur is since 2013 a member of the Board of Directors of Saab AB. She is also the vice Chair of Wallenberg Autonomous System Program and member of the boards of Combient AB, SICS North Swedish ICT AB, and Nobel Media AB.

Frederick P. Brooks, Jr.

Learning the Hard Way: A History of Software Engineering 1948-1980

First came the Program, 1948. Then the Program Product, a program designed to be distributed to others than the author-generalized, documented, tested, maintained, 1950. Then the Program System, a collection of programs designed to work together-defined interfaces, system-integrated, system-tested, 1956. Then the Program System Product, combining the features, labors, and complexities of both,1963.

Many ambitious projects were undertaken; many failed. Over-optimistic goals and schedules abounded. Sometime in this sequence software builders each recognized that building a software system project was about an order of magnitude more effort than just writing the component programs. Process and management techniques had to be devised. Originally, they were borrowed from the electrical and civil engineering disciplines. The discipline as such was born and named at the 1968 NATO Conference on Software Engineering.

We identify some of the milestones in the ’50’s, 60’s, and 70’s.

Fred Frederick P. Brooks, Jr. is Kenan Professor of Computer Science, Emeritus, at the University of North Carolina at Chapel Hill. He was an architect of the IBM Stretch and Harvest supercomputers. He was Corporate Project Manager for the IBM System/360 mainframe family (now Zsystems), including development of the System/360 computers' hardware, and the Operating System/360 software. He founded the UNC-CH Department of Computer Science in 1964 and chaired it for 20 years. His research there has been in computer architecture, software engineering, and interactive 3-D computer graphics ("virtual reality"). His best-known books are *The Mythical Man-Month: Essays on Software Engineering *(1975, 1995); *The Design of Design (2010)*; and, with G.A.Blaauw, *Computer Architecture: Concepts and Evolution* (1997). Dr. Brooks has received the U.S. National Medal of Technology, the A.M. Turing Award of the ACM, and others. He is married (61 years) to Nancy Greenwood Brooks. They are joyous servants of Jesus Christ. They have three children and nine grandchildren. For more information see https://www.cs.unc.edu/~brooks/

Margaret Hamilton

The Language as a Software Engineer

It was 1959. We were building real-time systems for weather prediction, homeland security and space travel. The space mission software had to be man-rated. Not only did it have to work; it had to work the first time. Not only did the software, itself, have to be ultra-reliable, it needed to be able to perform error detection and recovery in real time. Our languages dared us to make the most subtle of errors. We were on our own to come up with rules for building software. What we learned from the errors was full of surprises. Classifying the errors led to a set of allowable patterns that led to a language together with its preventative paradigm. We have found that a system defined with such a language has properties that inherently support its own development, “before the fact”; including that which becomes no longer needed. We continue to discover new properties in these systems. Lessons learned throughout this process will be discussed in terms of both the earlier systems and the systems of today; and in terms of what is possible for systems of tomorrow.

Margaret Margaret H. Hamilton is CEO of Hamilton Technologies, Inc. Margaret H. Hamilton graduated in 1958 with a mathematics major and philosophy minor from Earlham College. To prepare for further studies in abstract math at Brandeis University, she took a "temporary" position at MIT, developing weather prediction software for Edward N. Lorenz in hexadecimal on the LGP-30. Hamilton then developed software on the XD-1 for the SAGE air defense system at Lincoln Laboratories. As soon as she heard MIT was looking for people to build software for "sending man to the moon", she joined NASA/MIT's project to build Apollo's on-board flight software, starting with the unmanned missions. To give their software “legitimacy”, so it (and those building it) would be given due respect; she made up the term “software engineering” to establish it as a form of engineering in its own right. For the manned missions, Hamilton was in charge of the team that developed the on-board flight software for the command and lunar modules (she was then the Director of the Software Engineering Division at MIT's Instrumentation Laboratory). With her Display Interface Routines error detection and recovery programs, she created new man-in-the-loop concepts that provided the ability for the on-board flight software to communicate asynchronously in real-time with the astronaut within a distributed system-of-systems environment. This allowed the software (running in parallel with the astronauts) to interrupt the astronauts and replace their normal displays with Priority Displays in case of an emergency (such as it was during Apollo 11's landing). She led an empirical study of Apollo and later efforts, resulting in her systems and software theory of control; based on lessons learned. From its axioms, the universal systems language was derived together with its automation and "development-before-the-fact" preventative software engineering paradigm. Hamilton received the NASA Exceptional Space Act Award (2003), and the Presidential Medal of Freedom awarded by Barack Obama (2016).

Brian Randell - 50 years of Software Engineering

Brian Brian Randell graduated in Mathematics from Imperial College, London in 1957 and joined the English Electric Company where he and colleagues implemented the Whetstone KDF9 Algol compiler. From 1964 to 1969 he was with IBM in the United States, mainly at the IBM T.J. Watson Research Center, working on operating systems, the design of ultra-high speed computers and computing system design methodology. With first Peter Naur and then John Buxton he co-edited the two original NATO Software Engineering Reports. He then became Professor of Computing Science at Newcastle University, where in 1971 he set up the project that initiated research into the possibility of software fault tolerance. He has been Principal Investigator on a succession of research projects in reliability and security funded by EPSRC, MoD, and the EU. Another, continuing, research interest has been the history of computing. He has published over three hundred technical papers and reports, and is co-author or editor of seven books. He is now Emeritus Professor of Computing Science, and Senior Research Investigator, at Newcastle University, working on failure analysis of complex evolving systems. He is a Fellow of the BCS and the ACM, and was a Member of the Conseil Scientifique of the CNRS, France (2001-5), Chairman of the IEEE John von Neumann Medal Committee (2003-5), and a Member and then Chairman of the ACM A.M. Turing Award Committee (2005-9). He has received a D.Sc. from the University of London, and Honorary Doctorates from the University of Rennes, and the Institut National Polytechnique of Toulouse, France.

Industry Forum Keynote Speakers

Danica Kragic

Robotics, Software and Artificial Intelligence: State of the art and future challenges

The integral ability of any robot is to act in the environment, interact and collaborate with people and other robots. The current trend in computer vision is development of data-driven approaches where the use of large amounts of data tries to compensate for the complexity of the world captured by cameras. Are these approaches also viable solutions in robotics? Apart from ‘seeing’, a robot is capable of acting, thus purposively change what and how it sees the world around it. There is a need for an interplay between processes such as attention, segmentation, object detection, recognition and categorization in order to interact with the environment. In addition, the parameterization of these is inevitably guided by the task or the goal a robot is supposed to achieve. In this talk, I will present the current state of the art in the area of robot vision and discuss open problems in the area. I will also show how visual input can be integrated with proprioception, tactile and force-torque feedback in order to plan, guide and assess robot’s action and interaction with the environment.

Danica Danica Kragic is a Professor at the School of Computer Science and Communication at the Royal Institute of Technology, KTH. She received MSc in Mechanical Engineering from the Technical University of Rijeka, Croatia in 1995 and PhD in Computer Science from KTH in 2001. She has been a visiting researcher at Columbia University, Johns Hopkins University and INRIA Rennes. She is the Director of the Centre for Autonomous Systems. Danica received the 2007 IEEE Robotics and Automation Society Early Academic Career Award. She is a member of the Royal Swedish Academy of Sciences, Royal Swedish Academy of Engineering Sciences and Young Academy of Sweden. She holds a Honorary Doctorate from the Lappeenranta University of Technology. She chaired IEEE RAS Technical Committee on Computer and Robot Vision and served as an IEEE RAS AdCom member. Her research is in the area of robotics, computer vision and machine learning. In 2012, she received an ERC Starting Grant. Her research is supported by the EU, Knut and Alice Wallenberg Foundation, Swedish Foundation for Strategic Research and Swedish Research Council. She is an IEEE Fellow. Danica Kragic is leading the AI part of Wallenberg Autonomous Systems and Software Program.

Jan Bosch

Why Digitalization Will Kill Your (Software) Company Too

Incumbent companies in many industries have optimized themselves for traditional business models and are, for a variety of reasons, notoriously slow to change and adjust themselves to new market realities. At the same time, connectivity, data and services (in short: digitalization) enable new business models, new ecosystem engagements and new forms of value delivery to customers. As a consequence, many mature companies will be disrupted by new entrants and faster moving competitors. As evidenced by the ever-shortening tenure of companies on the Fortune 500 (now down to 10 years), this has already become a reality. In this keynote, I first provide more detail and insight into the specifics of the digitalization challenge and then outline how companies should act to maintain their competitiveness. This requires building new organizational capabilities around speed and continuous value delivery, transitioning from opinion-based to data-driven decision making, engaging with the ecosystems surrounding the company in new ways and finally transitioning from traditional hierarchical organizational models to empowered organizations with autonomous teams. The keynote uses examples from industry as well as results from research conducted in Software Center, a research collaboration with 11 companies, including Ericsson, Volvo Cars, AB Volvo, Saab Defense, Siemens, Bosch and Tetra Pak.

Jan Jan Bosch is professor of software engineering at Chalmers University Technology in Gothenburg, Sweden. He is director of the Software Center (www.software-center.se), a strategic partner-funded collaboration between 11 large European companies and five universities focused on software engineering excellence. Earlier, he worked as Vice President Engineering Process at Intuit Inc where he also led Intuit's Open Innovation efforts and headed the central mobile technologies team. Before Intuit, he was head of the Software and Application Technologies Laboratory at Nokia Research Center, Finland. Prior to joining Nokia, he headed the software engineering research group at the University of Groningen, The Netherlands. His research activities include evidence-based development, software architecture, innovation experiment systems, compositional software engineering, software ecosystems, software product families and software variability management. He is the author of several books including "Design and Use of Software Architectures: Adopting and Evolving a Product Line Approach" and “Speed, Data and Ecosystems: Excelling in a Software-Driven World” , editor of several books and volumes and author of a significant number of research articles. He is editor for Journal of Systems and Software as well as Science of Computer Programming, chaired several conferences as general and program chair, served on numerous program committees and organized countless workshops. In the startup space, Jan is chairman of the board of Auqtus AB and, until recently, Fidesmo in Stockholm, Remente, in Gothenburg, Sweden. He serves on the advisory board of Assia Inc. in Redwood City, CA, Peltarion AB in Stockholm and Burt AB in Gothenburg, Sweden. Jan also runs a boutique consulting firm, Boschonian AB, that offers its clients support around the implications of digitalization including the management of R&D and innovation. For more information see his website: www.janbosch.com.

Noel Lovisa

The software industry is not industrialised

In 1968, Douglas McIlroy made the observation that “the software industry is not industrialised.” Today, 50 years (and many noble attempts) later, a mass-produced software components industry has yet to emerge. For us to achieve industrialisation, it must be possible for a developer to specialise, to earn a living selling their software ‘component.’ What prevents a developer from creating a business around a single component, from continually honing that component, and repeatedly selling that component? What does it take to unlock the viability of software specialisation for developers? And what should the world expect from a Software Industry that is industrialised?

Noel Noel Lovisa is CEO and founder of [Code Valley] (https://codevalley.com), a software development tools company that allows developers to utilise Emergent Coding to create software. Emergent Coding relies upon a decentralised platform for competitive compilation, where program requirements are given in language-agnostic form, and where each developer-owned node in the system receives payment every time it contributes compiled bytes to a new build. Noel Lovisa graduated in 1994 with a degree in Electrical and Electronic Engineering and a Masters in Computer Systems Engineering from JCU. It was during this time that he became fascinated by McIlroy's 1968 observation that "the software industry is not industralised." Noel set out to rectify this situation, founding Code Valley in 2000.

SEIP Keynote Speakers

Linda Northrop

Modern Trends Through an Architecture Lens

Frank Linda Northrop has over 45 years of experience in the software development field as a practitioner, researcher, manager, consultant, author, speaker, and educator. She is a Fellow at Carnegie Mellon University's Software Engineering Institute (SEI) where she is currently a part-time employee working for the CTO on strategic technical activities. During her tenure at the SEI, she held a number of leadership positions and collaborated with academic and industrial researchers and works with federal, energy, healthcare, and computational science agencies as well as commercial organizations. Under her leadership, the SEI developed software architecture and product line methods and a series of highly acclaimed books and courses that are used worldwide. Northrop also coauthored Software Product Lines: Practices and Patterns. She led a cross-disciplinary research group on ultra-large-scale systems that resulted in the book Ultra-Large-Scale Systems: The Software Challenge of the Future, which has motivated research at the SEI and around the world. Her main professional interests are software architecture, software product lines, ultra-large-scale systems, and software innovations to aid children with different abilities. Find Linda Northrop at http://www.sei.cmu.edu/about/people/profile.cfm?id=northrop_13182

Frank Buschmann

Industrial-grade DevOps - Balancing Agility and Speed with Extreme Quality

DevOps is an adopted culture and practice in Enterprise and Consumer IT. Establishing DevOps in Industry, specifically for operations and control systems, is still a challenge. Stringent requirements, such as real-time performance and highest availability, regulatory compliance for safety and security, and the huge complexity of cloud to edge operations environments cannot be fully addressed with Enterprise DevOps methods, technologies, and environments. On the Dev side, for instance, it is essential to frontload quality assurance without degrading the speed of agile development. Novel methods and tools are required, such as for a knowledge-based application design, adaptive continuous testing, formal verification, and for application versioning and release management. Highest automation of all development and quality assurance tasks is success-critical. On the Ops side, for example, concepts and architectures for deployment are required that enable an update of features in run without degrading system availability. Similarly, new methods and infrastructures for continuous testing of deployed functions during operations are needed that do not interfere with the system under test. This talk introduces to the challenges of leveraging DevOps for Industry systems and provides deep dives into selected aspects of current research and state of practice.

Frank Frank Buschmann works at Siemens Corporate Technology in Munich, Germany, where he is a key expert and technical leader in the research on software and systems architecture and software development technologies. Frank also advises development organizations in applying these technologies to realize innovative software products. Frank's current research interests include DevOps in Industry Environments as well as architecture paradigms, styles and patterns for Cyber-Physical (Production) systems, Edge computing, and the IoT. In his development work, Frank has lead the design and implementation of several large-scale industrial software projects, including business information, industrial automation, and telecommunication systems. Frank is co-author of four volumes of the "Pattern-Oriented Software Architecture" published by John Wiley & Sons.

SEET Keynote Speaker

Gregor Kiczales

Using MOOCs to Teach Software Engineering

UBC’s introductory course has been MOOC based for 5 years. In that time, more than 5,000 UBC students have taken the course, spread across 40+ sections with more than a dozen instructors. Meanwhile hundreds of thousands of learners have participated in the public version of the courses. The MOOC has enabled us to invest significant resources in content and infrastructure development, and this has had a significant impact on the course, our teaching, and students learning experience. This talk will explore the effect our MOOC based course has had on lectures, labs, office hours, student feedback, and the instructor experience. Particular attention will be given to the way the MOOC has allowed us to leverage the expertise of a small software engineering group to deliver an SE based introductory course. We will also discuss the kinds of work that has been required to reach this point, implications for other parts of the program, and our rationale for our current development of MOOCs for the second and third software engineering courses.

Gregor Gregor Kiczales is Professor of Computer Science and Senior Advisor to the Provost on Digital Learning Strategy at the University of British Columbia. His longest line of research is directed at enabling programmers to write programs that, as much as possible, look like their design. In this line, he has worked on a number of projects in object-oriented programming, metaobject protocols, aspect-oriented programming and fluid aspect-oriented programming.  His more recent work is on introductory programming methodology, online learning systems like MOOCs, as well strategic implications for universities in the face of rapid growth in students and innovation in online learning.

SEIS Keynote Speaker

Roberto Di Cosmo

Software Heritage: why and how we collect, preserve and share all the software source code.

Software is at the heart of our digital society and embodies a growing part of our scientific, technical and organisational knowledge. Software Heritage is an open non-profit initiative whose mission is to ensure that this precious body of knowledge will be preserved over time and made available to all.We do this for multiple reasons. To preserve the scientific and technological knowledge embedded in software source code. To allow better software development and reuse for society and industry. To foster better science, preserving research software, a stepping stone for reproducibility, and assembling the largest curated archive for software research. We do this now, because we are at a turning point: the founding fathers are still around, and willing to contribute their knowledge, but only for a limited time. And we face the risk of massive lose of source code developed by the Free and Open Source community, with code hosting sites that shut down when their popularity decreases. Software Heritage archives already more than 4 billion unique source code files, spanning more than 70 million projects, with their full development history.

Roberto Roberto Di Cosmo holds a PhD from the University of Pisa, and is full professor of Computer Science at University Paris Diderot since 1999, after a decade spent at Ecole Normale Superieure in Paris. He is currently on leave at Inria. He has been actively involved in research in theoretical computing, specifically in functional programming, parallel and distributed programming, the semantics of programming languages, type systems, rewriting and linear logic. His main focus is now on the new scientific problems posed by the general adoption of Free Software, with a particular focus on static analysis of large software collections, that were at the core of the European research project Mancoosi. Following the evolution of our society under the impact of IT with great interest, he is a long term Free Software advocate, contributing to its adoption since 1998 with the best-seller book "Hijacking the world", seminars, articles and software. He created the Free Software thematic group of Systematic in October 2007, and since 2010 he is director of IRILL, a research structure dedicated to Free and Open Source Software quality. In 2015, he founded Software Heritage, to build the universal archive of all the source code publicly available.

Most Influential Paper Award

Andrew J. Ko and Brad A. Myers

Debugging reinvented: asking and answering why and why not questions about program behavior

Ko Andrew J. Ko is an Associate Professor at the University of Washington Information School and an Adjunct Associate Professor in Computer Science and Engineering. He directs the Code & Cognition Lab, where he invents and evaluates interactions between people and code, spanning the areas of human-computer interaction, computing education, and software engineering. He is the author of over 90 peer-reviewed publications, 9 receiving best paper awards and 3 receiving most influential paper awards. In 2013, he co-founded AnswerDash, a SaaS company offering instant answers on websites using a selection-based search technology invented in his lab. In 2010, he was awarded an NSF CAREER award for research on evidence-based bug triage. He received his Ph.D. at the Human-Computer Interaction Institute at Carnegie Mellon University in 2008. He received degrees in Computer Science and Psychology with Honors from Oregon State University in 2002.

Brad Brad A. Myers is a Professor in the Human-Computer Interaction Institute in the School of Computer Science at Carnegie Mellon University. He was chosen to receive the ACM SIGCHI Lifetime Achievement Award in Research in 2017, for outstanding fundamental and influential research contributions to the study of human-computer interaction. He is an IEEE Fellow, ACM Fellow, member of the CHI Academy, and winner of 12 Best Paper type awards and 5 Most Influential Paper Awards. He is the author or editor of over 475 publications, and he has been on the editorial board of six journals. Myers received a PhD in computer science at the University of Toronto, and MS and BSc degrees from MIT during which time he was a research intern at Xerox PARC.