Título
[en] RECOVERY ORIENTED SOFTWARE
Título
[pt] SOFTWARE ORIENTADO À RECUPERAÇÃO
Autor
[pt] JOAO ALFREDO PINTO DE MAGALHAES
Vocabulário
[pt] ENGENHARIA DE SOFTWARE
Vocabulário
[pt] SOFTWARE DEPURAVEL
Vocabulário
[pt] FIDEDIGNIDADE
Vocabulário
[en] SOFTWARE ENGINEERING
Resumo
[pt] Software orientado à recuperação é construído com a perspective que falhas
de hardware e software bem como erros de operação são fatos com os quais se
deve conviver, pois são problemas que não podem ser resolvidos no
desenvolvimento de aplicações reais e complexas. Consequentemente, qualquer
software sempre terá uma chance diferente de zero de falhar. Algumas dessas
falhas podem ser causadas por defeitos que podem ser removidos ou
encapsulados. Uma questão chave é aumentar a detectabilidade de erros, ou em
outras palavras, aumentar a auto-consciência comportamental de um software.
Nesse trabalho, apresentamos os resultados da aplicação sistemática de técnicas
conhecidas (design by contract, self-checking software, componentes de software,
software depurável, design for testability, mock components e padrões) com o
objetivo de criar software orientado à recuperação. Através da medição de cinco
aplicações reais de tempo real, analisamos os efeitos da adoção dessas técnicas.
Em particular, observamos o balanceamento do esforço gasto em diferentes
estágios do desenvolvimento a exploramos o conceito de redundância de
raciocínio que, além de prover uma maior detectabilidade de erros e
depurabilidade, também leva ao aumento da qualidade por construção. Os
resultados foram encorajadores por terem sido sistematicamente melhores do que
aqueles reportados pela literatura e obtidos a um custo acessível.
Resumo
[en] Recovery oriented software is built with the perspective that hardware or
software failures as well as operation mistakes are facts to be coped with, since
they are problems that cannot be fully solved while developing real complex
applications. Consequently, any software will always have a non-zero chance of
failure. Some of these failures may be caused by defects that could be removed or
encapsulated. A key issue is to increase the detectability of errors, in other words,
increase the self-awareness of the software s behavior. In this work, we present the
results of systematically applying already well known techniques (design by
contract, self-checking software, software components, debuggable software,
design for testability, mock components and patterns) with the intent of creating
recovery oriented software. Measuring the development of five different real-time
and real world applications, we analyzed the effects of the adoption of these
techniques. In particular we observed the balancing of the effort spent in different
development stages and explore the reduncancy of reasoning concept that, as
well as providing a higher detectability and debuggability, also leads to enhancing
quality-by-construction. The results were encouraging since they were
systematically better than those reported in the literature and were achieved at a
feasible cost.
Orientador(es)
ARNDT VON STAA
Banca
SIMONE DINIZ JUNQUEIRA BARBOSA
Banca
ARNDT VON STAA
Banca
CLAUDIA MARIA LIMA WERNER
Banca
RICARDO CHOREN NOYA
Banca
ALESSANDRO FABRICIO GARCIA
Catalogação
2010-03-24
Apresentação
2009-09-03
Tipo
[pt] TEXTO
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Formato
application/pdf
Idioma(s)
INGLÊS
Referência [pt]
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=15420@1
Referência [en]
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=15420@2
Referência DOI
https://doi.org/10.17771/PUCRio.acad.15420
Arquivos do conteúdo
CAPA, AGRADECIMENTOS, RESUMO, ABSTRACT, SUMÁRIO E LISTAS PDF CAPÍTULO 1 PDF CAPÍTULO 2 PDF CAPÍTULO 3 PDF CAPÍTULO 4 PDF CAPÍTULO 5 PDF CAPÍTULO 6 PDF CAPÍTULO 7 PDF REFERÊNCIAS BIBLIOGRÁFICAS PDF