Desenvolvimento de software orientado a temas: um estudo de caso

O Paradigma Orientado a Objetos tem sido atualmente a abordagem dominante de desenvolvimento de software. Contudo, ela sofre da Tirania da Decomposição Dominante, pois não permite uma modularização adequada da implementação relativa a interesses estruturais. Como consequência, a implementação re...

Full description

Bibliographic Details
Main Author: Antonielly Garcia Rodrigues
Other Authors: Paulo Cesar Masiero
Language:Portuguese
Published: Universidade de São Paulo 2006
Subjects:
POA
AOP
Online Access:http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06042010-110211/
id ndltd-IBICT-oai-teses.usp.br-tde-06042010-110211
record_format oai_dc
collection NDLTD
language Portuguese
sources NDLTD
topic Desenvolvimento de software orientado a aspectos
Desenvolvimento de software orientado a temas
DSOA
DSOT
Hiperespaços
Hyper/J
MDSoC
Orientação a aspectos
Orientação a objetos
Orientação a temas
POA
Programação orientada a aspectos
Separação multidimensional de interesses
AOP
AOSD
Aspect-oriented programming
Aspect-oriented software development
Hyper/J
Hyperspaces
MDSoC
Multidimensional separation of concerns
Object-orientd
Theme-oriented software development
TOSD
spellingShingle Desenvolvimento de software orientado a aspectos
Desenvolvimento de software orientado a temas
DSOA
DSOT
Hiperespaços
Hyper/J
MDSoC
Orientação a aspectos
Orientação a objetos
Orientação a temas
POA
Programação orientada a aspectos
Separação multidimensional de interesses
AOP
AOSD
Aspect-oriented programming
Aspect-oriented software development
Hyper/J
Hyperspaces
MDSoC
Multidimensional separation of concerns
Object-orientd
Theme-oriented software development
TOSD
Antonielly Garcia Rodrigues
Desenvolvimento de software orientado a temas: um estudo de caso
description O Paradigma Orientado a Objetos tem sido atualmente a abordagem dominante de desenvolvimento de software. Contudo, ela sofre da Tirania da Decomposição Dominante, pois não permite uma modularização adequada da implementação relativa a interesses estruturais. Como consequência, a implementação relativa a cada interesse estrutural fica espalhada pelos módulos do programa e entrelaçada com a implementação relativa a outros interesses estruturais. Outras abordagens de desenvolvimento de software, como o Desenvolvimento de Software Orientado a Aspectos com AspectJ e a Separação Multidimensional de Interesses em Hiperespaços com Hyper/J e CME, atingem sucesso moderado em oferecer mecanismos que permitem superar as deficiências do Paradigma Orientado a Objetos. No entanto, tais abordagens também possuem deficiências e omissões que devem ser reparadas para que elas possam se tornar utilizáveis em contextos típicos de desenvolvimento de software complexo. Este trabalho especifica uma nova abordagem, denominada Desenvolvimento de Software Orientado a Temas (DSOT), que tem como objetivo superar algumas deficiências das abordagens anteriores por meio de mecanismos que permitem a manipulação da implementação de cada interesse estrutural de forma separada e a manipulação da implementação de cada tipo de dado de forma separada. Além disso, DSOT possui operadores que são ortogonais, isto é, podem ser utilizados de forma combinada ou separada, para efetuar a composição de módulos do programa. Mostra-se o modelo conceitual do DSOT e descrevese um estudo de caso que consiste no desenvolvimento de um programa para demonstrar mais concretamente como o DSOT funciona na prática. Não se demonstra a superioridade do DSOT para o caso geral, mas os resultados alcançados evidenciam que o DSOT é uma abordagem promissora que merece ser investigada mais aprofundadamente em pesquisas futuras === The Object-Oriented Paradigm has currently been the dominant approach for developing software. However, it suffers from the Tyranny of the Dominant Decomposition, as it does not support a suitable modularization to the implementation relative to structural concerns. As a consequence, the implementation relative to each structural concern is scattered throughout the program modules and tangled with the implementation relative to other structural concerns. Some software development approaches, such as Aspect-Oriented Software Development with Aspect and Multidimensional Separation of Concerns in Hyperspaces with Hyper/J and CME, achieve moderate success in offering mechanisms that make it possible to overcome the deficiencies of the Object-Oriented Paradigm. However, such approaches also possess deficiencies and ommissions that must be corrected in order for them to get usable in typical complex software development contexts. This work specifies a new approach, named Theme- Oriented Software Development (TOSD), which aims at overcoming some deficiencies from previous approaches through mechanisms that support the handling of implementation for every structural concern separately and the handling of implementation for every data type separately. Moreover, TOSD contains operators which are orthogonal, that is, they can be used separately or as a combination, in order to perform composition of the program modules. We show the conceptual model of TOSD and describe a case study which consists in the development of a program to demonstrate more concretely how TOSD works in practice. We do not demonstrate the superiority of TOSD for the general case, but the results we have obtained suggest that TOSD is a promissing approach which deserves a deeper investigation in future research
author2 Paulo Cesar Masiero
author_facet Paulo Cesar Masiero
Antonielly Garcia Rodrigues
author Antonielly Garcia Rodrigues
author_sort Antonielly Garcia Rodrigues
title Desenvolvimento de software orientado a temas: um estudo de caso
title_short Desenvolvimento de software orientado a temas: um estudo de caso
title_full Desenvolvimento de software orientado a temas: um estudo de caso
title_fullStr Desenvolvimento de software orientado a temas: um estudo de caso
title_full_unstemmed Desenvolvimento de software orientado a temas: um estudo de caso
title_sort desenvolvimento de software orientado a temas: um estudo de caso
publisher Universidade de São Paulo
publishDate 2006
url http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06042010-110211/
work_keys_str_mv AT antoniellygarciarodrigues desenvolvimentodesoftwareorientadoatemasumestudodecaso
AT antoniellygarciarodrigues themeorientedsoftwaredevelopmentacasestudy
_version_ 1718891656403484672
spelling ndltd-IBICT-oai-teses.usp.br-tde-06042010-1102112019-01-21T22:11:27Z Desenvolvimento de software orientado a temas: um estudo de caso Theme-oriented software development: a case study Antonielly Garcia Rodrigues Paulo Cesar Masiero Christina von Flach Garcia Chavez Adenilso da Silva Simão Desenvolvimento de software orientado a aspectos Desenvolvimento de software orientado a temas DSOA DSOT Hiperespaços Hyper/J MDSoC Orientação a aspectos Orientação a objetos Orientação a temas POA Programação orientada a aspectos Separação multidimensional de interesses AOP AOSD Aspect-oriented programming Aspect-oriented software development Hyper/J Hyperspaces MDSoC Multidimensional separation of concerns Object-orientd Theme-oriented software development TOSD O Paradigma Orientado a Objetos tem sido atualmente a abordagem dominante de desenvolvimento de software. Contudo, ela sofre da Tirania da Decomposição Dominante, pois não permite uma modularização adequada da implementação relativa a interesses estruturais. Como consequência, a implementação relativa a cada interesse estrutural fica espalhada pelos módulos do programa e entrelaçada com a implementação relativa a outros interesses estruturais. Outras abordagens de desenvolvimento de software, como o Desenvolvimento de Software Orientado a Aspectos com AspectJ e a Separação Multidimensional de Interesses em Hiperespaços com Hyper/J e CME, atingem sucesso moderado em oferecer mecanismos que permitem superar as deficiências do Paradigma Orientado a Objetos. No entanto, tais abordagens também possuem deficiências e omissões que devem ser reparadas para que elas possam se tornar utilizáveis em contextos típicos de desenvolvimento de software complexo. Este trabalho especifica uma nova abordagem, denominada Desenvolvimento de Software Orientado a Temas (DSOT), que tem como objetivo superar algumas deficiências das abordagens anteriores por meio de mecanismos que permitem a manipulação da implementação de cada interesse estrutural de forma separada e a manipulação da implementação de cada tipo de dado de forma separada. Além disso, DSOT possui operadores que são ortogonais, isto é, podem ser utilizados de forma combinada ou separada, para efetuar a composição de módulos do programa. Mostra-se o modelo conceitual do DSOT e descrevese um estudo de caso que consiste no desenvolvimento de um programa para demonstrar mais concretamente como o DSOT funciona na prática. Não se demonstra a superioridade do DSOT para o caso geral, mas os resultados alcançados evidenciam que o DSOT é uma abordagem promissora que merece ser investigada mais aprofundadamente em pesquisas futuras The Object-Oriented Paradigm has currently been the dominant approach for developing software. However, it suffers from the Tyranny of the Dominant Decomposition, as it does not support a suitable modularization to the implementation relative to structural concerns. As a consequence, the implementation relative to each structural concern is scattered throughout the program modules and tangled with the implementation relative to other structural concerns. Some software development approaches, such as Aspect-Oriented Software Development with Aspect and Multidimensional Separation of Concerns in Hyperspaces with Hyper/J and CME, achieve moderate success in offering mechanisms that make it possible to overcome the deficiencies of the Object-Oriented Paradigm. However, such approaches also possess deficiencies and ommissions that must be corrected in order for them to get usable in typical complex software development contexts. This work specifies a new approach, named Theme- Oriented Software Development (TOSD), which aims at overcoming some deficiencies from previous approaches through mechanisms that support the handling of implementation for every structural concern separately and the handling of implementation for every data type separately. Moreover, TOSD contains operators which are orthogonal, that is, they can be used separately or as a combination, in order to perform composition of the program modules. We show the conceptual model of TOSD and describe a case study which consists in the development of a program to demonstrate more concretely how TOSD works in practice. We do not demonstrate the superiority of TOSD for the general case, but the results we have obtained suggest that TOSD is a promissing approach which deserves a deeper investigation in future research 2006-05-05 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis http://www.teses.usp.br/teses/disponiveis/55/55134/tde-06042010-110211/ por info:eu-repo/semantics/openAccess Universidade de São Paulo Ciências da Computação e Matemática Computacional USP BR reponame:Biblioteca Digital de Teses e Dissertações da USP instname:Universidade de São Paulo instacron:USP