Informações somente em inglês

Toward the Making of Software that Learns to Manage Itself

Sam Malek

THURSDAY, 03 OCT – 09:00 – 10:30

A self-managing software system is capable of adjusting its behavior at
runtime in response to changes in the system, its requirements, or the
environment in which it executes. Self-management capabilities are
sought-after to automate the management of complex software in many
computing domains, including service-oriented, mobile, cyber-physical and
ubiquitous settings. While the benefits of such software are plenty, its
development has shown to be much more challenging than the conventional

At the state of the art, it is not an impervious engineering problem – in
principle – to develop a self-adaptation solution tailored to a given
system, which can respond to a bounded set of conditions that are expected
to require automated adaptation. However, any sufficiently complex software
system – once deployed in the field – is subject to a broad range of
conditions and many diverse stimuli. That may lead to the occurrence of
behavioral patterns that have not been foreseen previously: in fact, those
may be the ones that cause the most critical problems, since, by definition,
they have not manifested themselves, and have not been accounted for during
the previous phases of the engineering process. A truly self-managing system
should be able to cope with such unexpected behaviors, by modifying or
enriching its adaptation logic and provisions accordingly.

In this talk, I will first provide an introduction to some of the challenges
of making software systems self-managing. Afterwards, I will provide an
overview of two research projects in my group that have tackled these
challenges through the applications of automated inference techniques (e.g.,
machine learning, data mining). The results have been promising, allowing
the software engineers to empower a software system with advanced
self-management capabilities with minimal effort. I will conclude the talk
with an outline of future research agenda for the community.

How the Web Brought Evolution Back Into Design

Jeff Offutt

WEDNESDAY, 02 OCT – 09:00 – 10:30
To truly understand the effect the Web is having on software engineering, we need to look to the past. Evolutionary design was near universal in the days before the industrial revolution. The production costs were very high, but craftsmen were able to implement continuous improvement–every new object could be better than the last. Software is different; it has a near-zero production cost, allowing millions of identical copies to be made. Unfortunately, near-zero production cost means software must be near-perfect “out of the box.” This fact has driven our research agenda for 50 years. But it is no longer true!

This talk will discuss how near-zero production cost for near-perfect software has driven our research agenda. Then it will point out how the web has eliminated the need for near-perfect software out of the box. The talk will finish by describing how this shift is changing software development and research, and speculate on how this change our future research agenda.

Software Architecture: a Core Discipline to Engineer Software

Thais Batista

THURSDAY, 03 OCT – 14:30 – 16:00

Software architecture has emerged in the last decades as an important discipline of software engineering, dealing with the design decisions to define the organization of the system that have a long-lasting impact on its quality attributes. The architectural description documents the decisions and it is used as a blueprint to other activities in the software engineering process, such as implementation, testing, and evaluation. In this talk we will discuss the role of software architecture as a core activity to engineer software, its influence on other activities of software development, and the new trends and challenges in this area.

Palestrantes confirmados

headshot small clipped

Sam Malek is an Associate Professor in the Department of Computer Science at
George Mason University. He is also the director of Software Design and
Analysis Laboratory at GMU, a faculty associate of the C4I Center, and a
member of the DARPA’s Computer Science Study Panel. Malek’s general research
interests are in the field of software engineering, and to date his focus
has spanned the areas of software architecture, autonomic software, and
software dependability. Malek received his PhD and MS degrees in Computer
Science from the University of Southern California, and his BS degree in
Information and Computer Science from the University of California, Irvine.
He has received numerous awards for his research contributions, including
the National Science Foundation CAREER award (2013) and the GMU Computer
Science Department Outstanding Faculty Research Award (2011). He has managed
research projects totaling more than three million dollars in funding
received from NSF, DARPA, IARPA, ARO, FBI, and SAIC. He is a member of the

  • Jeff Offutt (George Mason University)
  • jeffOffutt-small

    Dr. Jeff Offutt is Professor of Software Engineering at George Mason University and holds part-time visiting faculty positions at the University of Skovde, Sweden, and at Linkoping University, Linkoping Sweden. Offutt has invented numerous test strategies, has published over 150 refereed research papers (h-index of 51 on Google Scholar), and is co-author of Introduction to Software Testing. He is editor-in-chief of Wiley’s journal of Software Testing, Verification and Reliability; co-founded the IEEE International Conference on Software Testing, Verification, and Validation; and was its founding steering committee chair. He was awarded the George Mason University Teaching Excellence Award, Teaching With Technology, in 2013, and was named a GMU Outstanding Faculty member in 2008 and 2009. For the last ten years he has led the 25-year old MS program in Software Engineering, and led the efforts to create PhD and BS programs in Software Engineering. His current research interests include software testing, analysis and testing of web applications, secure software engineering, object-oriented program analysis, usable software security, and software evolution. Offutt received the PhD in computer science in 1988 from the Georgia Institute of Technology and is on the web at


Thais Batista is an Associate Professor at the Federal University of Rio Grande do Norte (UFRN) since 1996. She holds a Ph.D in Computer Science from the Catholic University of Rio de Janeiro (PUC-Rio), Brazil, 2000. In 2004-2005 she was a post-doctoral researcher at the Lancaster University, UK. Her main research area is software architecture, distributed systems, middleware, cloud computing.