Arquitetura evolutiva e design emergente
Autor(a) principal: | |
---|---|
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 |