Implementing framework crosscutting extensions with EJPs and AspectJ
Autor(a) principal: | |
---|---|
Data de Publicação: | 2006 |
Outros Autores: | , , , , , , |
Tipo de documento: | Artigo de conferência |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFS |
Texto Completo: | https://ri.ufs.br/handle/riufs/694 |
Resumo: | In a previous work, we proposed a framework extension approach based on the use of a new concept, called Extension Join Points (EJPs). EJPs enable the framework systematic extension by means of variability and integration aspects. In this paper, we show how EJPs can be implemented using the mechanisms of the AspectJ language. To evaluate the usefulness of the EJPs in the framework extension process, we have used them in the development of three OO frameworks from different domains. As a result of our case studies, we present: (i) an initial categorization of different kinds of contracts between frameworks, EJPs and aspects which can be implemented in AspectJ; and (ii) a set of lessons learned when specifying the EJPs._____________________________________________________________________________________________ RESUMO: Uma abordagem para extensão de frameworks baseada em um novo conceito, denominado Extension Join Points (EJPs), tem sido proposta anteriormente. EJPs possibilitam a extensão sistemática de frameworks, através do uso de aspectos de variabilidade e integração. Neste artigo, nós mostramos como os EJPs podem ser implementados usando os mecanismos da linguagem AspectJ. Para avaliar a utilidade dos EJPs no processo de extensão de frameworks, nós os utilizamos no desenvolvimento de 3 frameworks OO de diferentes domínios. Como um resultado de nossos estudos de caso, nós apresentamos: (i) uma categorização inicial de diferentes tipos de contratos entre frameworks, EJPs e aspectos, os quais podem ser implementados em AspectJ; e (ii) um conjunt o de lições aprendidas quando especificando os EJPs. |
id |
UFS-2_11eadd39f9e9a6fa74153e539486ee0d |
---|---|
oai_identifier_str |
oai:ufs.br:riufs/694 |
network_acronym_str |
UFS-2 |
network_name_str |
Repositório Institucional da UFS |
repository_id_str |
|
spelling |
Kulesza, UiráCoelho, RobertaAlves, VanderCosta Neto, AlbertoGarcia, AlessandroLucena, Carlos José Pereira deStaa, Arndt vonBorba, Paulo2013-09-02T19:15:19Z2013-09-02T19:15:19Z2006-10KULESZA, U. et al. Implementing framework crosscutting extensions with EJPs and AspectJ. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 20., 2006, Florianópolis. Anais... Florianópolis: SBC, 2006. Disponível em: <www.lbd.dcc.ufmg.br/colecoes/sbes/2006/012.pdf>. Acesso em: 2 set. 2013.https://ri.ufs.br/handle/riufs/694In a previous work, we proposed a framework extension approach based on the use of a new concept, called Extension Join Points (EJPs). EJPs enable the framework systematic extension by means of variability and integration aspects. In this paper, we show how EJPs can be implemented using the mechanisms of the AspectJ language. To evaluate the usefulness of the EJPs in the framework extension process, we have used them in the development of three OO frameworks from different domains. As a result of our case studies, we present: (i) an initial categorization of different kinds of contracts between frameworks, EJPs and aspects which can be implemented in AspectJ; and (ii) a set of lessons learned when specifying the EJPs._____________________________________________________________________________________________ RESUMO: Uma abordagem para extensão de frameworks baseada em um novo conceito, denominado Extension Join Points (EJPs), tem sido proposta anteriormente. EJPs possibilitam a extensão sistemática de frameworks, através do uso de aspectos de variabilidade e integração. Neste artigo, nós mostramos como os EJPs podem ser implementados usando os mecanismos da linguagem AspectJ. Para avaliar a utilidade dos EJPs no processo de extensão de frameworks, nós os utilizamos no desenvolvimento de 3 frameworks OO de diferentes domínios. Como um resultado de nossos estudos de caso, nós apresentamos: (i) uma categorização inicial de diferentes tipos de contratos entre frameworks, EJPs e aspectos, os quais podem ser implementados em AspectJ; e (ii) um conjunt o de lições aprendidas quando especificando os EJPs.Extension Join PointsAspectJFrameworksImplementing framework crosscutting extensions with EJPs and AspectJinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/conferenceObjectengreponame:Repositório Institucional da UFSinstname:Universidade Federal de Sergipe (UFS)instacron:UFSinfo:eu-repo/semantics/openAccessTHUMBNAILImplementingFrameworkCrosscutting.pdf.jpgImplementingFrameworkCrosscutting.pdf.jpgGenerated Thumbnailimage/jpeg1619https://ri.ufs.br/jspui/bitstream/riufs/694/4/ImplementingFrameworkCrosscutting.pdf.jpga436aa3894ad16478be61b62d593753aMD54ORIGINALImplementingFrameworkCrosscutting.pdfImplementingFrameworkCrosscutting.pdfapplication/pdf287845https://ri.ufs.br/jspui/bitstream/riufs/694/1/ImplementingFrameworkCrosscutting.pdf187385d001770ffd3edcca92762d8301MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://ri.ufs.br/jspui/bitstream/riufs/694/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52TEXTImplementingFrameworkCrosscutting.pdf.txtImplementingFrameworkCrosscutting.pdf.txtExtracted texttext/plain57298https://ri.ufs.br/jspui/bitstream/riufs/694/3/ImplementingFrameworkCrosscutting.pdf.txt4b4ab0bd99342e267e4f61c7f46c1ebeMD53riufs/6942016-07-29 19:01:15.124oai:ufs.br:riufs/694Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttps://ri.ufs.br/oai/requestrepositorio@academico.ufs.bropendoar:2016-07-29T22:01:15Repositório Institucional da UFS - Universidade Federal de Sergipe (UFS)false |
dc.title.pt_BR.fl_str_mv |
Implementing framework crosscutting extensions with EJPs and AspectJ |
title |
Implementing framework crosscutting extensions with EJPs and AspectJ |
spellingShingle |
Implementing framework crosscutting extensions with EJPs and AspectJ Kulesza, Uirá Extension Join Points AspectJ Frameworks |
title_short |
Implementing framework crosscutting extensions with EJPs and AspectJ |
title_full |
Implementing framework crosscutting extensions with EJPs and AspectJ |
title_fullStr |
Implementing framework crosscutting extensions with EJPs and AspectJ |
title_full_unstemmed |
Implementing framework crosscutting extensions with EJPs and AspectJ |
title_sort |
Implementing framework crosscutting extensions with EJPs and AspectJ |
author |
Kulesza, Uirá |
author_facet |
Kulesza, Uirá Coelho, Roberta Alves, Vander Costa Neto, Alberto Garcia, Alessandro Lucena, Carlos José Pereira de Staa, Arndt von Borba, Paulo |
author_role |
author |
author2 |
Coelho, Roberta Alves, Vander Costa Neto, Alberto Garcia, Alessandro Lucena, Carlos José Pereira de Staa, Arndt von Borba, Paulo |
author2_role |
author author author author author author author |
dc.contributor.author.fl_str_mv |
Kulesza, Uirá Coelho, Roberta Alves, Vander Costa Neto, Alberto Garcia, Alessandro Lucena, Carlos José Pereira de Staa, Arndt von Borba, Paulo |
dc.subject.por.fl_str_mv |
Extension Join Points AspectJ Frameworks |
topic |
Extension Join Points AspectJ Frameworks |
description |
In a previous work, we proposed a framework extension approach based on the use of a new concept, called Extension Join Points (EJPs). EJPs enable the framework systematic extension by means of variability and integration aspects. In this paper, we show how EJPs can be implemented using the mechanisms of the AspectJ language. To evaluate the usefulness of the EJPs in the framework extension process, we have used them in the development of three OO frameworks from different domains. As a result of our case studies, we present: (i) an initial categorization of different kinds of contracts between frameworks, EJPs and aspects which can be implemented in AspectJ; and (ii) a set of lessons learned when specifying the EJPs._____________________________________________________________________________________________ RESUMO: Uma abordagem para extensão de frameworks baseada em um novo conceito, denominado Extension Join Points (EJPs), tem sido proposta anteriormente. EJPs possibilitam a extensão sistemática de frameworks, através do uso de aspectos de variabilidade e integração. Neste artigo, nós mostramos como os EJPs podem ser implementados usando os mecanismos da linguagem AspectJ. Para avaliar a utilidade dos EJPs no processo de extensão de frameworks, nós os utilizamos no desenvolvimento de 3 frameworks OO de diferentes domínios. Como um resultado de nossos estudos de caso, nós apresentamos: (i) uma categorização inicial de diferentes tipos de contratos entre frameworks, EJPs e aspectos, os quais podem ser implementados em AspectJ; e (ii) um conjunt o de lições aprendidas quando especificando os EJPs. |
publishDate |
2006 |
dc.date.issued.fl_str_mv |
2006-10 |
dc.date.accessioned.fl_str_mv |
2013-09-02T19:15:19Z |
dc.date.available.fl_str_mv |
2013-09-02T19:15:19Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/conferenceObject |
format |
conferenceObject |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
KULESZA, U. et al. Implementing framework crosscutting extensions with EJPs and AspectJ. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 20., 2006, Florianópolis. Anais... Florianópolis: SBC, 2006. Disponível em: <www.lbd.dcc.ufmg.br/colecoes/sbes/2006/012.pdf>. Acesso em: 2 set. 2013. |
dc.identifier.uri.fl_str_mv |
https://ri.ufs.br/handle/riufs/694 |
identifier_str_mv |
KULESZA, U. et al. Implementing framework crosscutting extensions with EJPs and AspectJ. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 20., 2006, Florianópolis. Anais... Florianópolis: SBC, 2006. Disponível em: <www.lbd.dcc.ufmg.br/colecoes/sbes/2006/012.pdf>. Acesso em: 2 set. 2013. |
url |
https://ri.ufs.br/handle/riufs/694 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFS instname:Universidade Federal de Sergipe (UFS) instacron:UFS |
instname_str |
Universidade Federal de Sergipe (UFS) |
instacron_str |
UFS |
institution |
UFS |
reponame_str |
Repositório Institucional da UFS |
collection |
Repositório Institucional da UFS |
bitstream.url.fl_str_mv |
https://ri.ufs.br/jspui/bitstream/riufs/694/4/ImplementingFrameworkCrosscutting.pdf.jpg https://ri.ufs.br/jspui/bitstream/riufs/694/1/ImplementingFrameworkCrosscutting.pdf https://ri.ufs.br/jspui/bitstream/riufs/694/2/license.txt https://ri.ufs.br/jspui/bitstream/riufs/694/3/ImplementingFrameworkCrosscutting.pdf.txt |
bitstream.checksum.fl_str_mv |
a436aa3894ad16478be61b62d593753a 187385d001770ffd3edcca92762d8301 8a4605be74aa9ea9d79846c1fba20a33 4b4ab0bd99342e267e4f61c7f46c1ebe |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFS - Universidade Federal de Sergipe (UFS) |
repository.mail.fl_str_mv |
repositorio@academico.ufs.br |
_version_ |
1802110743591518208 |