Improving design and implementation of OO container-like component libraries

Object-oriented design is usually driven by three main reusability principles: step-by-step design, design for reuse and design with reuse. However, these principles tend to be just partially applied to the subsequent object-oriented implementation, often because they conflict with other quality cri...

ver descrição completa

Detalhes bibliográficos
Autores: Marco Gómez, Jordi|||0000-0002-0078-7929, Franch Gutiérrez, Javier|||0000-0001-9733-8830
Formato: informe técnico
Fecha de publicación:2002
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/97506
Acesso em linha:https://hdl.handle.net/2117/97506
Access Level:acceso abierto
Palavra-chave:Object-oriented design
OO
Container-like component libraries
Àrees temàtiques de la UPC::Informàtica
id ES_ceaf2ca2a5763a9bbc2d07ad1ec1a0ef
oai_identifier_str oai:upcommons.upc.edu:2117/97506
network_acronym_str ES
network_name_str España
repository_id_str
spelling Improving design and implementation of OO container-like component librariesMarco Gómez, Jordi|||0000-0002-0078-7929Franch Gutiérrez, Javier|||0000-0001-9733-8830Object-oriented designOOContainer-like component librariesÀrees temàtiques de la UPC::InformàticaObject-oriented design is usually driven by three main reusability principles: step-by-step design, design for reuse and design with reuse. However, these principles tend to be just partially applied to the subsequent object-oriented implementation, often because they conflict with other quality criteria (remarkably, efficiency). So, there is a gap between design and implementation: due to these conflicts developers use to give up design level abstractions during the implementation. In this paper we present a framework for bridging this gap for a concrete domain, the design and implementation of object-oriented container-like component libraries, such as JCF, STL, Booch Components, LEDA, etc. At the core of the framework we propose a new design pattern called emph{Shortcut} together with its corresponding implementation. The Shortcut pattern, introduced in a generic base class container, provides a secure and efficient access to items in a container decoupled from the implementation details of concrete containers. Shortcut enhances applying the same principles that drive the design process to the implementation process of these libraries: step-by-step implementation, implementation with reuse and implementation for reuse without penalising other quality criteria. Our framework not only supports the design and implementation of new libraries but also the reengineering of existing ones to overcome some of their drawbacks. We show by a case study, reengineering the Booch Components in Ada95, the application and benefits of our framework.20022002-05-0120162016-11-30reporthttp://purl.org/coar/resource_type/c_93fcVoRhttp://purl.org/coar/version/c_970fb48d4fbd8a85info:eu-repo/semantics/reportapplication/pdfhttps://hdl.handle.net/2117/97506reponame:UPCommons. Portal del coneixement obert de la UPCinstname:Universitat Politècnica de Catalunya (UPC)Inglésengopen accesshttp://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessoai:upcommons.upc.edu:2117/975062026-05-27T15:37:01Z
dc.title.none.fl_str_mv Improving design and implementation of OO container-like component libraries
title Improving design and implementation of OO container-like component libraries
spellingShingle Improving design and implementation of OO container-like component libraries
Marco Gómez, Jordi|||0000-0002-0078-7929
Object-oriented design
OO
Container-like component libraries
Àrees temàtiques de la UPC::Informàtica
title_short Improving design and implementation of OO container-like component libraries
title_full Improving design and implementation of OO container-like component libraries
title_fullStr Improving design and implementation of OO container-like component libraries
title_full_unstemmed Improving design and implementation of OO container-like component libraries
title_sort Improving design and implementation of OO container-like component libraries
dc.creator.none.fl_str_mv Marco Gómez, Jordi|||0000-0002-0078-7929
Franch Gutiérrez, Javier|||0000-0001-9733-8830
author Marco Gómez, Jordi|||0000-0002-0078-7929
author_facet Marco Gómez, Jordi|||0000-0002-0078-7929
Franch Gutiérrez, Javier|||0000-0001-9733-8830
author_role author
author2 Franch Gutiérrez, Javier|||0000-0001-9733-8830
author2_role author
dc.subject.none.fl_str_mv Object-oriented design
OO
Container-like component libraries
Àrees temàtiques de la UPC::Informàtica
topic Object-oriented design
OO
Container-like component libraries
Àrees temàtiques de la UPC::Informàtica
description Object-oriented design is usually driven by three main reusability principles: step-by-step design, design for reuse and design with reuse. However, these principles tend to be just partially applied to the subsequent object-oriented implementation, often because they conflict with other quality criteria (remarkably, efficiency). So, there is a gap between design and implementation: due to these conflicts developers use to give up design level abstractions during the implementation. In this paper we present a framework for bridging this gap for a concrete domain, the design and implementation of object-oriented container-like component libraries, such as JCF, STL, Booch Components, LEDA, etc. At the core of the framework we propose a new design pattern called emph{Shortcut} together with its corresponding implementation. The Shortcut pattern, introduced in a generic base class container, provides a secure and efficient access to items in a container decoupled from the implementation details of concrete containers. Shortcut enhances applying the same principles that drive the design process to the implementation process of these libraries: step-by-step implementation, implementation with reuse and implementation for reuse without penalising other quality criteria. Our framework not only supports the design and implementation of new libraries but also the reengineering of existing ones to overcome some of their drawbacks. We show by a case study, reengineering the Booch Components in Ada95, the application and benefits of our framework.
publishDate 2002
dc.date.none.fl_str_mv 2002
2002-05-01
2016
2016-11-30
dc.type.none.fl_str_mv report
http://purl.org/coar/resource_type/c_93fc
VoR
http://purl.org/coar/version/c_970fb48d4fbd8a85
dc.type.openaire.fl_str_mv info:eu-repo/semantics/report
format report
dc.identifier.none.fl_str_mv https://hdl.handle.net/2117/97506
url https://hdl.handle.net/2117/97506
dc.language.none.fl_str_mv Inglés
eng
language_invalid_str_mv Inglés
language eng
dc.rights.none.fl_str_mv open access
http://purl.org/coar/access_right/c_abf2
dc.rights.openaire.fl_str_mv info:eu-repo/semantics/openAccess
rights_invalid_str_mv open access
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:UPCommons. Portal del coneixement obert de la UPC
instname:Universitat Politècnica de Catalunya (UPC)
instname_str Universitat Politècnica de Catalunya (UPC)
reponame_str UPCommons. Portal del coneixement obert de la UPC
collection UPCommons. Portal del coneixement obert de la UPC
repository.name.fl_str_mv
repository.mail.fl_str_mv
_version_ 1869420013221314560
score 15,300724