Spelling suggestions: "subject:"engenharia dde 8oftware."" "subject:"engenharia dde 5oftware.""
171 |
Estratégia para especificação e geração de casos de teste a partir de modelos UMLPeralta, Karine de Pinho January 2009 (has links)
Made available in DSpace on 2013-08-07T18:42:50Z (GMT). No. of bitstreams: 1
000410387-Texto+Completo-0.pdf: 1737512 bytes, checksum: be615bfd6c76a20642c89fd02bd4c48e (MD5)
Previous issue date: 2009 / Due to the evolution of computer systems and the services provided by the Internet, software engineers are concerned about the security of the softwares they develop. The traffic of confidential data through the Internet is increasing, making essential the security evaluation of the systems before deploying them to the final users. However, a short period of time is dedicated to evaluate this characteristic during the test phase, resulting in an unsafe software. It is not trivial to evaluate the security level of an application. This aspect must be considered since the design phase, when the model is still being elaborated. The problem is the lack of security information available, either in the models, which have limitations to represent this aspect, or in the documents, tools and checklists, which do not explain clearly how to conduct the security tests. In this context, a new approach is becoming popular, known as model-based testing. The goal of this technique is to generate test cases by extracting specific information from a model, accordingly to the aspects that must be tested. Several works propose models to represent various aspects, such as functional or performance issues, but only a few of them are related to describing security characteristics. Therefore, this work presents a set of UML stereotypes to specify some behaviors that may compromise software security, as well as an algorithm that analyzes the model and generates test cases. The use of the stereotypes allows the software engineer to annotate parts of the model that may contain vulnerabilities, and the test cases indicates to the tester the steps that must be performed to verify the occurrence of the vulnerabilities on the final software. This work has two main goals: to assist developers during the implementation process, emphasizing the functionalities that must be developed carefully; and, to allow the test case generation based on the security information provided by the model. / Com a expansão dos sistemas computacionais e com a popularização dos serviços providos pela Internet, é crescente a preocupação dos engenheiros de software com a segurança dos sistemas que desenvolvem. O volume de informações confidenciais que trafega pela Internet é cada vez maior, tornando essencial a avaliação de segurança destes sistemas antes de entregá-los a seus usuários. Entretanto, o tempo que dedicam em seus projetos à realização de testes para avaliar este aspecto é pequeno, fazendo com que softwares inseguros sejam liberados no mercado. Verificar o nível de segurança de um software não é trivial. É preciso considerar este aspecto desde a fase de projeto do sistema, quando o modelo ainda está sendo elaborado. Uma limitação é a deficiência existente na área de segurança, seja em relação aos modelos, que provêem poucas estruturas para representar este aspecto, ou à pouca quantidade de ferramentas, documentos e checklists explicando como conduzir a execução de testes de segurança. Neste contexto, vem se tornando popular uma técnica conhecida como teste baseado em modelos. Nesta, os testes a serem realizados são definidos automaticamente a partir do modelo da aplicação, de acordo com os aspectos desejados. Diversos trabalhos propõem modelos para especificar os mais variados requisitos, como funcionais e de desempenho, mas poucos se dedicam a definir uma forma de descrever aspectos de segurança. Sendo assim, este trabalho propõe alguns estereótipos UML para especificar situações que podem comprometer a segurança de um software, além de um algoritmo que analisa estes e gera, automaticamente, casos de teste a partir do modelo. Desta forma, é possível assinalar, através da inserção de estereótipos no modelo, partes do sistema que podem conter vulnerabilidades, e, posteriormente, executar os casos gerados para verificar a ocorrência destas no software final. A elaboração deste trabalho tem dois objetivos principais: auxiliar durante a fase de implementação do software, prevendo situações que possam comprometer sua segurança e orientando os desenvolvedores, e permitir a geração automatizada de casos de teste de segurança a partir das informações inseridas.
|
172 |
Composição de UML ProfilesOliveira, Kleinner Silva Farias de January 2008 (has links)
Made available in DSpace on 2013-08-07T18:42:52Z (GMT). No. of bitstreams: 1
000404134-Texto+Completo-0.pdf: 1945170 bytes, checksum: b8a0273e017edb542534fd86a3d269e2 (MD5)
Previous issue date: 2008 / With the success of Model Driven Architecture (MDA) and Unified Modeling Language (UML), models are replacing code as the first software development artifact. In MDA, model transformation and model composition are essential activities. While model transformation has been well researched and documented, model composition needs more investigation. With MDA arise three challenges, such as: (i ) create domain specific modeling languages (DSMLs); (ii ) merge DSML; and (iii ) merge models expressed in DSML. The UML allows building DSML through UML profiles, however it does not provide an adequate mechanism to merge such profiles. With this in mind, this work proposes a UML profiles composition mechanism based on merge rules, model transformation rules, composition strategy, match strategy and match rules. A formalization of this mechanism was built using the Alloy formal language and automatic analysis were accomplished using Alloy Analyzer. Moreover, a model composition tool was developed to evaluate the mechanism and automate the approach. / Com o sucesso da MDA (Model Driven Architecture) e da UML (Unified Modeling Language), modelos estão substituindo código como o principal artefato de desenvolvimento de software. Em MDA, a transformação e a composição de modelos são duas atividades essenciais. Enquanto a transformação de modelos tem sido amplamente pesquisada e documentada, a composição de modelos precisa de mais investigação. Com a MDA, surgiram três desafios: (i) criar linguagens de modelagem específicas de domínios (DSML); (ii) compor DSML; (iii) compor modelos representados em DSML. A UML permite a construção de DSML através de UML profiles, porém não oferece um mecanismo adequado para tais profiles. Neste contexto, o presente trabalho apresenta uma proposta de mecanismo de composição de UML profiles fundamentado em regras de composição, regras de transformação de modelos, estratégias de composição, estratégia de comparação e regras de comparação. Um modelo formal deste mecanismo foi construído utilizando a linguagem de modelagem formal Alloy e foi realizada uma análise automática do modelo usando Alloy Analyzer. Além disso, uma ferramenta de software foi construída com o objetivo de validar o mecanismo e automatizar a abordagem.
|
173 |
Geração automatizada de drivers e stubs de teste para JUnit a partir de especificações U2TPBiasi, Luciano Bathaglini January 2006 (has links)
Made available in DSpace on 2013-08-07T18:43:37Z (GMT). No. of bitstreams: 1
000385483-Texto+Completo-0.pdf: 2471627 bytes, checksum: 6a2f88757540ea12d03ab54d46886186 (MD5)
Previous issue date: 2006 / Testing has become essential to assure the quality of software products. Within the process test, unit test is performed on the smallest funcional part of the software and it aims at discovering defects in these units. JUnit is a unit test tool, which assists developers in the automation of tests and verification of results. However, much time, cost and effort are still spent to codify drivers and stubs, which most of the time jeopardizes its use. Another problem found in the unit test is the need of cases test specification in a higher level language, which is independent of any specific programming language. The Test Profile of UML 2. 0 (U2TP) solves this problem, because it allows to represent and document all artifacts used in the test process. This work aims at the fully automated generation of test drivers and stubs for JUnit from U2TP test specifications. A case study has shown that the developed algorithms correctly generated all test code, considering all elements explored in this work. The main goal of the case study was the validation of the correctness of the generated code, as well as the quantitative analysis of time consumed and number of code lines generated. / Atualmente a área de teste de software tem se tornado fundamental para garantia da qualidade dos produtos desenvolvidos. Dentro do processo de teste, o teste unitário é realizado na menor parte funcional de um software e visa descobrir defeitos nestas unidades. JUnit é uma ferramenta de apoio ao teste unitário, a qual auxilia desenvolvedores na automação dos testes e verificação dos resultados. Porém, muito tempo, custo e esforço ainda são gastos para codificar os drivers e os stubs de teste necessários a esta ferramenta, o que muitas vezes inviabiliza o seu uso. Outro problema encontrado no processo de teste unitário é a necessidade de especificação dos casos de teste em uma linguagem de mais alto nível, que seja independente de linguagem de programação. O Perfil de Teste da UML 2. 0 (U2TP) resolve este problema, pois permite representar e documentar todos artefatos utilizados no processo de teste. Esta dissertação de mestrado tem por objetivo a geração totalmente automatizada de drivers e stubs de teste para ferramenta JUnit a partir de especificações de testes modeladas com a U2TP. Um estudo de caso mostrou que os algoritmos propostos geraram corretamente todo código de teste para todos elementos explorados neste trabalho. O estudo de caso teve como principais objetivos a validação correta do código gerado, bem como uma análise quantitativa em relação ao tempo envolvido e número de linhas de código geradas.
|
174 |
Linha de produtos de testes baseados em modelosOrozco, Alex Mulattieri Suarez January 2009 (has links)
Made available in DSpace on 2013-08-07T18:43:20Z (GMT). No. of bitstreams: 1
000412371-Texto+Completo-0.pdf: 1987061 bytes, checksum: d365ca0a7a380c98bc88e9ecf3a221d1 (MD5)
Previous issue date: 2009 / The continuing evolution of software development methodologies results in challenges emerging simultaneously with this advance. One of these challenges is how to guarantee the quality of software. Several researchers continuously develop different approaches for software testing following this evolution. One approach that aims to provide the increased quality is through model-based testing. There are various techniques of model-based software testing, ensuring a broad range of possibilities. One way to integrate these possibilities is applying the concepts of software product lines. In this work we propose the design of a software product line architecture to integrate the different techniques of model-based software testing. / Com a evolução das metodologias de desenvolvimento de software, novos desafios vão surgindo junto com este avanço. Um dos desafios fica a cargo de como garantir a qualidade do software desenvolvido. Diversos pesquisadores desenvolvem continuamente diversas abordagens de teste de software para acompanhar esta evolução. Uma das abordagens que visa prover o aumento da qualidade é através de testes de software baseados em modelos. Existem diversas formas de realização de testes de software baseados em modelos, garantindo um amplo leque de possibilidades. Uma forma de integrar estas possibilidades é através da aplicação dos conceitos de linha de produtos de software. Este trabalho propõe a realização de uma arquitetura de linha de produtos de software para integrar as diferentes técnicas de testes baseados em modelos.
|
175 |
Proposta de integração RUP + PMBOK na gerência de escopo no processo de desenvolvimento de softwareGomes, André Luís Sanson January 2009 (has links)
Made available in DSpace on 2013-08-07T18:43:21Z (GMT). No. of bitstreams: 1
000444180-Texto+Completo-0.pdf: 9406851 bytes, checksum: a31a0ed68333730c028c25e41a222310 (MD5)
Previous issue date: 2009 / Software organizations of development are always searching to increase the product quality of software, for that is necessary that the processes well are defined and can be controlled. However, some difficulties are found as: processes directed total toward the productive activity and with little or no management activity, bad the management of projects or absence of management, not attendance the expectation of the involved ones. These processes must allow a methodology of management of projects that describes the activities important to all to assure the quality of the project with one, including the product and the process. In this context, this research considers an integrated process using a methodology of management of projects and a process of development of software in the area of target management. Contributing so that management and productive activities are executed of integrated form and using the area of target management to determine correctly as these activities they must be developed in the project in order to produce the foreseen deliveries. Like this, the process is presented and a use example, so that it can assist the managers in the taking of decision and planning, execution and control of the projects. / As organizações de desenvolvimento de software estão sempre buscando aumentar a qualidade dos produtos de software, para isto é necessário que os processos sejam bem definidos e possam ser controlados. Entretanto, algumas dificuldades são encontradas como: processos voltados totalmente para a atividade produtiva e com pouco ou nenhuma atividade gerencial, má gerência de projetos ou ausência de gerência, não atendimento a expectativa dos envolvidos. Estes processos devem permitir uma metodologia de gerência de projetos, que descreva as atividades importantes para garantir a qualidade do projeto com um todo, incluindo o produto e o processo. Neste contexto, esta pesquisa propõe um processo integrado utilizando uma metodologia de gerência de projetos e um processo de desenvolvimento de software na área de gerenciamento de escopo. Contribuindo para que atividades gerenciais e produtivas sejam executadas de forma integrada e utilizando a área de gerenciamento de escopo para determinar corretamente como estas atividades devem ser desenvolvidas no projeto de modo a se produzir as entregas previstas. Assim, apresenta-se o processo e um exemplo de uso, para que possa auxiliar os gestores na tomada de decisão e planejamento, execução e controle dos projetos.
|
176 |
Uma abordagem orientada a serviços para captura de métricas de processo de desenvolvimento de softwareCunha, Virginia Silva da January 2006 (has links)
Made available in DSpace on 2013-08-07T18:43:22Z (GMT). No. of bitstreams: 1
000400971-Texto+Completo-0.pdf: 3124182 bytes, checksum: 9b0e8cc34e680328d6c7483573e46652 (MD5)
Previous issue date: 2006 / Software organizations work with several software projects that differ in terms of both the management tools used and the way tracking metrics are stored and controlled. Thus, the lack of a central data repository poses difficulties for the traking of Software Development Processes (SDPs) in these organizations. One of the crucial steps of the Knowledge Discovery in Databases Process is the process of Extraction, Transformation and Load (ETL). ETL aims to transform the raw data extracted from different fonts into consistent, reliable information. Considering the SDPs specificities, this study was carried out in the real computional environment. It was observed that the tools used range from spreadsheets (e. g. MS Excel) to control tools for the execution of project activities (e. g. MS Project Server, IBM Rational Clear Quest, Bugzilla). Different SDP models with a distinct life cycle for each project are also used, which result in completely different ways to register these projects even when using the same tool. Another problem is that each of those tools has an own data model that does not follow defined data representation standards. Therefore, the extraction of those data becomes a challenging goal to achieve, raising the complexity of ETL processes. The model proposed in this study introduces a two-integrated approach to deal with the problem: 1) a non intrusive way of data extraction, taking several types of heterogeneities into account, 2) the transformation and integration of these data, providing a unified and quantified organizational view of the projects. These aspects are treated using a serviceoriented architecture. This service oriented architecture tries to deal with several types of heterogeneity, from both the technical (e. g. different tools) and organizational standpoint (e. g. Organization’s Standard Software Process Standard specializations that result in distinct ways to develop and register project facts). This heterogeneity is conveniently treated through services that work as wrappers of the different types of extractors and through the support of a distributed development environment. For the evaluation of the proposed approach, three examples that consider all heterogeneity issues (different types of projects, different life cycles, different management models and several management support tools) were developed. / As organizações de software trabalham com diversos projetos de software que se diferenciam tanto pelas ferramentas de gestão utilizadas quanto pela forma que armazenam e controlam suas métricas de acompanhamento. Sendo assim, a inexistência de um repositório centralizado de dados dificulta o acompanhamento dos Processos de Desenvolvimento de Software (PDSs) dessas organizações. Uma das etapas mais cruciais do Processo de Descoberta de Conhecimento em Banco de Dados é o processo de Extração, Transformação e Carga (ETC), pois este tem como finalidade a transformação dos dados brutos, extraídos de diversas fontes, em informações consistentes e de qualidade. Considerando que os PDSs possuem suas especificidades, realizou-se um estudo em um ambiente real e verificou-se que, em termos de ferramentas, são utilizadas desde planilhas eletrônicas (e. g. MS Excel) até ferramentas para controle da execução de atividades de projetos (e. g. MS Project Server, IBM Rational Clear Quest, Bugzilla). Detectou-se ainda o uso de diferentes modelos de PDS, com ciclos de vida variados para projetos distintos, que se traduzem em formas totalmente diversas de registrar estes projetos, ainda que na mesma ferramenta. Outro problema é que cada uma dessas ferramentas possui um modelo de dados próprio, que não segue padronizações estabelecidas de representação de dados, dificultando assim a extração desses dados. Por conseqüência, o grau de complexidade do processo de ETC, para esta organização, é muito alto.O modelo proposto neste trabalho tem por mérito tratar, de forma integrada, dois aspectos: 1) a coleta de dados dos projetos de forma não intrusiva, levando em consideração vários tipos de heterogeneidade, 2) a transformação e integração desses dados, proporcionando uma visão organizacional unificada e quantitativa dos projetos. Esses aspectos são tratados utilizando uma arquitetura orientada a serviços. A abordagem orientada a serviços busca lidar com vários tipos de heterogeneidade, tanto do ponto de vista organizacional (e. g. especializações do Processo de Software Padrão da Organização (OSSP – Organization’s Standard Software Process) que resultam em formas distintas de desenvolvimento e registro de fatos sobre projetos), quanto do ponto de vista técnico (e. g. diferentes ferramentas). Essa heterogeneidade é convenientemente tratada através de serviços que atuam como wrappers dos diferentes tipos de extratores, que suporta um ambiente distribuído de desenvolvimento. Para avaliação da abordagem proposta, foram desenvolvidos três exemplos, que consideram todas essas questões de heterogeneidade: diferentes tipos de projetos, diferentes ciclos de vida, diferentes modelos de gerenciamento e diversas ferramentas de apoio ao acompanhamento.
|
177 |
PSOA: um framework de práticas e padrões SOA para projetos DDSPereira, Marcelo Zilio January 2011 (has links)
Made available in DSpace on 2013-08-07T18:43:27Z (GMT). No. of bitstreams: 1
000434651-Texto+Completo-0.pdf: 1984002 bytes, checksum: 609516108d15d3b415c70eb2d895bd71 (MD5)
Previous issue date: 2011 / Many researches have helped to establish correlations between coordination of software development activities and Software Architecture in projects with distributed teams. To better understand how architects are designing this kind of projects we present, in this research, a qualitative study on the influence of Software Architecture in Distributed Software Development (DSD). We collect information from Software Architects involved in DSD projects about the architecture. Information collected has exposed the wide adoption of Service Oriented Architectures (SOA) by companies developing distributed projects, indicating a trend towards to the use of this low coupling architectural style. More detailed data collected by follow-up interviews showed the implementation of practices and SOA design patterns. This practices and patterns were set up in a conceptual framework from which an experiment was conducted to compare the effort in developing DSD projects using the concepts of the framework with effort without using those concepts. The results of this experiment showed that using development practices in SOA can reduce the effort in developing DSD projects based on that architectural style. / Diversas pesquisas têm contribuído para estabelecer a relação entre coordenação de atividades e Arquitetura de Software em projetos com equipes distribuídas. Em um estudo qualitativo preliminar sobre a influência da Arquitetura de Software no Desenvolvimento Distribuído de Software coletou-se informações de Engenheiros de Software de empresas envolvidas em projetos de Desenvolvimento Distribuído de Software. Esse estudo expôs a larga utilização de arquiteturas orientadas a serviço (SOA), indicando uma tendência ao uso desse padrão de arquitetura de baixo acoplamento por empresas que desenvolvem seus projetos de forma distribuída. Estudos posteriores revelaram um conjunto de práticas de desenvolvimento em SOA, utilizadas por essas empresas. Esse conjunto de práticas foi organizado em um framework conceitual a partir do qual se realizou um experimento para comparar o esforço empregado no desenvolvimento de projetos DDS utilizando os conceitos desse framework, com o esforço sem a utilização desses conceitos. Os resultados do experimento mostraram que utilizar as práticas de desenvolvimento em SOA pode reduzir o esforço no desenvolvimento de projetos DDS que utilizam esse estilo arquitetural.
|
178 |
Comparing restricted propagation grafhs for the similarity flooding algorithmPeschl, Gabriel January 2015 (has links)
Orientador : Prof. Dr. Marcos Didonet Del Fabro / Dissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa: Curitiba, 26/05/2015 / Inclui referências : f.51-54 / Resumo: A Engenharia de Software Orientada a Modelos é uma metodologia que utiliza modelos no processo de desenvolvimento de software. Muitas operações sobre esse modelos são necessárias estabelecer links entre modelos distintos, como por exemplo, nas transformação de modelos, nas rastreabilidade de modelos e nas integração de modelos. Neste trabalho, os links são estabelecidos através da operação matching. Com os links estabelecidos é comum calcular os valores de similaridades a eles, além de se indicar um grau de igualdade entre esses links. O Similarity Flooding é um algoritmo bem estabelecido que pode aumentar a similaridade entre os links. O algoritmo é genérico e está provado sua eficiência. Contudo, ele depende de uma estrutura menos genérica para manter a sua eficiência. Neste trabalho, foram codificados 9 métodos distintos de propagações para o Similarity Flooding entre os elementos de metamodelos e modelos. Esses elementos compreendem classes, atributos, referências, instâncias e o tipo dos elementos, por exemplo, Integer, String ou Boolean. Além de verificar a viabilidade desses métodos, 2 casos de estudos são discutidos. No primeiro caso de estudo, foram executados os métodos entre os metamodelos e modelos de Mantis e Bugzilla. Em seguida, foram executados os métodos entre os metamodelos e modelos de AccountOwner e Customer. Por fim, é apresentado um estudo comparativo entre os métodos de propagações codificados com um método genérico, com o objetivo de verificar quais métodos podem ser mais (ou menos) eficiente para o Similarity Flooding, dentre os metamodelos e modelos utilizados. De acordo com os resultados, utilizando técnicas restritas de propagações do SF, as similaridades entre os links melhoraram em relação a execução genérica do algoritmo. Isso porque diminuindo a quantidade de links o SF pode ter um melhor desempenho. / Abstract: In Model-Driven Software Engineering (MDSE), different approaches can be used to establish links between elements of different models for distinct purposes, such as serving as specifications for model transformations. Once the links have been established, it is common to set up a similarity value to indicate equivalence (or lack of) between the elements. Similarity Flooding (SF) is one of the best known algorithms for enhancing the similarity of structurally similar elements. The algorithm is generic and has proven to be efficient. However, it depends on graph-based structure and a less generic encoding. We created nine generic methods to propagate the similarities between links of elements of models. These elements comprise classes, attributes, references, instances and the type of element, e.g., Integer, String or Boolean. In order to verify the viability of these methods, 2 case studies are discussed. In the first case study, we execute our methods between metamodels and models of Mantis and Bugzilla. In the following, the metamodels and models of AccountOwner and Customer are used. At the end, a comparative study of the metamodel-based encoding is presented for the purpose of verifying whether a less generic implementation, involving a lesser number of model elements, based on the metamodel and model structures, might be a viable implementation and adaptation of the SF algorithm. We compare these methods with an implementation comprising all the propagation strutures (non-restricted propagation), which are more similar (though not equivalent) to the original SF implementation. According to the results, using the restricted propagation graphs of the SF, the similarity values between the links has increased in relation to the non-restricted algorithm. This is because reducing the amount of links, will increase the propagation values between the links of elements.
|
179 |
Model-driven engineering of multi-agent systems based on ontologyFreitas, Artur Luiz Silva da Cunha January 2017 (has links)
Made available in DSpace on 2018-06-16T12:04:21Z (GMT). No. of bitstreams: 1
000488853-Texto+Completo-0.pdf: 1489846 bytes, checksum: 61623f4503a4a916e72487f33c15e294 (MD5)
Previous issue date: 2017 / Model-driven engineering provides abstractions and notations for improving the understanding and for supporting the modelling, coding, and verification of applications for specific domains. Ontologies, on the other hand, provide formal and explicit definitions of shared conceptualisations and enable the use of semantic reasoning. Although these areas have been developed by different communities, important synergies can be achieved when both are combined. These advantages can be explored in the development of multi-agent systems, given their complexity and the need for integrating several components that are often addressed from different angles. This work investigates how to apply ontologies for agentoriented software engineering. Initially, we present a new modelling approach where multiagent systems are designed using the proposed OntoMAS ontology. Then, we describe techniques, implemented in a tool, to help programmers bring their concepts into code and also generate code automatically from instantiated ontology models. Several advantages can be obtained from these new approaches to model and code multi-agent systems, such as semantic reasoning to carry out inferences and verification mechanisms. But the main advantage is the unified high (knowledge) level specification language that allows modelling the three dimensions that are united in the JaCaMo framework so that systems specifications can be better communicated across developing teams. The evaluations of these proposals indicate that they contribute with the different aspects of agent-oriented software engineering, such as the specification, verification, and programming of these systems. / A engenharia orientada a modelos fornece abstrações e notações para melhorar a compreensão e para apoiar a modelagem, codificação e verificação de aplicações em domínios específicos. As ontologias, por outro lado, fornecem definições formais e explícitas de conceitualizações compartilhadas e permitem o uso de raciocínio semântico. Embora essas áreas tenham sido desenvolvidas por diferentes comunidades, sinergias importantes podem ser alcançadas quando ambas são combinadas. Essas vantagens podem ser exploradas no desenvolvimento de sistemas multiagentes, dada a sua complexidade e a necessidade de integrar vários componentes que são frequentemente abordados de diferentes ângulos. Este trabalho investiga como aplicar ontologias para engenharia de software orientada a agentes. Inicialmente, apresentamos uma nova abordagem de modelagem onde os sistemas multiagentes são projetados usando a ontologia OntoMAS proposta. Então, descrevemos técnicas, implementadas em uma ferramenta, para ajudar os programadores a trazer seus conceitos em código e também gerar código automaticamente a partir de modelos instanciados da ontologia. Várias vantagens podem ser obtidas a partir dessas novas abordagens para modelar e codificar sistemas multiagentes, como o raciocínio semântico para realizar inferências e mecanismos de verificação. Mas a principal vantagem é a linguagem de especificação unificada de alto nível (conhecimento) que permite modelar as três dimensões que estão unidas em JaCaMo para que as especificações dos sistemas possam ser melhor comunicadas entre equipes em desenvolvimento. As avaliações dessas propostas indicam que elas contribuem com os diferentes aspectos da engenharia de software orientada a agentes, como a especificação, verificação e programação desses sistemas.
|
180 |
Um modelo baseado em inteligência artificial para a gestão do conhecimento aplicado ao processo de desenvolvimento de softwareVieira, Sandro Carlos 21 July 2008 (has links)
Dissertação (mestrado)—Universidade de Brasília, Departamento de Ciência da Computação, 2008. / Submitted by Suelen Silva dos Santos (suelenunb@yahoo.com.br) on 2009-09-22T18:00:58Z
No. of bitstreams: 1
2008_SandroCarlosVieira.pdf: 1016699 bytes, checksum: 0b6b8dba27cff6ed8edbd6eca1b5a81f (MD5) / Approved for entry into archive by Gomes Neide(nagomes2005@gmail.com) on 2011-01-03T17:55:02Z (GMT) No. of bitstreams: 1
2008_SandroCarlosVieira.pdf: 1016699 bytes, checksum: 0b6b8dba27cff6ed8edbd6eca1b5a81f (MD5) / Made available in DSpace on 2011-01-03T17:55:02Z (GMT). No. of bitstreams: 1
2008_SandroCarlosVieira.pdf: 1016699 bytes, checksum: 0b6b8dba27cff6ed8edbd6eca1b5a81f (MD5)
Previous issue date: 2008-07-21 / Desenvolver software é uma atividade comum para muitas empresas em diversas áreas da sociedade moderna, ainda que esse não seja o foco de seus negócios. Essa realidade se faz presente pela percepção de que a maioria dos produtos e serviços oferecidos é suportada por sistemas de computação, notadamente quando se fala de grandes empresas e de processos que envolvem valores vultuosos. No ramo financeiro, por exemplo, temos organizações, que dedicam alguns milhares de profissionais ao desenvolvimento de sistemas para a automação de suas atividades e à manutenção de outros que vêm sendo empregados há muito tempo. Nesse contexto, o processo de desenvolvimento de software têm sido objeto de constante preocupação por parte das administrações, porém a maioria dos trabalhos se volta ao controle de recursos e a melhoria e padronização dos processos atuais, negligenciando boa parte do conhecimento que está presente nesse ciclo. A presente pesquisa foca sua atenção sobre essa questão, com a proposição de um modelo, baseado em formalismos de inteligência artificial, que busca agregar mecanismos para a gestão do conhecimento envolvido no processo de desenvolvimento de software. O modelo aqui descrito foi construído e aplicado a um estudo de caso, em uma grande instituição financeira, obtendo-se resultados promissores quanto à sua utilização como forma de incrementar o reuso de soluções já desenvolvidas, evitar duplicidade de esforços na construção de soluções similares e também de propiciar uma alternativa eficaz para a rastreabilidade de características e detalhes sobre tais soluções. ______________________________________________________________________________ ABSTRACT / Software development has been a common activity to many companies in modern society, even that this activity are not in the core of its business. This reality is already evidenced by the perception that computer systems are strongly coupled to services and products, especially when big organizations and a great amount of money is involved. In the financial area, for example, many of this organizations employs over a thousand professionals to develop computer systems designed to support its business and to keep running software already in use for a long time. In this context, software development process has been considered as a critical mission by the organization's CIOs, but major efforts have been driven to adjust it into process patterns and resources control, keeping knowledge management outside this cycle. This research describes a model designed to improve knowledge management in software development process. The model described in this paper was constructed and applied as a case study in a financial organization, and the collected results illustrate the efficiency of the system to improve software reuse and to avoid duplicated efforts in solution design.
|
Page generated in 0.1049 seconds