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...
| Autores: | , |
|---|---|
| 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 |