Prof. Dr. Cláudia Werner
Federal University of Rio de Janeiro (UFRJ), BR
Title: A Tentative Agenda and Perspectives for Software Engineering Young Researchers
Abstract: Becoming a new professor at a university or a researcher at an industrial research lab is a challenge. They are typically under tremendous pressure to teach/train new software engineers, supervise graduate students/subordinates, collaborate with industry/academia, raise research funds, be leaders in their field, and/or publish journal/conference papers/technical reports. Moreover, there is a tremendous shortage of Software Engineering (SE) faculty/professionals in many countries around the world. In Latin American the situation is not different. Thus, it is important to help young software engineering researchers survive in academia or industry in their early careers. Questions such as: “How to plan a research agenda in SE?”, “What has been the evolution of SE in Latin America?”, “What are the possible academic and industry careers after the studies?” and “How to balance career and personal life?” need to be handled. This talk aims to discuss a tentative agenda and perspectives for SE young researchers, providing ideas on practical guidelines for having a successful and fulfilling academic/industry career. We also present the trajectory of research in Brazil/Latin America and some challenges to overcome in this field.
Short bio: Cláudia Maria Lima Werner received her D.Sc. from COPPE/UFRJ (1992) (the Graduate School of Engineering of the Federal University of Rio de Janeiro, Brazil) and since 1994 is a Professor of the Computer Science Department, being the leader of the Software Engineering group, at COPPE/UFRJ. She is also a CNPq and FAPERJ (Cientista do Nosso Estado) researcher, having experience in Software Engineering for more than 20 year, with emphasis in Software Reuse, Software Engineering Education, Software Visualization and Ecosystems. She has over 200 technical papers published in national and international conferences and journals, besides book chapters. She is a member of the Brazilian Society of Computer Science (SBC) and the program committee of various national and international conferences, and also co-editor-in-chief of the Springer Journal of Software Engineering Research and Development (JSERD).
Prof. Dr. Antónia Lopes
Universidade de Lisboa, PT
Title: Formal Aspects of Software Architecture
Abstract: In the last two decades, Software Architecture has become an important sub-discipline of Software Engineering. Architecture is now a widely-accepted conceptual basis for the development of large and complex software systems, the importance of architectural decisions in the ability of a system to meet its non-functional requirements being widely recognised. At an architectural level, the design of a system involves deciding on how the system is to be structured in terms of components and connectors. Representing those decisions, even if using informal box-and-line drawings, contributes to understanding the system and to reasoning about runtime quality attributes such as performance, reliability, availability and security. Such architectural descriptions become more useful and relevant when expressed in a formal notation equipped with a semantics that enables formal analysis. In this talk I will discuss the role of software architecture, and describe the progress that has been made in formal modelling and analysis of software architectures as well as on formal foundations of software architecture.
Short bio: Antónia Lopes is Associate Professor in the Department of Informatics of the University of Lisbon, Faculty of Science, Portugal, since March 2006. She received a Ph.D. in Informatics at the University of Lisbon in 1999. Her research interests are in the area of formal methods for software engineering. These include mathematically based techniques for the specification, modelling and analysis of various types of software intensive systems, namely service-oriented systems and self-adaptive systems. She was the program committee co-chair of Fundamental Approaches to Software Engineering 2007 (FASE 2007) and 11th IFIP WG 6.1 International Conference on Formal Techniques for Distributed Systems (FMOODS/FORTE 2009) and ASAAS 2011 (First Workshop on Assurances for Self-Adaptive Systems). She is member of the Editorial Board of Academic Editors for PeerJ Computer Science.
Prof. Dr. Don Batory
University of Texas, USA
Title: A Theory of Modularity for Automated Software Design
Abstract: Automated Software Development (ASD) uses technologies to develop customized programs automatically and compositionally from modules. The foundations of ASD are domain-specific algebras, where each program in the target domain maps to a unique expression, and modules are expression terms. Programs are optimized automatically using algebraic identities among module compositions. This tutorial traces the history of ASD and presents a general theory of modularity for ASD that follows from its tenets.
Short bio: Don Batory holds the David Bruton Centennial Professorship in the Department of Computer Science at The University of Texas at Austin. He received a B.S. (1975) and M.Sc. (1977) degrees from Case Institute of Technology, and a Ph.D. (1980) from the University of Toronto. He was a faculty member at the University of Florida in 1981 before he joined the University of Texas in 1983. He was Associate Editor of IEEE Transactions on Software Engineering (1999-2002), Associate Editor of ACM Transactions on Database Systems (1986-1992), member of the ACM Software Systems Award Committee (1989-1993; Committee Chairman in 1992), Program Co-Chair for the 2002 Generative Programming and Component Engineering Conference. He is a proponent of Feature Oriented Software Development (FOSD) and with colleagues (and former students) has recently authored a textbook on the topic. Since 1993, he and his students have written 11 Award Papers for their work in automated program development. He and Lance Tokuda were awarded the Automated Software Engineering 2013 Most Influential Paper Award on their work on program refactorings.
Prof. Dr. Gregor Engels
Universität Paderborn, DE
Title: Model-driven Development
Abstract: Model-driven resp. model-based approaches have become the de facto standard to develop, to evolve, to migrate, or to modernize complex software systems. In order to do so, modeling languages are used, which might be general-purpose modeling languages (as e.g. UML) or domain-specific modeling languages (DSML). The syntax of those modeling languages is defined by meta-modelling techniques, while the semantics is defined directly by transformation techniques or indirectly by translating models into appropriate semantic domains. During the construction process, models are stepwise refined. This can be done manually by a modeler or automatically by model transformations. These are formally specified by using a (domain-specific) model transformation language (as e.g. QVT, ATL). High quality of models can be achieved by e.g. deploying design patterns during a forward construction process, by mining techniques during a backward construction process, or by model checking techniques during an afterwards analytical process. The talk gives an overview on the state-of-the-art of model-driven development, its industrial acceptance as well as an overview on open research questions.
Short bio: Gregor Engels received his PhD in Computer Science in 1986 from the University of Osnabrück, Germany. Between 1991 and 1997 he held the position of Chair of Software Engineering and Information Systems at the University of Leiden, The Netherlands. Since 1997, he is Professor of Informatics at the University of Paderborn, Germany. Currently, he is also director of two technology transfer labs at the University of Paderborn, the C-LAB, a joint venture together with ATOS, and the s-lab – Software Quality Lab, where overall more than 50 PhD students do joint research with industrial partners. His research interests are in the area of model-driven software development, software architecture, and software quality assurance. He has published more than 200 papers in scientific journals, as book contributions or articles at international conferences and workshops. He teaches in Bachelor, Master and PhD programmes since more than 30 years. He also gives regularly tutorials and seminars on recent technology topics at scientific conferences and industrial events.
Prof. Dr. Sebastián Uchitel
Universidad de Buenos Aires, AR and Imperial College London, UK
Title: Abstractions for Validation
Abstract: Validating (as opposed to verifying) software artefacts is notoriously difficult. In this talk I will discuss the general problem of validation and then focus on a specific kind of artefacts, those that define a set of operations and impose restrictions to the ordering on which they have to be invoked. I will discuss Enabledness Preserving Abstractions (EPAs) and show that they are a concise representations of the behaviour space for such artefacts. I will also show how these abstractions can be built and how they may be used to support some programming tasks. Finally, I will discuss limitations of these abstractions and opportunities for improvement.
Short bio: Sebastian Uchitel is a professor at University of Buenos Aires and Imperial College London. He currently also sits on the board of the national argentine oil company, YPF. He received his undergraduate computer science degree from University of Buenos Aires and his Phd in Computing from Imperial College London. His research interests are in behaviour modelling, analysis and synthesis of requirements and design for software-intensive systems. He was associate editor of IEEE Transactions on Software Engineering and is currently associate editor of the Requirements Engineering Journal and the Science of Computer Programming Journal. He was program co-chair of the 32nd IEEE/ACM International Conference on Software Engineering (ICSE 2010) and will be general chair of the same conference in 2017, when it will be held in Buenos Aires, Argentina.
Prof. Dr. Guenther Ruhe
University of Calgary, CA
Title: Experimental Software Engineering – The Pathway for Achieving Evidence
Abstract: As for any technology, the same is also true for software engineering technologies (tools, techniques, processes): When and where is it applicable and when and where is it not? How good does it work? and how much time and effort is needed to run it? There is no easy way to accumulate this knowledge. In this mini-tutorial, the empirical research paradigm is motivated and explained as a means to answer the above questions. Key steps of conducting experiments are described: (i) experimental context, (ii) experimental design, (iii) run the experiment, (iv) analysis of results, (v) presentation and (vi) interpretation of results. As series of examples is given to illustrate the value added for researchers and users of an empirically validated software technology.
Short bio: Günther Ruhe is a Professor at the University of Calgary in Canada. He received a doctorate rer. nat. degree in Mathematics with emphasis on Operations Research from Freiberg University and a doctorate habil. nat. degree (Computer Science) from University of Kaiserslautern (Germany). From 1996 until 2001, he was the deputy director of the Fraunhofer Institute for Experimental Software Engineering Fh IESE. Since 2007, he serves as an Associate Editor of the Journal of Information and Software Technology, published by Elsevier. His main research interests are in the areas of Product and Project Management, Data Analytics, Decision Support in Requirements Engineering and Empirical Software Engineering. Günther is the Founder and CEO of Expert Decisions Inc., a University of Calgary spin-off company created in 2003.
Prof. Dr. David Garlan
Carnegie Mellon University, USA
Title: Self-Adaptive Systems
Abstract: The increasing use of computing systems in every facet of our everyday lives raises a number of challenges for software engineering. In particular, one of the most important requirements for today’s systems is high availability – even in the presence of faults, changing environmental conditions, and attacks. To address these requirements we need to be able to build systems that take more control over their own dependability, security, and usefulness – automating many of the tasks that now lead to system failures and that require computing experts and administrators to manage. This has led to a new sub-field of software engineering and systems design, sometimes termed Autonomic Computing, Self-healing Systems, or Self-Adaptive Systems. In this talk I describe this emerging field and recent advances that allow us to address various engineering challenges, including (a) the ability to support self-healing through architectural models and automated repair, (b) new techniques for diagnosing faults at run-time with applications to manufacturing control systems, (c) the ability to support self-securing systems, and (d) the ability to reason about human-in-the loop systems.
Short bio: David Garlan is a Professor of Computer Science and Director of Software Engineering Professional Programs in the School of Computer Science at Carnegie Mellon University. His interests include software architecture, self-adaptive systems, formal methods, and cyber-physical systems. He is considered to be one of the founders of the field of software architecture, and, in particular, formal representation and analysis of architectural designs. He is a co-author of two books on software architecture: “Software Architecture: Perspectives on an Emerging Discipline”, and “Documenting Software Architecture: Views and Beyond.” In 2005 he received a Stevens Award Citation for “fundamental contributions to the development and understanding of software architecture as a discipline in software engineering.” In 2011 he received the Outstanding Research award from ACM SIGSOFT for “significant and lasting software engineering research”. He is a Fellow of the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronic Engineers (IEEE).
Prof. Dr. Gail Murphy
University of British Columbia, CA
Title: Recommender Systems for Software Engineering
Abstract: Software developers must interact with large amounts of different types of information and perform many different activities to build a software system. To ease the finding of information and hone workflows, there has been growing interest in building recommenders that are intended to help software developers work more effectively. Building an effective recommender requires a deep understanding of the problem that is the target of a recommender, analysis of different aspects of the approach taken to perform the recommendations and design and evaluation of the mechanisms used to deliver recommendations to a developer. In this lecture, I will discuss these steps using case studies of recommendation systems to support software engineering activities.
Short bio: Gail Murphy is a Professor in the Department of Computer Science and an Associate Dean (Research & Graduate Studies) in the Faculty of Science at the University of British Columbia. She is also a co-founder and currently Chief Science Offer at Tasktop Technologies. She received a B.Sc. from the University of Alberta and M.Sc. and Ph.D. degrees from the University of Washington. Her current research interests are in reducing the information overload and improving the work days of knowledge workers, including software developers.