Design patterns as aspects: a quantitative assessment

Detalhes bibliográficos
Autor(a) principal: Sant'Anna,Cláudio
Data de Publicação: 2004
Outros Autores: Garcia,Alessandro, Kulesza,Uirá, Lucena,Carlos, Staa,Arndt von
Tipo de documento: Artigo
Idioma: eng
Título da fonte: Journal of the Brazilian Computer Society
Texto Completo: http://old.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002004000300004
Resumo: Design patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortunately, object-oriented (OO) abstractions are often not able to modularize those crosscutting concerns, which in turn decrease the system reusability and maintainability. Hence, it is important verifying whether aspect-oriented approaches support improved modularization of crosscutting concerns relative to design patterns. Ideally, quantitative studies should be performed to compare object-oriented and aspect-oriented implementations of classical patterns with respect to important software engineering attributes, such as coupling and cohesion. This paper presents a quantitative study that compares aspect-based and OO solutions for a representative set of design patterns. We have used stringent software engineering attributes as the assessment criteria. We have found that most aspect-oriented solutions improve separation of pattern-related concerns, although some aspect-oriented implementations of specific patterns resulted in higher coupling and more lines of code.
id UFRGS-28_d554c61d6299e78ec0771a87eebd5703
oai_identifier_str oai:scielo:S0104-65002004000300004
network_acronym_str UFRGS-28
network_name_str Journal of the Brazilian Computer Society
repository_id_str
spelling Design patterns as aspects: a quantitative assessmentDesign patternsaspect-oriented programmingmetricsDesign patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortunately, object-oriented (OO) abstractions are often not able to modularize those crosscutting concerns, which in turn decrease the system reusability and maintainability. Hence, it is important verifying whether aspect-oriented approaches support improved modularization of crosscutting concerns relative to design patterns. Ideally, quantitative studies should be performed to compare object-oriented and aspect-oriented implementations of classical patterns with respect to important software engineering attributes, such as coupling and cohesion. This paper presents a quantitative study that compares aspect-based and OO solutions for a representative set of design patterns. We have used stringent software engineering attributes as the assessment criteria. We have found that most aspect-oriented solutions improve separation of pattern-related concerns, although some aspect-oriented implementations of specific patterns resulted in higher coupling and more lines of code.Sociedade Brasileira de Computação2004-11-01info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersiontext/htmlhttp://old.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002004000300004Journal of the Brazilian Computer Society v.10 n.2 2004reponame:Journal of the Brazilian Computer Societyinstname:Sociedade Brasileira de Computação (SBC)instacron:UFRGS10.1590/S0104-65002004000300004info:eu-repo/semantics/openAccessSant'Anna,CláudioGarcia,AlessandroKulesza,UiráLucena,CarlosStaa,Arndt voneng2010-05-21T00:00:00Zoai:scielo:S0104-65002004000300004Revistahttps://journal-bcs.springeropen.com/PUBhttps://old.scielo.br/oai/scielo-oai.phpjbcs@icmc.sc.usp.br1678-48040104-6500opendoar:2010-05-21T00:00Journal of the Brazilian Computer Society - Sociedade Brasileira de Computação (SBC)false
dc.title.none.fl_str_mv Design patterns as aspects: a quantitative assessment
title Design patterns as aspects: a quantitative assessment
spellingShingle Design patterns as aspects: a quantitative assessment
Sant'Anna,Cláudio
Design patterns
aspect-oriented programming
metrics
title_short Design patterns as aspects: a quantitative assessment
title_full Design patterns as aspects: a quantitative assessment
title_fullStr Design patterns as aspects: a quantitative assessment
title_full_unstemmed Design patterns as aspects: a quantitative assessment
title_sort Design patterns as aspects: a quantitative assessment
author Sant'Anna,Cláudio
author_facet Sant'Anna,Cláudio
Garcia,Alessandro
Kulesza,Uirá
Lucena,Carlos
Staa,Arndt von
author_role author
author2 Garcia,Alessandro
Kulesza,Uirá
Lucena,Carlos
Staa,Arndt von
author2_role author
author
author
author
dc.contributor.author.fl_str_mv Sant'Anna,Cláudio
Garcia,Alessandro
Kulesza,Uirá
Lucena,Carlos
Staa,Arndt von
dc.subject.por.fl_str_mv Design patterns
aspect-oriented programming
metrics
topic Design patterns
aspect-oriented programming
metrics
description Design patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortunately, object-oriented (OO) abstractions are often not able to modularize those crosscutting concerns, which in turn decrease the system reusability and maintainability. Hence, it is important verifying whether aspect-oriented approaches support improved modularization of crosscutting concerns relative to design patterns. Ideally, quantitative studies should be performed to compare object-oriented and aspect-oriented implementations of classical patterns with respect to important software engineering attributes, such as coupling and cohesion. This paper presents a quantitative study that compares aspect-based and OO solutions for a representative set of design patterns. We have used stringent software engineering attributes as the assessment criteria. We have found that most aspect-oriented solutions improve separation of pattern-related concerns, although some aspect-oriented implementations of specific patterns resulted in higher coupling and more lines of code.
publishDate 2004
dc.date.none.fl_str_mv 2004-11-01
dc.type.driver.fl_str_mv info:eu-repo/semantics/article
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
format article
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://old.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002004000300004
url http://old.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002004000300004
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv 10.1590/S0104-65002004000300004
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv text/html
dc.publisher.none.fl_str_mv Sociedade Brasileira de Computação
publisher.none.fl_str_mv Sociedade Brasileira de Computação
dc.source.none.fl_str_mv Journal of the Brazilian Computer Society v.10 n.2 2004
reponame:Journal of the Brazilian Computer Society
instname:Sociedade Brasileira de Computação (SBC)
instacron:UFRGS
instname_str Sociedade Brasileira de Computação (SBC)
instacron_str UFRGS
institution UFRGS
reponame_str Journal of the Brazilian Computer Society
collection Journal of the Brazilian Computer Society
repository.name.fl_str_mv Journal of the Brazilian Computer Society - Sociedade Brasileira de Computação (SBC)
repository.mail.fl_str_mv jbcs@icmc.sc.usp.br
_version_ 1754734669877739520