Colocações MEI 2013/2014

DEI - FCTUC
Gerado a 2024-04-29 21:36:44 (Europe/Lisbon).
Voltar

Titulo Estágio

Improving the performance of a self-adaptive cloud environment

Área Tecnológica

Engenharia de Software

Local do Estágio

Departamento de Engenharia Informática da Universidade de Coimbra

Enquadramento

A system that is able to monitor itself and act to maintain or improve availability, performance or security is called a self-adaptive system. Such systems are applicable to a variety of scenarios in which they can be used to spare resources and money, at the same time that they improve failure rate, response time and throughput. For this reason they have received a lot of attention from research and industry in the last few years.

A lot of studies have been published regarding self-adaptation, such as experimentations, algorithms, techniques and tools. However, there is a question that still remains to be answered: what is the overhead of having a self-adaptive system? A system that is constantly monitoring itself, planning decisions and evaluating possible adaptation strategies cannot perform as well as other system under a high request demand and in the same scenario.

In previous work we used self-adaptation in a cloud environment, where a large group of servers work cooperatively to answer to many request from clients as possible. For instance, when the system has a high peak of client requests it automatically adds new servers or reroute requests to the fastest ones. The main focus of this internship is to understand what is the performance overhead when using self-adaptation and how it could be improved.

Objetivo

The main goal of this internship is to assess and improve the performance overhead of a self-adaptive system. The candidate should make performance tests to the target system with and without self-adaptation capabilities and evaluate its overhead. Moreover, it is important to understand which components are acting as performance bottlenecks and what could be done to improve it.

At the end of this internship, the candidate should present a comparison between the results with and without self-adaptation and with the improvements done to the system. The work concludes with the thesis and a possible research paper writing.

Plano de Trabalhos - Semestre 1

- State of the Art (months 1 & 2)

In this phase the candidate will explore the topics under study, such as dependability concepts, software architecture, code instrumentation and self-adaptive systems. This culminates with the clear definition of the goals to achieve in this internship.

- Experimentation of the self-adaptive system (month 3)

The only purpose of this task is the candidate get familiar with the development context. The candidate will have access to an already deployed and properly configured self-adaptive system applied to a case-study based on a typical cloud environment. The experience and know-how obtained from this phase is important to fully understand the underlying system and, consequently, it will determine the success of this internship.

- Thesis Proposal Writing (month 4 & 5)

The thesis proposal should clear state and define the tasks performed during the first semester. This document also reflects the choices made from the candidate and a task schedule for the following semester.

Plano de Trabalhos - Semestre 2

- Performance assessment (month 6)

In this task the candidate should run experiments to assess the performance overhead of a self-adaptive system.

- Identification of bottlenecks and improvements (months 7 & 8)

The purpose of this task is to understand which components perform bad and in what they could be improved.

- Improvements implementation and assessment (month 9)

The candidate should implement the improvements identified in the last task. In addition, he also has to do a performance assessment to compare the results before and after the implementation of the improvements.

- Thesis Writing (month 10)

The candidate should document the work done in the internship, as well as, the problems faced during that period and the justification of the selected solutions.

Condições

The work will be performed at the Department of Informatics and Engineering in the University of Coimbra. The candidate will have a place to work in one of the laboratories, in the Software and Systems Engineering (SSE) group of CISUC, and access to a deployed server for implementation and experimentation purposes. The candidate will receive the proper documentation and support in all the topics covered in this internship.

This internship is part of the Affidavit project from the Carnegie Mellon | Portugal Program and there may be a possibility for a grant to support the work. In addition, a meeting will be held twice a month between the teams from the University of Coimbra and Carnegie Mellon.

Observações

Good know-how on Linux OS and its command line usage.

Orientador

Mário Zenha Rela e Raul Barbosa
mzrela@dei.uc.pt 📩