Inferência de PSM/PIM e padrões de conceção a partir de código Java
Autor(a) principal: | |
---|---|
Data de Publicação: | 2011 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/1822/27963 |
Resumo: | Dissertação de mestrado em Engenharia de Informática |
id |
RCAP_a0b28aa89c45dab7d3f5abe0b790e051 |
---|---|
oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/27963 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Inferência de PSM/PIM e padrões de conceção a partir de código JavaJavaMDAMDEPadrões de concepçãoPIMPSMUMLDesign patterns681.3.06Dissertação de mestrado em Engenharia de InformáticaDevido ao constante crescimento do número de plataformas e linguagens disponíveis a quem desenvolve software, estamos a atingir elevados níveis de complexidade. Este facto levou à necessidade de criar novas técnicas de desenvolvimento de software que permitam facilitar o processo, abstraindo a complexidade que lhe é subjacente. O Object Management Group (OMG) apresentou ma solução para esse problema definindo a Model Driven Engineering (MDE). A MDE baseia o seu processo de desenvolvimento na definição e transformação de modelos, nomeadamente modelos independentes da computação (CIM), independentes da plataforma (PIM) e dependentes da plataforma (PSM). A Unified Modelling Language (UML) permite a criação de Platform Specific Models (PSM) e Platform Independent Models (PIM), ou até mesmo diagramas mais específicos como diagramas de classe. Alguns anos antes de surgir a MDE, Erich Gamma catalogou um conjunto de formas corretas de produzir software. Estas formas denominam-se padrões de conceção e a sua importância já foi amplamente reconhecida. Estes padrões são úteis não só no desenvolvimento, mas também no processo de análise de software. Baseado em programas Java, apresenta-se neste documento a viabilidade de abstrair código fonte em modelos do MDE. O código será transformado em diagramas PIM e PSM, nos quais serão inferidos Design Patterns (ou padrões de conceção). Para tal será especificada uma ferramenta que pretende disponibilizar essas funcionalidades. Implementada sob a forma de plugin, baseia-se no mapeamento de informação num meta-modelo como representação intermédia da informação. Posteriormente, disponibiliza a abstração de informação por transformação de modelos PSM em PIM com base nessa representação. A inferência de padrões é possível devido à representação de informação contida no meta-modelo em factos Prolog, que serão a base para o processo de pesquisa de padrões. Esta ferramenta de engenharia reversa permite que o processo seja iniciado em código fonte (e não em modelos, como descrito pelo MDE).Due to the constant increase in the number of platforms and languages available to software developers, we are reaching high levels of complexity. To abstract the complexity that underlies it, the development of new techniques is needed. A solution to this problem was presented by the Object Management Group (OMG) by specifying the Model Driven Engineering (MDE). The MDE bases its development process in models de nition and transformation, speci cally Computation Independent Models (CIM), Platform Independent Models (PIM) and Platform Speci c Models (PSM). The Uni ed Model Language (UML) allows to create Platform Speci c Models (PSM) and Platform Independent Models (PIM), or even more speci c diagrams as class diagrams. Some years before the MDE appearance, Erich Gamma et al. catalogued a set of good practices to produce software. These means are called design patterns, and its importance has already been widely recognized. These patterns are not only useful in software developing, but also in the software analysis process. Based on Java programs, this document presents the feasibility to transform source code on MDE models. This code will be transformed into PIM and PSM diagrams, in which will be inferred design patterns. As such, a tool which implements these functionalities will be speci ed. Implemented as a plugin, it maps the information on a metamodel to obtain an intermediate information representation. Based on that representation it provides information abstraction, by transforming PSM on PIM models. The design patterns inference is possible due to the representation of information contained in the metamodel as Prolog facts, which will be the basis for the design pattern search. Being a reverse engineering process, it allows the process to be started from the source code (and not in models, as predicted by MDE).Ribeiro, António NestorUniversidade do MinhoCouto, Rui2011-12-062011-12-06T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/1822/27963porinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-05-11T07:32:04Zoai:repositorium.sdum.uminho.pt:1822/27963Portal AgregadorONGhttps://www.rcaap.pt/oai/openairemluisa.alvim@gmail.comopendoar:71602024-05-11T07:32:04Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
title |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
spellingShingle |
Inferência de PSM/PIM e padrões de conceção a partir de código Java Couto, Rui Java MDA MDE Padrões de concepção PIM PSM UML Design patterns 681.3.06 |
title_short |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
title_full |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
title_fullStr |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
title_full_unstemmed |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
title_sort |
Inferência de PSM/PIM e padrões de conceção a partir de código Java |
author |
Couto, Rui |
author_facet |
Couto, Rui |
author_role |
author |
dc.contributor.none.fl_str_mv |
Ribeiro, António Nestor Universidade do Minho |
dc.contributor.author.fl_str_mv |
Couto, Rui |
dc.subject.por.fl_str_mv |
Java MDA MDE Padrões de concepção PIM PSM UML Design patterns 681.3.06 |
topic |
Java MDA MDE Padrões de concepção PIM PSM UML Design patterns 681.3.06 |
description |
Dissertação de mestrado em Engenharia de Informática |
publishDate |
2011 |
dc.date.none.fl_str_mv |
2011-12-06 2011-12-06T00:00:00Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1822/27963 |
url |
http://hdl.handle.net/1822/27963 |
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.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
mluisa.alvim@gmail.com |
_version_ |
1817545350320226304 |