Topics

Software Engineering: Emergent and Convergent Technologies

This edition of our summer school is focused on emergent technologies and recent software practices that are expected to generate a tremendous impact in our society, namely machine learning/artificial intelligence, Internet of Things, cloud and edge computing, and continuous software engineering/DevOps. These technologies are already being demanded by Industry 4.0 and Society 5.0.

The integration of several of these new emergent and convergent technologies allow the development of smarter systems that must be engineered with new software engineering practices that enable them with the ability of evolving, as dynamically as possible, to deal with high levels of uncertainty that arise from changes in the environment, the requirements and business needs. These systems must be able to monitor, collect, exchange, analyze and provide new knowledge and valuable data about themselves and their environments to be more efficient, self-regulated, and smarter. 

topicos-escuela-verano-ingenieria-software-2020.jpg

The emergent technologies to be studied in this summer school can be integrated in software systems with Continuous Software Engineering processes, to instrument and connect the physical, digital and biological worlds in a myriad of ways. The synergy originated in the convergence of these technologies have the potential to drastically improve the efficiency of businesses and organizations, even helping to regenerate the natural environment through better asset management, reverting in part the damage that previous industrial revolutions have caused.

The first day will be devoted to build a working context with industry, its concerns but also its plans and performed actions around these emergent technologies. Days two to four will be focused on the development of five workshops on: Continuous Software Engineering /DevOps, Machine Learning, Digital Transformation, as well as Cloud, Edge and Quantum Computing.

We hope you to enjoy the Second Edition of our Summer School!

DevOps

Thousands of organizations worldwide have joined the DevOps revolution in the last decade, allowing them to realize the concept of continuous delivery: reduce time to market, lower the cost to produce software features, and deliver a lesser number of bugs to customers. DevOps streamlines software development by bringing development and IT operations teams to work together in order to deliver, deploy and operate quality software more frequently. Such delivery is aligned with business objectives, which increases the business value of software changes, and opens up tighter integration opportunities between software development, IT operations, and business strategy. DevOps drives a mind shift across the organization to restructure teams and projects around a culture of self-managed collaboration and cooperation.

A successful DevOps configuration requires high levels of automation in the testing, integration, deployment, configuration, and operation management of software applications. The widespread adoption of container orchestration platforms, and technologies alike, has certainly facilitated the adoption of DevOps. Nevertheless, the complexity of development and operation environments has become challenging to manage.

The goal of this workshop is to provide a global understanding of the principles that drive the DevOps culture, and to illustrate the role that continuous software engineering practices play for a successful adoption of DevOps by configuring a continuous deployment pipeline for a  software system, considering the infrastructure-as-code requirements.

Cloud and Edge Computing

On the one hand, cloud computing allows the on-demand delivery of IT resources via the Internet, with the pay-as-you-go model pricing. These resources can be used to build solutions that help meet business and technology requirements. Cloud computing enables engineers to stop thinking of infrastructure as hardware, and instead think of it as software. On the other hand, edge computing is a distributed computing paradigm which brings computation and data storage closer to the location where it is needed, to improve response times and save bandwidth. The Cloud and Edge Computing Track is proposed for attendees who seek to understand opportunities to generate value from cloud and edge computing systems, as well as to study important concepts related to their architecture, services and security. The workshop includes hands-on activities based in AWS Cloud.

Machine Learning

The quest for thinking machines started with a broad and ambitious idea of realizing Artificial Intelligence (AI) around 1950. Since then, the goal of achieving AI has been re-stated several times with less ambitious ones. Despite of this, the advent of Big Data analytics, and the successful application of Machine Learning (ML) techniques for making breakthrough discoveries in data, have raised again the attention not only to ML, but to the promises of the whole AI, currently focused mainly on Deep Learning (DL).

The goal of this workshop is to provide an understanding of what ML/DL is, and how does DL techniques work by developing a simple human-shapes recognizer using frameworks such as Anaconda for processing images captured by a cellphone.

IoT, Digital Twins and Digital Transformation

The digital transformation is driving the continuous augmentation of both systems and humans’ capabilities. It is shaping the way industries and societies evolve as a result of recent advances in information and communication technologies such as the Internet of Things (IoT) and Digital Twins (DT). IoT devices’ capacity for generating valuable information during their operation is enabling the identification and understanding of global and long-term phenomena that was not possible to perceive nor manage before. Moreover, IoT devices are allowing the manifestation of real-world entities in the digital world, and vice versa, through the concept of Digital Twin. A Digital Twin constitutes a virtual and dynamic representation of the fundamental structural and behavioral characteristics of a physical entity (the real twin) across its lifecycle. DT realizations will enable data-driven decision making, automation, collaboration, and the creation of new business models based on the augmented capabilities that they offer to their counterpart real twins.

The goal of this workshop is to illustrate how to build infrastructures for enabling digital transformation by developing a simple system based on IoT devices and prospective Digital Twins.

Quantum Computing

Computer science has much to teach us about how to use, mimic and understand the mysteries and innovations found in nature. Quantum Computing is an emerging nature technology that is giving scientists and engineers the ability to tackle problems that are yet to be solved satisfactorily. This research opens the doors to breakthroughs in new medications, diagnosing illnesses, algorithms that optimize resources and financial strategies for living well into retirement.

Today, the first quantum computers are accessible and programmable over the internet. With improvements in the accuracy and power of quantum computers, the demand for a skilled workforce in Quantum Computing increases significantly.

We will introduce some basic and important concepts of quantum computing, including some mathematical understanding behind these basic principles. Topics include qubit systems, quantum gates, measurement, superposition, entanglement, how to send two classical bits through one qubit (superdense coding), and quantum teleportation. We provide hands-on experience on quantum computers and simulators, using Jupyter Notebooks and IBM’s open-source Quantum Computing framework Qiskit. Students will be able to continue using the IBM platform for future work.

Search - Offcanvas