Arquitetura evolutiva e design emergente

Detalhes bibliográficos
Autor(a) principal: Santaguida, Michael
Data de Publicação: 2010
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da PUC_SP
Texto Completo: https://repositorio.pucsp.br/jspui/handle/handle/36678
Resumo: The development of a software system architecture that is flexible to changes, at first, might seem like a complicated task. The reason is because decisions related to architecture are amongst the most crucial in a system software project, where a change of non-functional requirements during the project can generate large impacts. The purpose of this monograph is to show that you can develop an evolutionary architecture, able to meet the changes that arise during the project, by developing a design quality that makes the impact of change minimal. This monograph is divided as follows: In chapter 1, System Architecture will be addressed by showing what it is and its evolution from traditional to evolutionary architecture. In chapter 2, a better explanation of what an emerging design is with some examples will be given. In chapter 3, the following code qualities will be explained; encapsulation, cohesion, coupling, redundancy, readability and testability. Its importance to the system code will also be explained along with some examples. In chapter 4, some principles of software design and how it improves its quality will be shown along with some examples. In chapter 5, design patterns will be analyzed in terms of what they are, its benefits and how to implement them together along with some examples. In chapter 6, the techniques for Test-Driven Development will be shown along with a step-by-step explanation of how to use it and its benefits for an emergent design. To finalize, in chapter 7, the techniques of refactoring, which allows changes to the code with quality problems to a good quality code without affecting the external behavior system, will be shown and explained
id PUC_SP-1_89c615274b43fd3181678bb4226e7785
oai_identifier_str oai:repositorio.pucsp.br:handle/36678
network_acronym_str PUC_SP-1
network_name_str Biblioteca Digital de Teses e Dissertações da PUC_SP
repository_id_str
spelling Papo, José Paulo LevandovskiSantaguida, Michael2023-07-28T20:48:38Z2023-07-28T20:48:38Z2010-12-16Santaguida, Michael. Arquitetura evolutiva e design emergente. 2010. Monografia de Especialização (Especialização em Engenharia de Software) - Faculdade de Ciências Exatas e Tecnologia da Pontifícia Universidade Católica de São Paulo, São Paulo, 2010.https://repositorio.pucsp.br/jspui/handle/handle/36678The development of a software system architecture that is flexible to changes, at first, might seem like a complicated task. The reason is because decisions related to architecture are amongst the most crucial in a system software project, where a change of non-functional requirements during the project can generate large impacts. The purpose of this monograph is to show that you can develop an evolutionary architecture, able to meet the changes that arise during the project, by developing a design quality that makes the impact of change minimal. This monograph is divided as follows: In chapter 1, System Architecture will be addressed by showing what it is and its evolution from traditional to evolutionary architecture. In chapter 2, a better explanation of what an emerging design is with some examples will be given. In chapter 3, the following code qualities will be explained; encapsulation, cohesion, coupling, redundancy, readability and testability. Its importance to the system code will also be explained along with some examples. In chapter 4, some principles of software design and how it improves its quality will be shown along with some examples. In chapter 5, design patterns will be analyzed in terms of what they are, its benefits and how to implement them together along with some examples. In chapter 6, the techniques for Test-Driven Development will be shown along with a step-by-step explanation of how to use it and its benefits for an emergent design. To finalize, in chapter 7, the techniques of refactoring, which allows changes to the code with quality problems to a good quality code without affecting the external behavior system, will be shown and explainedO desenvolvimento de uma arquitetura de sistema de software que seja flexível a mudanças, a princípio pode parecer uma tarefa complicada, pois as decisões relacionadas à arquitetura estão entre as mais cruciais em um projeto de sistema de software, onde uma mudança de requisitos não-funcionais durante o projeto pode gerar grandes impactos. O objetivo desta monografia é mostrar que é possível desenvolver uma arquitetura evolutiva, capaz de atender as mudanças que surgem no decorrer do projeto, através da elaboração de um design de qualidade, que faça com que o impacto das mudanças seja mínimo. A monografia está divida da seguinte maneira: no capítulo 1 será abordada arquitetura de sistema, o que é arquitetura de sistema, e a evolução da arquitetura de sistema de como é tradicionalmente para uma arquitetura evolutiva. No capítulo 2, será explicado melhor o que é um design emergente com alguns exemplos. No capítulo 3, serão explicadas as qualidades de código: encapsulamento, coesão, acoplamento, redundância, legibilidade e testabilidade; será explicada a importância destas qualidades no código do sistema, juntamente com alguns exemplos. No capítulo 4, serão mostrados alguns princípios de design de software, que permitem melhorar a qualidade do design do sistema, juntamente com alguns exemplos. No capítulo 5, serão mostrados os design patterns, o que são, quais os seus benefícios, como implementá-los, juntamente com alguns exemplos. No capítulo 6, será mostrado à técnica de Test-Driven Development, como utilizá-la passo-a-passo com exemplo, e seus benefícios para um design emergente. E para finalizar, no capítulo 7, serão mostradas as técnicas de refatoração, que permitem modificar um código com problemas de qualidade para um código de qualidade sem afetar o comportamento externo do sistemaporPontifícia Universidade Católica de São PauloEspecialização em Engenharia de SoftwarePUC-SPBrasilFaculdade de Ciências Exatas e TecnologiaCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWAREArquitetura evolutiva e design emergenteinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da PUC_SPinstname:Pontifícia Universidade Católica de São Paulo (PUC-SP)instacron:PUC_SPORIGINALMICHAEL SANTAGUIDA.pdfapplication/pdf439822https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/1/MICHAEL%20SANTAGUIDA.pdffc4f045cacf073e0c8237f9458fca059MD51TEXTMICHAEL SANTAGUIDA.pdf.txtMICHAEL SANTAGUIDA.pdf.txtExtracted texttext/plain111505https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/2/MICHAEL%20SANTAGUIDA.pdf.txt99a6cd01c4e69621fd7bde690c01349bMD52THUMBNAILMICHAEL SANTAGUIDA.pdf.jpgMICHAEL SANTAGUIDA.pdf.jpgGenerated Thumbnailimage/jpeg1213https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/3/MICHAEL%20SANTAGUIDA.pdf.jpg7eee7ab1b452d4d766d058d2bed78101MD53handle/366782023-09-18 12:24:17.608oai:repositorio.pucsp.br:handle/36678Biblioteca Digital de Teses e Dissertaçõeshttps://sapientia.pucsp.br/https://sapientia.pucsp.br/oai/requestbngkatende@pucsp.br||rapassi@pucsp.bropendoar:2023-09-18T15:24:17Biblioteca Digital de Teses e Dissertações da PUC_SP - Pontifícia Universidade Católica de São Paulo (PUC-SP)false
dc.title.pt_BR.fl_str_mv Arquitetura evolutiva e design emergente
title Arquitetura evolutiva e design emergente
spellingShingle Arquitetura evolutiva e design emergente
Santaguida, Michael
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
title_short Arquitetura evolutiva e design emergente
title_full Arquitetura evolutiva e design emergente
title_fullStr Arquitetura evolutiva e design emergente
title_full_unstemmed Arquitetura evolutiva e design emergente
title_sort Arquitetura evolutiva e design emergente
author Santaguida, Michael
author_facet Santaguida, Michael
author_role author
dc.contributor.advisor1.fl_str_mv Papo, José Paulo Levandovski
dc.contributor.author.fl_str_mv Santaguida, Michael
contributor_str_mv Papo, José Paulo Levandovski
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
description The development of a software system architecture that is flexible to changes, at first, might seem like a complicated task. The reason is because decisions related to architecture are amongst the most crucial in a system software project, where a change of non-functional requirements during the project can generate large impacts. The purpose of this monograph is to show that you can develop an evolutionary architecture, able to meet the changes that arise during the project, by developing a design quality that makes the impact of change minimal. This monograph is divided as follows: In chapter 1, System Architecture will be addressed by showing what it is and its evolution from traditional to evolutionary architecture. In chapter 2, a better explanation of what an emerging design is with some examples will be given. In chapter 3, the following code qualities will be explained; encapsulation, cohesion, coupling, redundancy, readability and testability. Its importance to the system code will also be explained along with some examples. In chapter 4, some principles of software design and how it improves its quality will be shown along with some examples. In chapter 5, design patterns will be analyzed in terms of what they are, its benefits and how to implement them together along with some examples. In chapter 6, the techniques for Test-Driven Development will be shown along with a step-by-step explanation of how to use it and its benefits for an emergent design. To finalize, in chapter 7, the techniques of refactoring, which allows changes to the code with quality problems to a good quality code without affecting the external behavior system, will be shown and explained
publishDate 2010
dc.date.issued.fl_str_mv 2010-12-16
dc.date.accessioned.fl_str_mv 2023-07-28T20:48:38Z
dc.date.available.fl_str_mv 2023-07-28T20:48:38Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv Santaguida, Michael. Arquitetura evolutiva e design emergente. 2010. Monografia de Especialização (Especialização em Engenharia de Software) - Faculdade de Ciências Exatas e Tecnologia da Pontifícia Universidade Católica de São Paulo, São Paulo, 2010.
dc.identifier.uri.fl_str_mv https://repositorio.pucsp.br/jspui/handle/handle/36678
identifier_str_mv Santaguida, Michael. Arquitetura evolutiva e design emergente. 2010. Monografia de Especialização (Especialização em Engenharia de Software) - Faculdade de Ciências Exatas e Tecnologia da Pontifícia Universidade Católica de São Paulo, São Paulo, 2010.
url https://repositorio.pucsp.br/jspui/handle/handle/36678
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Pontifícia Universidade Católica de São Paulo
dc.publisher.program.fl_str_mv Especialização em Engenharia de Software
dc.publisher.initials.fl_str_mv PUC-SP
dc.publisher.country.fl_str_mv Brasil
dc.publisher.department.fl_str_mv Faculdade de Ciências Exatas e Tecnologia
publisher.none.fl_str_mv Pontifícia Universidade Católica de São Paulo
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da PUC_SP
instname:Pontifícia Universidade Católica de São Paulo (PUC-SP)
instacron:PUC_SP
instname_str Pontifícia Universidade Católica de São Paulo (PUC-SP)
instacron_str PUC_SP
institution PUC_SP
reponame_str Biblioteca Digital de Teses e Dissertações da PUC_SP
collection Biblioteca Digital de Teses e Dissertações da PUC_SP
bitstream.url.fl_str_mv https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/1/MICHAEL%20SANTAGUIDA.pdf
https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/2/MICHAEL%20SANTAGUIDA.pdf.txt
https://repositorio.pucsp.br/xmlui/bitstream/handle/36678/3/MICHAEL%20SANTAGUIDA.pdf.jpg
bitstream.checksum.fl_str_mv fc4f045cacf073e0c8237f9458fca059
99a6cd01c4e69621fd7bde690c01349b
7eee7ab1b452d4d766d058d2bed78101
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da PUC_SP - Pontifícia Universidade Católica de São Paulo (PUC-SP)
repository.mail.fl_str_mv bngkatende@pucsp.br||rapassi@pucsp.br
_version_ 1809277816326324224