1st Summer School on Software Evolution: From Monolithic to Cloud-Native

It is our pleasure to announce the first International Summer School on Software Evolution, sponsored by INFORTE. This edition will focus on aspects related to the migration of information systems to cloud-native architectures, with a special focus on microservices and serverless functions.

The Summer school will feature different tutorials delivered by leading researchers in the area of software engineering and an industrial speaker. Among these, we are also providing basic training on Kubernetes.
During the school, participants will work in groups on a common project. Student reports will be published on the CEUR-WS proceedings (Jufo 1) after the event.

More information on the INFORTE website.

Registration:

This seminar is free-of-charge for Inforte.fi member organization’s staff and their Ph.D. students. For others, the participation fee is 400 €. The participation fee includes access to the event and the event materials. Lunch and dinner are not included.

Program:

02.09.2019: Software Maintenance and evolution in  Cloud Native Applications

  • 9:30 – 12:30 Davide Taibi, “Cloud Native Migration Patterns”
    Cloud-Native technologies, and especially microservices are enjoying increasing popularity and diffusion in industrial environments, being adopted by several big players such as Amazon, LinkedIn, Netflix, and SoundCloud. Several patterns and platforms such as nginx (www.nginx.org) and Kubernetes (kubernetes.io) exist on the market. During the migration process, practitioners often face common problems, which are due mainly to their lack of knowledge regarding bad practices and patterns. In this session, we provide an introduction of the cloud-native patterns, reporting their issues and motivations, and describing the most common patterns and anti-patterns.
  • 13:30 – 15:00 Sebastiano Panichella, “Cloud-based Testing”
    To promote and sustain the future of our society, the most critical challenge of contemporary software engineering and cloud computing experts are related to the efficient integration of emerging cloudification and DevOps practices in the development and testing processes of modern systems.
    In this context, we argue that Search-based Software testing (SBST) can play a critical role in improving testing practices and automating the verification and validation (V&V) of cloudification properties of Cloud Native Applications (CNA). We, we focus on the untouched side of SBST in the cloud field, by discussing (1) the testing challenges in the cloud research field and (2) summarizing the recent contributions of SBST in supporting development practices of CNA. Then, we discuss the emerging research topics characterizing the cloudification perspectives of SBST in the cloud field. Finally, we provide evidence on how
    SBST can used to improve testing practices in the context of cloud-native applications.
  • 15:30 – 17:30 Introduction to the Cloud-Native Project Dataset and practical task
    • Group building
    • RQs proposals from student and discussion with the chairs

03.09.2019: Technological support for Software Maintenance and evolution in  Cloud Native Applications.

  • 9:30 – 11:00 Josef Spillner, “Software evolution in microservice artefacts”
    Modern cloud software applications are characterised by mixed-technology compositions of stateless and stateful artefacts, many of them representing microservices. Through open marketplaces, both generic and artefact type-specific ones, it is possible to learn about the evolution of artefacts and microservices over time. Specifically, metrics related to the supply and demand side – published and downloaded or deployed artefacts – and technical metrics related to code and configuration are already measured in long-term experiments by researchers. This talk outlines current artefact observations, identifies common trends and diverging metrics, and explains how researchers can exploit the information gained from the evolution to help developers build better cloud software.
  • 11:00 – 12:30 Sebastiano Panichella “Kubernetes, Operators SDK, and Prometheus”
    Emerging technologies are used to perform the verification and validation (V&V) of cloudification properties of Cloud Native Applications (CNA) as well as to enable a better observability, monitoring, and management of these applications.  In this talk we provide some hands-on and practical insights on the most emerging technologies characterizing the emerging cloud computing and software engineering research: Kubernetes, Operators SDK, and Prometheus. Then, we discuss the emerging research topics characterizing the usage of such tools the context of cloud-native applications.
  • 13:30 – 17:30 – Group Work
    • Dataset analysis initial results (description of tasks assignment among members

04.09.2019

  • 9:30 – 11:00 Josef Spillner, “Cloud service dependencies in practice”
    In theory, software and service dependencies are simple. They are simple to define through declarative files, simple to resolve by package managers and service brokers, and simple to understand. In practice, they are hard. Dependencies are often implicit, nested or transitive, conflicting, and moving targets. This talk first conveys general knowledge about dependencies, presents algorithms for deterministic and heuristic dependency detection, and then explores them in popular composite (orchestrated) application formats. The talk also touches on the related topic of software application portability.
  • 11:30 – 12:30 “Students presentation” students will make a short presentation (10 min per student) where they will present 1) their Ph.D. topics, 2) the research questions they are planning to investigate 3) the research techniques they are planning to apply
  • 12:30-13:30 Lunch Break
  • 13:30 – 14:30 “Students presentations”
  • 17:00 – 20:30 “Serverless Meetup Tampere” – This event is not part of the school. During the events, a set of Finnish companies will report their experience in using cloud-native, and especially serverless technologies. Students are welcome to participate.
    Register Here to the serverless meetup 

Pre-assignment.

Students will receive a short paper with the description of a dataset including a list of cloud-native project that will be used during the exercises.
Students must familiarize with the dataset. Therefore, each student should:

  • Study the paper received, which includes the most recent database layout and links to the online and download versions of the dataset.
  • Propose at least two main Research Questions they are interested to investigate and submit us two days before the beginning of the event

Post-seminar evaluation and proceedings.
We will publish a post-proceedings volume of the Cloud-Native symposium, in the CEUR-WS Proceedings.

Students will be invited to submit  their assignment (for Ph.D. credits) as one of the following options:

  • Report to be evaluated by the seminar speakers (min 3 pages)
  • Paper to be peer-reviewed and, if accepted, published in the workshop proceedings series (CEUR-WS [Jufo 1])

Papers will be peer-reviewed by at least three experts
Papers must not exceed 6 pages (LNCS format)  plus 1 additional page only with references and must conform to the CEUR-WS 2019 format and submission guidelines. Each submission will be reviewed by at least three members of the program committee.

About the Speakers:
Sebastiano Panichella is a passionate Computer Science Researcher at the Zurich University of Applied Science (ZHAW).
His research interests are in the domain of Software Engineering (SE) and cloud computing (CC): DevOps (e.g., Continuous Delivery, Continuous integration), Machine learning applied to SE, Software maintenance and evolution (with particular focus on Cloud, mobile, and Cyber-physical applications), Mobile Computing. Moreover, he is promoting research on “Summarization Techniques for Code, Changes, and Testing”. His research is funded by one Swiss National Science Foundation Grants. He authored or co-authored over forty papers appeared in International Conferences and Journals. These research works involved studies with industrial and open projects and received best paper awards or best paper nominations .

Josef Spillner is a senior lecturer (associate professor) and head of the Service Prototyping Lab at Zurich University of Applied Sciences in Switzerland. His research interests include cloud-native applications, service tooling and cloud accounting & billing. With his team, he works on challenging topics such as microservices, function-as-a-service and time series analysis. Before founding the lab, he conducted research at TUD, SAP, NTUU, UFCG and UniBZ and founded the Open Source Service Platform Research Initiative to promote re-usable software for scientific work. His work approach continues to promote international exchange and modernisation of research and publication approaches. He published a doctoral dissertation about metaquality of services and a habilitation treatise about stealth computing in multi-cloud environments.

Davide Taibi is Davide Taibi is a tenure track Assistant Professor   at the Tampere University (Finland) where he head the Cloud and WEb Engineering Group (CLoWeE). His research is mainly focused on Empirical Software Engineering applied to cloud-native systems, with a special focus on the migration from monolithic to cloud-native applications. He is investigating processes, and techniques for developing Cloud Native applications, identifying cloud-native specific patterns and anti-patterns. He is member of the International Software Engineering Network  (ISERN) from 2018. Before moving to Finland, he has been Assistant Professor at the Free University of Bozen/Bolzano (2015-2017), post-doctoral research fellow at the Technical University of Kaiserslautern and Fraunhofer Institute for Experimental Software Engineering – IESE (2013-2014) and research fellow at the University of Insubria (2007-2011).

 

Download Slides

https://github.com/clowee/inforte-cloud