112 resultados para Programação binível


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Neste estudo são discutidos alguns aspectos relacionados à escolha da primeira linguagem de programação em currículos de ciência da computação, com interesse especial em Pascal e Java. A primeira linguagem é amplamente adotada para ensinar programação aos novatos, enquanto a segunda está ganhando popularidade como uma linguagem moderna e abrangente, que pode ser usada em muitas disicplinas ao longo de um curso degraduação em computação como ferramenta para ensinar desde recursos básicos de programação até tópicos mais avançados. Embora vários problemas quanto ao ensino de Java, com a primeira linguagem de programação, possam ser apontadas, consideramosque Java é uma boa escolha, visto que (a) oferece apoio a importantes questões conceituais e tecnológicos e, (b) é possível contornar algumas complexidades da linguagem e da plataforma Java para torná-las mais adequadas à alunos iniciantes. Além disso, considerando a grande popularidade de Pascal nos currículos de cursos de computação, uma eventual adoção de Java conduz à outro problema: a falta de professores aptos a lecionar programação orientada a objetos. Sugerimos que este problema de migração de Pascal para Java seja enfrentado através de smplificação do ambiente de desenvolvimento de programas, uso de um pacote com classes que facilitam a entrada e saída, e o desenvolvimento de um catálogo comparativo de programas implementados em ambas as linguagens. Neste estudo também é apresentado o JEduc, um IDE muito simples com o objetivo de dar suporte ao ensino da linguagem de programação orientada a objetos Java aos novatos. Oferece componentes desenvolvidos em Java que integram edição, compilação e execução de programas Java. Além das funcionalidades comuns a um IDE, JEduc foi desenvolvido para gir como uma ferramente pedagógica: simplifica a maioria das mensagens do compilador e erros da JRE, permite a inserção de esqueletos de comandos, e incorpora pacotes especiais para esconder alguns detalhes sintáticos e semânticos indesejáveis.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A área de gerência de rede cresce à medida que redes mais seguras e menos vulneráveis são necessárias, e as aplicações que concorrem pelo seu uso, necessitam de alta disponibilidade e qualidade de serviço. Quando estamos focando a gerência da infra-estrutura física das redes de computadores, por exemplo, a taxa de uso de um segmento de rede, podemos dizer que esse tipo de gerenciamento encontra-se em um patamar bastante sedimentado e testado. Por outro lado, há ainda lacunas para pesquisar na área de gerenciamento de protocolos de alto nível. Entender o comportamento da rede como um todo, conhecer quais hosts mais se comunicam, quais aplicações geram mais tráfego e, baseado nessas estatísticas, gerar uma política para a distribuição de recursos levando em consideração as aplicações críticas é um dever nas redes atuais. O grupo de trabalho IETF RMON padronizou, em 1997, a MIB RMON2. Ela foi criada para permitir a monitoração de protocolos das camadas superiores (rede, transporte e aplicação), a qual é uma boa alternativa para realizar as tarefas de gerenciamento recém mencionadas. Outro problema para os gerentes de rede é a proliferação dos protocolos de alto nível e aplicações corporativas distribuídas. Devido a crescente quantidade de protocolos e aplicações sendo executados sobre as redes de computadores, os softwares de gerenciamento necessitam ser adaptados para serem capazes de gerenciá-los. Isso, atualmente, não é fácil porque é necessário usar linguagens de programação de baixo nível ou atualizar o firmware dos equipamentos de monitoração, como ocorre com os probes RMON2. Considerando este contexto, esse trabalho propõe o desenvolvimento de um agente RMON2 que contemple alguns grupos dessa MIB. O agente baseia-se na monitoração protocolos de alto nível e aplicações que são executados sobre o IP (Internet Protocol) e Ethernet (na camada de enlace). Além da implementação do agente, o trabalho apresenta um estudo de como obter estatísticas do agente RMON2 e usá-las efetivamente para gerenciar protocolos de alto nível e aplicações.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O presente trabalho é uma análise experimental que procura investigar os efeitos dos fatores carga por eixo, pressão de inflação e tipo de pneu sobre o desempenho de pavimentos. Os dados e informações existentes sobre o quadro de cargas por eixo praticada pela frota de veículos pesados é razoável. A ação conjunta dos referidos fatores é ainda uma questão pouco explorada. Assim, para compensar a escassez de dados sobre pressão de inflação e tipo de construção de pneus utilizados na frota de carga, programou-se uma pesquisa de campo na rodovia estadual RS/240. As informações oriundas da pesquisa demonstram que há um acréscimo generalizado no valor da pressão dos pneus e um aumento de uso dos pneus de fabricação radial em relação aos pneus convencionais. Os dados de campo subsidiaram a programação de um experimento fatorial cruzado executado na Área de Pesquisas e Testes de Pavimentos da UFRGS/DAER. A variação dos níveis dos fatores deu-se através de um simulador linear de tráfego atuando sobre uma pista experimental com 20 m de comprimento por 3,5 m de largura. Tendo como resposta estrutural do pavimento a máxima deflexão superficial recuperável medida com uma viga Benkelmam, determinou-se como significantes os efeitos dos fatores carga por eixo e pressão de enchimento dos pneus. Os cálculos estatísticos indicam também que não há diferenças significativas entre os pneus tipo 9.00R20 e 9.00x20 e que todas interações não exercem efeitos significativos sobre a variável de resposta. Em seqüência, determinaram-se as áreas de contato do rodado duplo do simulador de tráfego com a superfície do pavimento ensaiado para as combinações dos níveis dos fatores. Pode-se, então, comparar área de contato medida com área circular calculada, considerada em muitos modelos de dimensionamento de pavimentos. Relacionou-se a variação da pressão de contato com a deflexão recuperável e procedeu-se uma comparação da mesma com a pressão de inflação nominal dos pneus. Apresenta-se um modelo de análise do desempenho do pavimento em função da carga por eixo e da pressão de inflação, nos limites do experimento. Os dados decorrentes do experimento viabilizaram a determinação dos Fatores de Equivalência de Cargas para os níveis dos fatores, considerando-se o pavimento ensaiado. Avaliou-se, via evolução das deflexões e dos Fatores de Equivalência de Cargas, a redução da vida do pavimento, obtendo-se, para a combinação de níveis mais críticos de carregamento, resultados significativos de até 88 % de redução. Propõe-se, por último, uma formulação para o Fator de Equivalência de Cargas que considere também a ação da pressão de inflação.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Tolerância a falhas é um dos aspectos mais importantes a serem considerados no desenvolvimento de aplicações, especialmente com a participação cada vez maior de sistemas computacionais em áreas vitais da atividade humana. Dentro deste cenário, um dos fatores a serem considerados na persecução deste objetivo é o gerenciamento de atomicidade. Esta propriedade, por sua vez, apresenta duas vertentes principais: o controle de concorrência e a recuperação de estados. Considerando-se a tolerância a falhas e, particularmente, a atomicidade como requisitos com alto grau de recorrência em aplicações, verifica-se a importância de sua reutilização de forma simples e transparente e do estudo de meios de prover tal capacidade. O presente trabalho procurou pesquisar e aplicar meios de produzir soluções reutilizáveis para implementação de programas tolerantes a falhas, mais especificamente de técnicas de controle de atomicidade, utilizando vários paradigmas computacionais. Neste intuito, foram pesquisados mecanismos de introdução de atomicidade em aplicações e suas respectivas demandas, para então extrair critérios de análise dos paradigmas a serem utilizados na implementações das soluções. Buscou-se suporte nestes paradigmas às demandas previamente pesquisadas nos mecanismos de gerenciamento de atomicidade e procurou-se chegar a soluções reutilizáveis mantendo simplicidade de uso, possibilidade de alteração dinâmica, transparência, adaptabilidade e velocidade de desenvolvimento. Devido à existência de uma grande diversidade de situações que requerem diferentes implementações de atomicidade, alguns cenários típicos foram selecionados para aplicação e avaliação das técnicas aqui sugeridas, procurando abranger o maior número possível de possibilidades. Desta maneira, este trabalho comparou situações opostas quanto à concorrência pelos dados, implementando cenários onde ocorrem tanto acesso cooperativo quanto competitivo aos dados. Dentro de cada um dos cenários estudados, buscaram-se situações propícias ao emprego das características dos paradigmas e analisou-se o resultado de sua aplicação quanto aos critérios definidos anteriormente. Várias soluções foram analisadas e comparadas. Além dos mecanismos de gerenciamento de atomicidade, também foram estudados vários paradigmas que pudessem ser empregados na implementação de soluções com alto grau de reutilização e adaptabilidade. As análises e sugestões posteriores às implementações serviram como substrato para conclusões e sugestões sobre a melhor maneira de empregar tais soluções nos cenários atômicos estudados. Com isso, foi possível relacionar características e capacidades de cada paradigma com a melhor situação de demanda de atomicidade na qual os mesmos são aplicáveis, moldando uma linha de soluções que favoreçam sua reutilização. Um dos objetivos mais importantes do trabalho foi, entretanto, observar o funcionamento conjunto destes paradigmas, estudando como os mesmos podem atuar de forma simbiótica e de que forma os conceitos de um paradigma podem complementar os de outro.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Este texto apresenta um novo modelo multiparadigma orientado ao desenvolvimento de software distribuído, denominado Holoparadigma. O Holoparadigma possui uma semântica simples e distribuída. Sendo assim, estimula a modelagem subliminar da distribuição e sua exploração automática. A proposta é baseada em estudos relacionados com modelos multiparadigma, arquitetura de software, sistemas blackboard, sistemas distribuídos, mobilidade e grupos. Inicialmente, o texto descreve o modelo. Logo após, é apresentada a Hololinguagem, uma linguagem de programação que implementa os conceitos propostos pelo Holoparadigma. A linguagem integra os paradigmas em lógica, imperativo e orientado a objetos. Além disso, utiliza um modelo de coordenação que suporta invocações implícitas (blackboard) e explícitas (mensagens). A Hololinguagem suporta ainda, concorrência, modularidade, mobilidade e encapsulamento de blackboards em tipos abstratos de dados. Finalmente, o texto descreve a implementação da Holoplataforma, ou seja, uma plataforma de desenvolvimento e execução para a Hololinguagem. A Holoplataforma é composta de três partes: uma ferramenta de conversão de programas da Hololinguagem para Java (ferramenta HoloJava), um ambiente de desenvolvimento integrado (ambiente HoloEnv) e um plataforma de execução distribuída (plataforma DHolo).

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A tecnologia de produção agrícola convencional está baseada no alto consumo de energia fóssil – o petróleo –, devido, principalmente, ao uso intensivo de fertilizantes químicos, agrotóxicos, maquinaria pesada e combustíveis. Este modelo agrícola não é viável no longo prazo por dois motivos: além de ser de baixa eficiência energética, os aumentos crescentes do preço da energia, devido à perspectiva de escassez (recurso finito), afetam cada vez mais os custos de produção agrícola, tornando os preços dos produtos agrícolas proibitivos para a maioria das populações. Em segundo lugar, este modelo tem contribuído para a depauperização do solo (capital básico), através do desequilíbrio biológico e desestruturação física, além da contaminação ambiental e dos produtos produzidos. Dentro deste contexto, este trabalho procura mostrar a importância da análise da eficiência energética na empresa rural, ao lado da análise econômica. Através da programação linear, analisa a máxima eficiência energética e máxima eficiência econômica na empresa e respectivas estruturas de produção e consumo de recursos, considerando as variações no preço da energia. As principais conclusões foram: com a tecnologia hora em uso na agricultura, à uma eficiência econômica máxima da empresa rural, está associada uma eficiência energética mínima; a eficiência energética varia em sentido inverso à eficiência econômica; a medida que o preço da energia aumenta, a eficiência energética aumenta, a eficiência econômica cai, os recursos produtivos mais intensivos energeticamente (principalmente fertilizantes químicos), tornam-se menos competitivos, cedendo lugar aos menos intensivos energeticamente, como os adubos orgânicos Por fim, relaciona-se algumas sugestões para futuros trabalhos, enfocando principalmente o uso de tecnologias alternativas de produção, como: adubos orgânicos, tração animal, rotação e diversificação de culturas, adubação verde, energias alternativas, etc, com o intuito de: aumentar a eficiência energética, buscando a independência energética da empresa; melhorar o equilíbrio biodinâmico do solo, para garantir a produtividade no longo prazo; evitar a contaminação ambiental e do próprio homem, procurando produzir produtos biologicamente sadios, livres de resíduos tóxicos e, assim, garantir uma agricultura verdadeiramente autosustentável.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Este trabalho, consiste em um estudo para avaliar os níveis de vibrações do corpo humano, do segmento mão-braço, e a transmissibilidade a que estão sujeitos os motoristas de ônibus urbanos. As medições foram realizadas, no eixo vertical, de acordo com as recomendações das normas ISO 2631 (1974 e 1997) e ISO 5349 (1986), utilizando-se acelerômetros uni-axiais, um computador com placa conversora analógica para digital (A/D), e programas desenvolvidos na plataforma de programação gráfica HPVee para aquisição e avaliação dos níveis de vibrações. A vibração vertical do corpo humano (direção z – ISO 2631) foi simultaneamente medida no assento do motorista e no suporte do banco junto ao piso do veículo. A vibração no segmento mão-braço (direção x – ISO 5349) foi medida no terceiro metacarpal, no triquetrum carpal e no ombro dos motoristas. Diferentes modelos de ônibus foram utilizados em uma rota de 18km que interliga as zonas norte e sul da cidade. Quatro acelerômetros uni-axiais (Endevco Isotron 2250A/AM1-10) foram usados para medir os níveis de vibração na mão, pulso, ombro do motorista e no assento; enquanto que, no piso, foi utilizado um acelerômetro uni-axial da Brüel & Kjaer 4338. Os resultados indicaram que, para o segmento mão-braço, os níveis de vibrações equivalentes a 4 horas de exposição são menores do que 2,0 m/s2, na maioria dos modelos, o que determina que os motoristas expostos até 25 anos possivelmente não apresentarão problemas relacionados à vibração. Porém, na análise em freqüência, os níveis de vibrações, nas faixas de freqüência de 6,3 a 50Hz, no terceiro metacarpal e no triquetrum carpal são superiores a 2,0 m/s2 podendo ocasionar danos a partir de 15 anos de exposição. Os níveis de vibrações do corpo humano e a transmissibilidade mostraram que os motoristas estão expostos a níveis perigosos de vibrações principalmente na área da ressonância da coluna vertebral.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Este trabalho descreve uma implementação de um modelo de escalonamento para a linguagem de programação DPC++. Esta linguagem, desenvolvida no Instituto de Informática da UFRGS, possibilita que uma aplicação orientada a objetos seja distribuída entre vários processadores através de objetos distribuídos. Muito mais que uma simples biblioteca de comunicação, o DPC ++ torna a troca de mensagens totalmente transparente aos objetos. A integração do DPC++ com o DECK, também em desenvolvimento, trará grandes inovações ao DPC++, principalmente pelo uso de theads. O escalonador proposto para este modelo utiliza estes recursos para implantar os chamados processos espiões, que monitoram a carga de uma máquina, enviando seus resultados ao escalonador. O escalonador implementado possui, desta forma, dois módulos: objetos espiões implementados como um serviço do DECK e o escalonador propriamente dito, incluído no objeto Diretório, parte integrante do DPC++.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A simulação é uma das ferramentas mais utilizadas para a aplicação da análise sistêmica nos mais diversos estudos. Ao longo do tempo, vários modelos foram desenvolvidos para representar sistemas de recursos hídricos, utilizando a simulação. Dentre esses modelos, está o Propagar MOO, que simula a propagação de vazões em uma bacia hidrográfica, submetida à decisões operacionais de suprimento de demandas e de operação de reservatórios, introduzidas pelo usuário através de rotinas escritas na linguagem de programação Pascal Script. A utilização eficiente dessas rotinas permite ao usuário ampliar a capacidade e flexibilidade do modelo na representação de um sistema hídrico. Com o objetivo de contribuir na ampliação da flexibilidade do modelo Propagar MOO e de sua aplicabilidade à modelagem de sistemas de recursos hídricos em geral, bem como facilitar o estudo da linguagem de programação Pascal Script e motivar os profissionais da área no desenvolvimento de novas rotinas aplicadas ao modelo, foram implementadas, através do presente trabalho, rotinas genéricas contendo estratégias de planejamento do uso da água e de operação de reservatórios, bem como ferramentas para analisar seus resultados. Para ampliar essa contribuição, foi aprimorada a possibilidade de simulação da geração de energia hidrelétrica em pontos de uma rede hidrográfica, com a criação de novas ferramentas para esse fim, na estrutura interna do modelo. Por fim, para que o próprio usuário pudesse construir ferramentas para auxiliar na verificação dos resultados obtidos nas simulações, esse estudo apresenta a implementação de rotinas de uso geral para servir como exemplos de ferramentas de análise de dados.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Para reutilização, manutenção e refatoração, projetistas de sistemas de software, freqüentemente, precisam examinar o código fonte da aplicação para entender os detalhes dos sistemas desenvolvidos. As aplicações orientadas a objetos em geral, tornam-se coleções nebulosas de classes e implementações de métodos. Sem dúvida a habilidade de entender sistemas de software é largamente aumentada visualizando-se esses produtos em níveis mais altos de abstração. Os padrões de projeto demonstram um alto índice de abstração e são considerados uma ferramenta efetiva para o entendimento de sistemas de software orientados a objetos. Aplicações orientadas a objetos visualizadas como um sistema de interação de padrões requerem a descoberta, identificação e classificação de grupos de classes relacionadas. Estas visualizações podem representar qualquer padrão conhecido ou agrupamentos que executam uma tarefa abstrata e necessariamente não são uma solução de padrão conhecida. Os padrões de projeto descrevem, portanto, microarquiteturas que resolvem problemas arquitetônicos em sistemas de software orientados a objetos. É importante identificar estas microarquiteturas durante a fase de manutenção de aplicações orientadas a objetos. Faz-se necessário salientar que estas microarquiteturas aparecem freqüentemente distorcidas na aplicação fonte. O objeto deste trabalho é demonstrar a viabilidade de construir uma ferramenta para descobrir a utilização de padrões de projeto em aplicações Java. Assim, esta tese examina as características de alguns padrões, determinando a natureza do que faz um padrão ser detectável por intermédio de meios automatizados, e propõe algumas regras pelas quais um conjunto de padrões possa ser identificado. As regras são baseadas nos relacionamentos entre classes e objetos mediante observação dos modelos estático e dinâmico. Este trabalho também documenta o desenvolvimento do protótipo da ferramenta de inspeção, que tem por objetivo aplicar os processos de engenharia reversa e reflexão computacional sobre código Java, utilizando as informações adquiridas para detectar padrões de projeto. Finalmente, esta tese demonstra a utilização dessa ferramenta em um exemplo pequeno de aplicação Java e forma a base para trabalhos adicionais que investiguem a existência de diferentes padrões de projeto em sistemas de software construídos em Java.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Este trabalho tem como objetivo desenvolver e empregar técnicas e estruturas de dados agrupadas visando paralelizar os métodos do subespaço de Krylov, fazendo-se uso de diversas ferramentas e abordagens. A partir dos resultados é feita uma análise comparativa de desemvpenho destas ferramentas e abordagens. As paralelizações aqui desenvolvidas foram projetadas para serem executadas em um arquitetura formada por um agregado de máquinas indepentes e multiprocessadas (Cluster), ou seja , são considerados o paralelismo e intra-nodos. Para auxiliar a programação paralela em clusters foram, e estão sendo, desenvolvidas diferentes ferramentas (bibliotecas) que visam a exploração dos dois níveis de paralelismo existentes neste tipo de arquitetura. Neste trabalho emprega-se diferentes bibliotecas de troca de mensagens e de criação de threads para a exploração do paralelismo inter-nodos e intra-nodos. As bibliotecas adotadas são o DECK e o MPICH e a Pthread. Um dos itens a serem analisados nestes trabalho é acomparação do desempenho obtido com essas bibliotecas.O outro item é a análise da influência no desemepnho quando quando tulizadas múltiplas threads no paralelismo em clusters multiprocessados. Os métodos paralelizados nesse trabalho são o Gradiente Conjugação (GC) e o Resíduo Mínmo Generalizado (GMRES), quepodem ser adotados, respectivamente, para solução de sistemas de equações lineares sintéticos positivos e definidos e não simétricas. Tais sistemas surgem da discretização, por exemplo, dos modelos da hidrodinâmica e do transporte de massa que estão sendo desenvolvidos no GMCPAD. A utilização desses métodos é justificada pelo fato de serem métodos iterativos, o que os torna adequados à solução de sistemas de equações esparsas e de grande porte. Na solução desses sistemas através desses métodos iterativos paralelizados faz-se necessário o particionamento do domínio do problema, o qual deve ser feito visando um bom balanceamento de carga e minimização das fronteiras entre os sub-domínios. A estrutura de dados desenvolvida para os métodos paralelizados nesse trabalho permite que eles sejam adotados para solução de sistemas de equações gerados a partir de qualquer tipo de particionamento, pois o formato de armazenamento de dados adotado supre qualquer tipo de dependência de dados. Além disso, nesse trabalho são adotadas duas estratégias de ordenação para as comunicações, estratégias essas que podem ser importantes quando se considera a portabilidade das paralelizações para máquinas interligadas por redes de interconexão com buffer de tamanho insuficiente para evitar a ocorrência de dealock. Os resultados obtidos nessa dissertação contribuem nos trabalhos do GMCPAD, pois as paralelizações são adotadas em aplicações que estão sendo desenvolvidas no grupo.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

XML é um padrão da W3C largamente utilizado por vários tipos de aplicações para representação de informação semi-estruturada e troca de dados pela Internet. Com o crescimento do uso de XML e do intercâmbio de informações pela Internet é muito provável que determinadas aplicações necessitem buscar uma mesma informação sobre várias fontes XML relativas a um mesmo domínio de problema. No intuito de representar a informação dessas várias fontes XML, o programador é obrigado a escolher entre muitas estruturas hierárquicas possíveis na criação dos esquemas de seus documentos XML. Um mesmo domínio de informação, desta maneira, pode então ser representado de diferentes formas nas diversas fontes de dados XML existentes. Por outro lado, verifica-se que as linguagens de consulta existentes são fortemente baseadas no conhecimento da estrutura de navegação do documento. Assim, ao consultar uma determinada informação semanticamente equivalente em várias fontes é necessário conhecer todos os esquemas envolvidos e construir consultas individuais para cada uma dessas fontes. Em um ambiente de integração, entretanto, é possível gerar um modelo global que representa essas fontes. Ao construir consultas sobre um modelo global, temos consultas integradas sobre estas fontes. Para se atingir esse objetivo, contudo, devem ser resolvidos os problemas da heterogeneidade de representação dos esquemas XML. Dessa forma, com base em uma abordagem de integração de esquemas, o presente trabalho define a linguagem de consulta CXQuery (Conceptual XQuery) que possibilita a construção de consultas sobre um modelo conceitual. Para possibilitar o retorno dos dados das fontes nas consultas feitas em CXQuery, foi desenvolvido um mecanismo de tradução da linguagem CXQuery para a linguagem de consulta XQuery 1.0. A linguagem XQuery 1.0 é umas das linguagens mais utilizadas para o acesso as fontes XML e permite que os dados possam ser retornados ao usuário. Para possibilitar essa tradução, foi definida uma metodologia de representação da informação de mapeamento através de visões XPath. Essa metodologia é relativamente eficaz no mapeamento das diferentes representações das fontes XML.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O estudo visou determinar os resultados atuais da pecuária de corte gaúcha, determinando os custos limites para a adoção de práticas que conduzam a atividade a melhores níveis de produtividade e rentabilidade. Com este propósito, simulou-se, utilizando programação matemática (multiperiódica), a transição do sistema de criação tradicional ao sistema “dois anos”, determinando o seu custo limite e testando-se vinte e sete combinações tecnológicas, a fim de verificar sua viabilidade econômica e financeira. Concluiu-se que a maioria das inovações tecnológicas testadas (dezesseis das vinte e sete), não traz benefício econômico para a atividade. Os melhores resultados estavam sempre associados ao uso de pastagens consorciadas hibernais (gramíneas e leguminosas), e que é determinante para a viabilidade econômica das mesmas a capacidade de suporte das pastagens, sendo necessário trabalhar-se com mais de 810 kg/ha de carga animal, para atingir-se resultados econômicos satisfatórios para a atividade.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O sucesso da Internet como plataforma de distribuição de sistemas de informação encoraja organizações a disponibilizar serviços presentes em seus sistemas legados nesse ambiente. Uma parte desses sistemas foi desenvolvida na fase inicial do desenvolvimento das aplicações cliente/servidor para banco de dados, usando ambientes visuais com interfaces gráficas tipo WIMP, implementadas sob o paradigma procedimental/estruturado, baseado em objetos e eventos. Como conseqüência, produziu-se sistemas legados difíceis de manter, evoluir e adaptar a novas tecnologias e arquiteturas, pois os projetos desenvolvidos não seguiam, na maioria das vezes, os bons preceitos e práticas modernas defendidas na Engenharia de Software. O objetivo deste trabalho é propor uma metodologia para migrar sistemas legados com as características citadas acima para a plataforma Web. O processo de migração proposto destaca duas estratégias: a elaboração de modelos de classes conceituais da aplicação e o tratamento dado à interface do usuário, para serem utilizados na reconstrução de uma nova aplicação. O processo é baseado em técnicas e métodos de engenharia reversa, que visa obter abstrações por meio de análise estática e dinâmica da aplicação. Na análise dinâmica, destaca-se o mecanismo para recuperar aspectos dos requisitos funcionais do sistema legado e representá-los na ferramenta denominada UC/Re (Use Case para Reengenharia). Todos os artefatos gerados durante o processo podem ser armazenados em um repositório, representando os metamodelos construídos na metodologia. Para delimitar e exemplificar o processo, escolheu-se como domínio de linguagem de programação do software legado, o ambiente Delphi (sob a linguagem Object Pascal). É proposto também um ambiente CASE, no qual é descrito o funcionamento de um protótipo que automatiza grande parte das funcionalidades discutidas nas etapas do processo. Algumas ferramentas desenvolvidas por terceiros são empregadas na redocumentação do sistema legado e na elaboração dos modelos UML do novo sistema. Um estudo de caso, apresentando uma funcionalidade específica de um sistema desenvolvido em Delphi, no paradigma procedimental, é usado para demonstrar o protótipo e serve de exemplo para a validação do processo. Como resultado do processo usando o protótipo, obtém-se o modelo de classes conceituais da nova aplicação no formato XMI (formato padrão para exportação de modelos UML), e gabaritos de páginas em HTML, representando os componentes visuais da interface original na plataforma Web.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A linguagem síncrona RS é destinada ao desenvolvimento de sistemas reativos. O presente trabalho tem como objetivo criar meios que facilitem o uso da linguagem RS no projeto e implementação desses sistemas, permitindo que, à partir da especificação de um sistema reativo, seja realizada a sua implementação de forma automática. Deste modo, a linguagem RS é utilizada para a descrição do comportamento de um sistema em um alto nível de abstração, antes de serfeitas a decomposição do sistema em componentes de software ou hardware. A implmentação do protótipo do sistema computacional dedicado é obtida através de uma síntese automática desse modelo de alto nível. Foram implementados geradores de código que utilizam o código objeto fornecido pelo compilador da linguagem RS. Os geradores fazem a tradução para a linguagem C, para a linguagem JAVA, ou para a linguagem de descrição de hardware VHDL. A partir da síntese desses códigos poderá ser obtida a implementação do sistema em um micrcoomputador comercial, em um microcomputador Java de dedicado (ASIP Java), ou em um hardware de aplicação específica (ASIC). Foram realizados estudos de caso representativos dos sistemas reativos embaraçados e de tempo rel. Estes estudos de caso serviram para validar os geradores de código bem como para analisar o uso da linguagem RS no projeto e implementação desses sistemas.