An Aspect-oriented Implementation Method

Detalhes bibliográficos
Ano de defesa: 2005
Autor(a) principal: Castelo Branco Soares, Sérgio
Orientador(a): Henrique Monteiro Borba, Paulo
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/1975
Resumo: Esta tese define um método de implementação orientado a aspectos que guia a implementação de requisitos (concerns) de comunicação (distribuição), gerenciamento de dados e de controle de concorrência como aspectos. Um aspecto é um novo mecanismo de abstração adicionado pelo paradigma orientado a aspectos estendendo o paradigma orientado a objetos. O objetivo desta nova abstração é aumentar a modularidade do software e, portanto, sua manutenibilidade. A modularidade alcançada pelo uso de aspectos permite que programadores adicionem ou modifiquem a funcionalidade do software com mudanças não-invasivas, as quais mantém o código base livre de detalhes sobre estas mudanças e, portanto, mais fácil de entender e modificar. Além disso, este tipo de mudança evita que códigos de diferentes requisitos (concerns) fiquem misturados com o código base e entre si e que fiquem espalhados por vários módulos do software. Também definimos como o método de implementação pode ser composto com o processo de desenvolvimento RUP, de modo a ajustar atividades de gerenciamento, levantamento de requisitos, análise e de projeto para que possam suportar a aplicação do método num contexto do desenvolvimento de software. Além disso, o método apresenta uma abordagem de implementação alternativa que tenta antecipar mudanças de requisitos através da implementação de protótipos funcionais mais precocemente do que numa abordagem regular. Desta forma, clientes e desenvolvedores podem testar o software antes de aplicar esforço adicional para implementar requisitos de distribuição, persistência e de controle de concorrência. Um estudo foi executado de modo a caracterizar quão útil é esta abordagem alternativa, provendo um suporte para a tomada de decisões sobre quando utilizar a abordagem alternativa ou a regular. Em adição, o método provê suporte automatizado para a geração de tipos do software base e de aspectos para implementar requisitos de gerenciamento de dados, comunicação e de controle de concorrência. De fato, esta ferramenta guia a aplicação do método e o uso de um framework de aspectos gerado pelo método, o qual permite um reuso de parte dos aspectos gerados neste trabalho. O método de implementação foi definido com base numa arquitetura de software específica que apesar de específica pode ser utilizada pra implementar vários tipos de softwares
id UFPE_9b2a2ef9c723a982ffd9ceff34562faa
oai_identifier_str oai:repositorio.ufpe.br:123456789/1975
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling Castelo Branco Soares, SérgioHenrique Monteiro Borba, Paulo 2014-06-12T15:53:33Z2014-06-12T15:53:33Z2005Castelo Branco Soares, Sérgio; Henrique Monteiro Borba, Paulo. An Aspect-oriented Implementation Method. 2005. Tese (Doutorado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2005.https://repositorio.ufpe.br/handle/123456789/1975Esta tese define um método de implementação orientado a aspectos que guia a implementação de requisitos (concerns) de comunicação (distribuição), gerenciamento de dados e de controle de concorrência como aspectos. Um aspecto é um novo mecanismo de abstração adicionado pelo paradigma orientado a aspectos estendendo o paradigma orientado a objetos. O objetivo desta nova abstração é aumentar a modularidade do software e, portanto, sua manutenibilidade. A modularidade alcançada pelo uso de aspectos permite que programadores adicionem ou modifiquem a funcionalidade do software com mudanças não-invasivas, as quais mantém o código base livre de detalhes sobre estas mudanças e, portanto, mais fácil de entender e modificar. Além disso, este tipo de mudança evita que códigos de diferentes requisitos (concerns) fiquem misturados com o código base e entre si e que fiquem espalhados por vários módulos do software. Também definimos como o método de implementação pode ser composto com o processo de desenvolvimento RUP, de modo a ajustar atividades de gerenciamento, levantamento de requisitos, análise e de projeto para que possam suportar a aplicação do método num contexto do desenvolvimento de software. Além disso, o método apresenta uma abordagem de implementação alternativa que tenta antecipar mudanças de requisitos através da implementação de protótipos funcionais mais precocemente do que numa abordagem regular. Desta forma, clientes e desenvolvedores podem testar o software antes de aplicar esforço adicional para implementar requisitos de distribuição, persistência e de controle de concorrência. Um estudo foi executado de modo a caracterizar quão útil é esta abordagem alternativa, provendo um suporte para a tomada de decisões sobre quando utilizar a abordagem alternativa ou a regular. Em adição, o método provê suporte automatizado para a geração de tipos do software base e de aspectos para implementar requisitos de gerenciamento de dados, comunicação e de controle de concorrência. De fato, esta ferramenta guia a aplicação do método e o uso de um framework de aspectos gerado pelo método, o qual permite um reuso de parte dos aspectos gerados neste trabalho. O método de implementação foi definido com base numa arquitetura de software específica que apesar de específica pode ser utilizada pra implementar vários tipos de softwaresporUniversidade Federal de PernambucoAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessDesenvolvimento de software orientado a aspectosSoftware com mudanças não-invasivasAn Aspect-oriented Implementation Methodinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETHUMBNAILarquivo5218_1.pdf.jpgarquivo5218_1.pdf.jpgGenerated Thumbnailimage/jpeg1346https://repositorio.ufpe.br/bitstream/123456789/1975/4/arquivo5218_1.pdf.jpg3dfbc055607dcb6fc48f63e1550733f2MD54ORIGINALarquivo5218_1.pdfapplication/pdf1609522https://repositorio.ufpe.br/bitstream/123456789/1975/1/arquivo5218_1.pdff6a31b681ad5e8d7777d12b831c3590aMD51LICENSElicense.txttext/plain1748https://repositorio.ufpe.br/bitstream/123456789/1975/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52TEXTarquivo5218_1.pdf.txtarquivo5218_1.pdf.txtExtracted texttext/plain378655https://repositorio.ufpe.br/bitstream/123456789/1975/3/arquivo5218_1.pdf.txt4fca05ad1accc216e6999fb39aa65741MD53123456789/19752019-10-25 12:53:44.136oai:repositorio.ufpe.br:123456789/1975Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-25T15:53:44Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv An Aspect-oriented Implementation Method
title An Aspect-oriented Implementation Method
spellingShingle An Aspect-oriented Implementation Method
Castelo Branco Soares, Sérgio
Desenvolvimento de software orientado a aspectos
Software com mudanças não-invasivas
title_short An Aspect-oriented Implementation Method
title_full An Aspect-oriented Implementation Method
title_fullStr An Aspect-oriented Implementation Method
title_full_unstemmed An Aspect-oriented Implementation Method
title_sort An Aspect-oriented Implementation Method
author Castelo Branco Soares, Sérgio
author_facet Castelo Branco Soares, Sérgio
author_role author
dc.contributor.author.fl_str_mv Castelo Branco Soares, Sérgio
dc.contributor.advisor1.fl_str_mv Henrique Monteiro Borba, Paulo
contributor_str_mv Henrique Monteiro Borba, Paulo
dc.subject.por.fl_str_mv Desenvolvimento de software orientado a aspectos
Software com mudanças não-invasivas
topic Desenvolvimento de software orientado a aspectos
Software com mudanças não-invasivas
description Esta tese define um método de implementação orientado a aspectos que guia a implementação de requisitos (concerns) de comunicação (distribuição), gerenciamento de dados e de controle de concorrência como aspectos. Um aspecto é um novo mecanismo de abstração adicionado pelo paradigma orientado a aspectos estendendo o paradigma orientado a objetos. O objetivo desta nova abstração é aumentar a modularidade do software e, portanto, sua manutenibilidade. A modularidade alcançada pelo uso de aspectos permite que programadores adicionem ou modifiquem a funcionalidade do software com mudanças não-invasivas, as quais mantém o código base livre de detalhes sobre estas mudanças e, portanto, mais fácil de entender e modificar. Além disso, este tipo de mudança evita que códigos de diferentes requisitos (concerns) fiquem misturados com o código base e entre si e que fiquem espalhados por vários módulos do software. Também definimos como o método de implementação pode ser composto com o processo de desenvolvimento RUP, de modo a ajustar atividades de gerenciamento, levantamento de requisitos, análise e de projeto para que possam suportar a aplicação do método num contexto do desenvolvimento de software. Além disso, o método apresenta uma abordagem de implementação alternativa que tenta antecipar mudanças de requisitos através da implementação de protótipos funcionais mais precocemente do que numa abordagem regular. Desta forma, clientes e desenvolvedores podem testar o software antes de aplicar esforço adicional para implementar requisitos de distribuição, persistência e de controle de concorrência. Um estudo foi executado de modo a caracterizar quão útil é esta abordagem alternativa, provendo um suporte para a tomada de decisões sobre quando utilizar a abordagem alternativa ou a regular. Em adição, o método provê suporte automatizado para a geração de tipos do software base e de aspectos para implementar requisitos de gerenciamento de dados, comunicação e de controle de concorrência. De fato, esta ferramenta guia a aplicação do método e o uso de um framework de aspectos gerado pelo método, o qual permite um reuso de parte dos aspectos gerados neste trabalho. O método de implementação foi definido com base numa arquitetura de software específica que apesar de específica pode ser utilizada pra implementar vários tipos de softwares
publishDate 2005
dc.date.issued.fl_str_mv 2005
dc.date.accessioned.fl_str_mv 2014-06-12T15:53:33Z
dc.date.available.fl_str_mv 2014-06-12T15:53:33Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv Castelo Branco Soares, Sérgio; Henrique Monteiro Borba, Paulo. An Aspect-oriented Implementation Method. 2005. Tese (Doutorado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2005.
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/1975
identifier_str_mv Castelo Branco Soares, Sérgio; Henrique Monteiro Borba, Paulo. An Aspect-oriented Implementation Method. 2005. Tese (Doutorado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2005.
url https://repositorio.ufpe.br/handle/123456789/1975
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
bitstream.url.fl_str_mv https://repositorio.ufpe.br/bitstream/123456789/1975/4/arquivo5218_1.pdf.jpg
https://repositorio.ufpe.br/bitstream/123456789/1975/1/arquivo5218_1.pdf
https://repositorio.ufpe.br/bitstream/123456789/1975/2/license.txt
https://repositorio.ufpe.br/bitstream/123456789/1975/3/arquivo5218_1.pdf.txt
bitstream.checksum.fl_str_mv 3dfbc055607dcb6fc48f63e1550733f2
f6a31b681ad5e8d7777d12b831c3590a
8a4605be74aa9ea9d79846c1fba20a33
4fca05ad1accc216e6999fb39aa65741
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1862742075779317760