925 resultados para Engenharia : Software


Relevância:

60.00% 60.00%

Publicador:

Resumo:

A computação de tempo real é uma das áreas mais desafiadoras e de maior demanda tecnológica da atualidade. Está diretamente ligada a aplicações que envolvem índices críticos de confiabilidade e segurança. Estas características, inerentes a esta área da computação, vêm contribuindo para o aumento da complexidade dos sistemas tempo real e seu conseqüente desenvolvimento. Isto fez com que mecanismos para facilitar especificação, delimitação e solução de problemas passem a ser itens importantes para tais aplicações. Este trabalho propõe mecanismos para atuarem no desenvolvimento de sistemas de tempo real, com o objetivo de serem empregados como ferramenta de apoio no problema da verificação de presença de inconsistências, que podem vir a ocorrer nos vários modelos gerados partir da notação da linguagem de modelagem gráfica para sistemas de tempo real - UML-RT(Unified Modeling Language for Real Time). Estes mecanismos foram projetados através da construção de um metamodelo dos conceitos presentes nos diagramas de classe, de objetos, de seqüência, de colaboração e de estados. Para construir o metamodelo, utiliza-se a notação do diagrama de classes da UML (Unified Modeling Language). Contudo, por intermédio das representações gráficas do diagrama de classes não é possível descrever toda a semântica presente em tais diagramas. Assim, regras descritas em linguagem de modelagem OCL (Object Constraint Language) são utilizadas como um formalismo adicional ao metamodelo. Com estas descrições em OCL será possível a diminuição das possíveis ambigüidades e inconsistências, além de complementar as limitações impostas pelo caráter gráfico da UML. O metamodelo projetado é mapeado para um modelo Entidade&Relacionamento. A partir deste modelo, são gerados os scripts DDL (Data Definition Language) que serão usados na criação do dicionário de dados, no banco de dados Oracle. As descrições semânticas escritas através de regras em OCL são mapeadas para triggers, que disparam no momento em que o dicionário de dados é manipulado. O MET Editor do SiMOO-RT é a ferramenta diagramática que faz o povoamento dos dados no dicionário de dados. SiMOO-RT é uma ferramenta orientada a objetos para a modelagem, simulação e geração automática de código para sistemas de tempo real.

Relevância:

60.00% 60.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:

60.00% 60.00%

Publicador:

Resumo:

A integração de aplicações heterogêneas é uma tarefa constante entre empresas do mundo moderno. A grande quantidade de fornecedores de software, aliada à extensa variedade de técnicas e linguagens computacionais utilizadas, fazem desta integração uma tarefa trabalhosa e cara para as organizações. As alternativas existentes para a integração de sistemas de diferentes fornecedores podem variar, desde acesso compartilhado a uma base de dados comum, uso de replicadores de dados entre bases de dados distintas, troca de mensagens entre aplicações, ou o uso de programas exportadores/importadores, gerando arquivos em um formato previamente protocolado entre os desenvolvedores dos softwares envolvidos. Este trabalho visa propor uma alternativa para a integração de sistemas heterogêneos, fazendo uso da tecnologia XML para representar os dados que são trocados entre os aplicativos. Para tanto, sugere um framework a ser utilizado no planejamento da arquitetura dos softwares. O objetivo principal da adoção de um framework é a utilização de uma metodologia previamente desenvolvida e certificada, economizando tempo de análise para a solução de um problema. O framework proposto subtrai dos desenvolvedores a necessidade de alteração do código fonte dos seus programas cada vez que a integração com um novo fornecedor de software se faz necessária, ou que há alteração no formato dos dados trocados entre os aplicativos. Este efeito é conseguido através da utilização de XSLT para a conversão de formatos de documentos XML trocados pelos softwares. Tal conversão é realizada por um processador XSLT externo aos programas envolvidos. Para simplificar o processo, foi desenvolvido o protótipo de uma ferramenta para a geração de templates XSLT. Templates são elementos da especificação XSLT capazes de realizar a transformação entre estruturas representadas em XML. O gerador de templates XSLT é uma ferramenta gráfica capaz de converter mapeamentos realizados entre estruturas XML em templates XSLT, podendo aplicar as transformações geradas a documentos XML, com a finalidade de teste ou transformação.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Editores diagramáticos possuem aplicabilidade em diferentes áreas da computação, dentre elas ferramentas CASE, editores gráficos, CAD para circuitos eletrônicos, etc. Uma subclasse desse tipo de editores adiciona a funcionalidade de execução aos diagramas manipulados, permitindo ao usuário executar um diagrama através de técnicas de animação. Esta característica, por sua vez, acarreta na inserção de novos problemas para o projetista de software, sendo o principal deles o reuso independente das funcionalidades de edição e de execução de editores construídos. Com vistas a minimizar este problema este trabalho apresenta uma arquitetura que combina uma estrutura de componentes interconectáveis descrita por meio de BML com um mecanismo de interpretação de scripts como uma alternativa para construção de editores de diagramas com funcionalidade de execução.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Uma definição confiável dos requisitos de um software depende diretamente da completa e correta compreensão sobre as necessidades do sistema e sua conseqüente representação de forma adequada ao processo de desenvolvimento. Uma proposta de modelagem de requisitos deve apresentar qualidades que colaborem para a compreensão mútua das necessidades entre os envolvidos no processo e que organizem os requisitos de forma a permitir o acompanhamento no desenvolvimento do software. O presente trabalho apresenta um modelo de estruturação de requisitos fundamentado em metodologias orientadas a objetivos com utilização de cenários e preceitos da Teoria da Atividade. O modelo tem sua argumentação nas premissas que cliente e usuários normalmente expressam suas necessidades através de objetivos almejados e que a ação humana deve ser analisada dentro de um contexto para que possa fazer sentido e ser compreendida. Inserido no contexto do Projeto FILM1, cujo objetivo é expandir o Método Fusion, agregando uma etapa de modelagem de requisitos, o trabalho estabeleceu a qualidade de usabilidade como motivadora da definição de um modelo de estruturação de requisitos. A usabilidade é uma qualidade que visa facilitar a utilização do modelo como uma ferramenta de representação dos requisitos de forma inteligível, atuando tanto na especificação dos requisitos como na validação dos mesmos entre os envolvidos. Os requisitos são estruturados segundo uma abordagem voltada aos clientes e usuários do sistema. O modelo definido tem por objetivo prover a construção gradual e incremental do entendimento compartilhado entre os envolvidos sobre os domínios do problema e da solução, na concepção e no desenvolvimento do software. Metodologias orientadas a objetivos, operacionalizadas através de cenários, conjugadas a princípios da atividade oferecem um suporte adequado a estruturação de requisitos provendo usabilidade ao modelo. A avaliação da aplicabilidade do modelo é realizada com a modelagem de requisitos em três estudos de casos. Em cada caso são aplicadas técnicas de elicitação no sentido da afinar a sintonia com a estrutura do modelo de requisitos. A concepção do modelo, embasada em conceitos da Teoria da Atividade, é bastante adequado às atividades de elicitação em uma abordagem voltada aos clientes e usuários.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

O principal objetivo deste trabalho é apresentar um método e métricas para a avaliação do serviço Internet mais amplamente utilizado: a World Wide Web. As características básicas e funcionamento do serviço, bem como algumas ferramentas de avaliação de desempenho, serão descritas. Estes capítulos servirão de base para os demais, onde serão apresentados o método para avaliação do serviço web e métricas usadas para análise de desempenho, disponibilidade, confiabilidade, facilidades de administração e recursos. Por fim, o método e métricas serão aplicados na Procempa – Companhia de Processamento de Dados do Município de Porto Alegre, onde será possível verificá-los na prática. Além disto, dados importantes sobre a infra-estrutura web da Procempa serão fornecidos, os quais permitem uma análise do ambiente web atual e futuro da empresa.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

A Engenharia de Software tornou-se uma das principais áreas de concentração do mundo da Ciência da Computação, pois ela abrange métodos para construir sistemas, ferramentas que fornecem apoio a construção e os procedimentos a seguir para que os métodos estejam de acordo com as ferramentas usadas [PRE 95]. No desenvolvimento de sistemas cada vez mais complexos vê-se a necessidade da utilização de equipes de pessoas no projeto e implementação. Essas pessoas podem estar geograficamente dispersas e portanto possuem a necessidade de troca de informações para que os sistemas desenvolvidos sejam adequados com o objetivo inicial e de qualidade. Assim, os sistemas cooperativos, chamados de groupware, tornaram-se uma importante ferramenta utilizada por esse grupo de profissionais para que as tarefas desenvolvidas em grupo se tornem interativas e eficientes. A interação entre as pessoas que estão trabalhando cooperativamente deve ser a mais produtiva possível, sendo semelhante ao trabalho em grupo em um único local. Assim, a percepção das atividades que estão sendo realizadas devem estar disponíveis para cada profissional, através da Interface Homem-Computador do sistema groupware que estão utilizando. Este trabalho apresenta uma “biblioteca” de Componentes de Percepção que fornecem as informações necessárias para que as pessoas que estão participando da tarefa cooperativa tenham a percepção das atividades que estão sendo realizadas, como também quem e como as estão fazendo. Esses componentes são uma extensão do Ambiente PROSOFT Cooperativo, fornecendo assim uma especificação formal de forma a garantir completeza, corretude e ausência de ambigüidades que são muito difíceis de se conseguir com uma descrição informal.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Para o desenvolvimento de sistemas interativos que respeitem critérios de usabilidade em adição aos critérios de qualidade convencionais, é necessário que, desde suas primeiras etapas, as áreas de Engenharia de Software (ES) e de Interação Humano- Computador (IHC) sejam consideradas, simultaneamente e de maneira integrada. Essas duas áreas investigam modelos, conceitos, técnicas e práticas que refletem diferentes perspectivas sobre a atividade de desenvolvimento, uma orientada mais ao sistema (ES) e outra, mais ao usuário (IHC). Para conciliar estas perspectivas, é necessário o estabelecimento de um entendimento mútuo e a utilização conjunta e integrada de conceitos, técnicas e práticas de desenvolvimento de ambas as áreas. Este trabalho visa mostrar as possibilidades desta integração, através da combinação dos conceitos de Casos de Uso (Use Cases) e Cenários (Scenarios), importantes técnicas de modelagem amplamente utilizadas respectivamente nas áreas de ES e IHC, em diferentes contextos, com diferentes visões; mas apresentando similaridades valiosas para propiciarem o uso complementar de ambas as técnicas. Para sistematizar esta integração, é proposta uma abordagem teleológica – baseada em objetivos – de construção sistemática de casos de uso com quatro diferentes níveis de abstração, desde os mais abstratos casos de uso essenciais até os cenários, aqui utilizados como instâncias concretas de casos de uso. Com esta abordagem, pretende-se construir um modelo de casos de uso que permita especificar requisitos funcionais, conjuntamente com requisitos de interação, de maneira compreensível e praticável e que sirva como ponto de partida à continuidade do desenvolvimento orientado a objetos de software. Com o intuito de exemplificar a proposta, é descrita e discutida a aplicação passo a passo desta abordagem a um exemplo.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Os requisitos direcionam o desenvolvimento de software porque são cruciais para a sua qualidade. Como conseqüência tanto requisitos funcionais quanto não funcionais devem ser identificados o mais cedo possível e sua elicitação deve ser precisa e completa. Os requisitos funcionais exercem um papel importante uma vez que expressam os serviços esperados pela aplicação. Por outro lado, os requisitos não funcionais estão relacionados com as restrições e propriedades aplicadas ao software. Este trabalho descreve como identificar requisitos não funcionais e seu mapeamento para aspectos. O desenvolvimento de software orientado a aspectos é apontado como a solução para os problemas envolvidos na elicitação e modelagem dos requisitos não funcionais. No modelo orientado a aspectos, o aspecto é considerado o elemento de primeira ordem, onde o software pode ser modelado com classes e aspectos. As classes são comumente usadas para modelar e implementar os requisitos funcionais, já os aspectos são adotados para a modelagem e implementação dos requisitos não funcionais. Desse modo, é proposta a modelagem dos requisitos não funcionais através das fases do ciclo de vida do software, desde as primeiras etapas do processo de desenvolvimento. Este trabalho apresenta o método chamado FRIDA – From RequIrements to Design using Aspects, cujo objetivo é determinar uma forma sistemática para elicitar e modelar tanto os requisitos funcionais quanto os não funcionais, desde as fases iniciais do ciclo de desenvolvimento. Em FRIDA, a elicitação dos requisitos não funcionais é realizada usando-se checklists e léxicos, os quais auxiliam o desenvolvedor a descobrir os aspectos globais – utilizados por toda a aplicação – bem como, os aspectos parciais que podem ser empregados somente a algumas partes da aplicação. O próximo passo consiste na identificação dos possíveis conflitos gerados entre aspectos e como resolvê-los. No método FRIDA, a identificação e resolução de conflitos é tão importante quanto a elicitação de requisitos não funcionais, nas primeiras fases do ciclo de vida do software. Além disso, é descrito como usar a matriz de conflitos para automatizar esse processo sempre que possível. A extração dos aspectos e sua modelagem visual são características muito importantes, suportadas pelo método, porque elas possibilitam a criação de modelos que podem ser reutilizados no futuro. Em FRIDA, é demonstrado como transformar os requisitos em elementos da fase de projeto (classes e aspectos) e como traduzir esses elementos em código. Outra característica do método FRIDA é que a conexão entre diagramas, que pertencem a diferentes fases do processo de desenvolvimento do software, permite um alto nível de rastreabilidade. Em resumo, FRIDA requer que o desenvolvedor migre de uma visão puramente funcional para outra que contemple também os requisitos não funcionais.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Mesmo depois de todas as novidades tecnológicas nos últimos anos, ainda existem muitos sistemas desenvolvidos com tecnologias antigas, muitas vezes ultrapassadas e obsoletas denominados sistemas legados. O problema do bug do ano 2000 funcionou como um excelente despertador para o fato de que não podemos nos esquecer do grande número de sistemas ainda em produção, e que são importantes para a empresa. Não se pode simplesmente descartar estes sistemas e é muito difícil migrar sistemas legados rapidamente para novas plataformas. Mais ainda, as regras de negócio que regem qualquer empresa são muito complexas para poderem ser modeladas e remodeladas em poucos meses e em seguida automatizadas porque a maior dificuldade em desenvolver sistemas não é escrever código nesta ou naquela linguagem, mas entender o que o sistema deve fazer. Este trabalho enfoca uma solução possível para o problema referente à migração de sistemas legados: a tradução destes sistemas legados da forma mais automatizada possível para que possam se beneficiar das novas tecnologias existentes deve ser o resultado final produzido. Assim, o objetivo desta dissertação é a investigação do problema de migração de sistemas legados e suas soluções assim como o desenvolvimento de uma ferramenta que traduz um sistema legado escrito na linguagem COBOL para PROGRESS, visando o aproveitamento do código e principalmente o aproveitamento de soluções de análise e projeto, que exigiram bastante esforço para serem elaboradas e poderiam ser reutilizadas em novos desenvolvimentos.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

As maiores dificuldades encontradas no teste de software estão relacionadas à definição dos dados de teste e a decisão de quando encerrar os testes. Uma das formas encontradas para minimizar tais dificuldades está centrada na utilização de critérios de cobertura. O principal objetivo dos critérios de cobertura é tornar o processo de testes mais rápido e preciso, fornecendo informações que determinem o que testar em um software para garantir sua qualidade. A modelagem é um dos elementos de maior importância nas atividades relacionadas ao desenvolvimento de software. Os modelos são construídos principalmente para melhor se entender o sistema, descrever a estrutura e comportamento desejados, visualizar a arquitetura e documentar as decisões tomadas durante o seu desenvolvimento. Atualmente, o sistema de notação mais utilizado para a modelagem de sistemas baseados nos conceitos de orientação a objetos é a Linguagem de Modelagem Unificada – UML [LAR 99]. Nesta notação, um sistema é descrito por um conjunto de diagramas que apresentam diferentes aspectos do sistema. As informações disponibilizadas por estes diagramas propiciam, já nas fases iniciais do desenvolvimento da aplicação (análise e projeto), o planejamento dos casos de teste e a definição de critérios de cobertura. Observa-se que nestas fases a maioria das informações necessárias para o teste já estão disponíveis, como por exemplo, a definição das classes com seus atributos, métodos e relacionamentos, a representação da interação existente entre objetos para a realização de um cenário e a descrição dos possíveis estados e transições de um objeto em resposta a eventos externos e internos. Este trabalho propõe um conjunto de diretrizes e critérios de cobertura de teste, tendo como base as especificações diagramáticas UML. As diretrizes estabelecem um conjunto de instruções para que o teste seja feito e os critérios de cobertura identificam os pontos principais e serem considerados durante o teste. Na definição das diretrizes e dos critérios foram avaliadas as informações disponibilizadas pelos diagramas de classes, seqüência, colaboração e estados.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

A presente tese visa contribuir na construção de ambientes de desenvolvimento de software através da proposição de uma arquitetura reflexiva para ambiente de suporte a processo, nomeada WRAPPER (Webbased Reflective Architecture for Process suPport EnviRonment). O objetivo desta arquitetura é prover uma infra-estrutura para um ambiente de suporte a processo de software, integrando tecnologias da World Wide Web, objetos distribuídos e reflexão computacional. A motivação principal para esta arquitetura vem da necessidade de se obter maior flexibilidade na gerência de processo de software. Esta flexibilidade é obtida através do uso de objetos reflexivos que permitem a um gerente de processo obter informações e também alterar o processo de software de forma dinâmica. Para se obter um ambiente integrado, a arquitetura provê facilidades para a agregação de ferramentas CASE de plataformas e fabricantes diversos, mesmo disponibilizadas em locais remotos. A integração de ferramentas heterogêneas e distribuídas é obtida através do uso de tecnologias Web e de objetos distribuídos. Reflexão computacional é usada no ambiente tanto para extrair dados da execução do processo, quanto para permitir a adaptação do mesmo. Isto é feito através da introdução e controle de meta-objetos, no metanível da arquitetura, que podem monitorar e mesmo alterar os objetos do nível base. Como resultado, a arquitetura provê as seguintes características: flexibilidade na gerência de processo, permitindo o controle e adaptação do processo; distribuição do ambiente na Web, permitindo a distribuição de tarefas do processo de software e a integração de ferramentas em locais remotos; e heterogeneidade para agregar componentes ao ambiente, permitindo o uso de ferramentas de plataformas e fornecedores diversos. Neste contexto, o presente trabalho apresenta a estrutura da arquitetura reflexiva, bem como os mecanismos usados (e suas interações) para a modelagem e execução de processo dentro do ambiente de suporte ao processo de software.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Muitos aplicativos atuais, envolvendo diversos domínios de conhecimento, são estruturados como arquiteturas de software que incorporam, além dos requisitos funcionais, requisitos não funcionais, como segurança, por exemplo. Tais requisitos podem constituir um domínio próprio, e, portanto, serem comuns a várias outras arquiteturas de software. Tecnologias como Programação Orientada a Aspectos, Reflexão Computacional e Padrões de Projeto colaboram no desenvolvimento de arquiteturas que provêem a separação de requisitos não funcionais. Porém, sua experimentação e adoção no domínio da segurança computacional ainda é incipiente. O foco deste trabalho é a elaboração de um padrão de projeto voltado à segurança, utilizando como arquitetura conceitual programação orientada a aspectos, e como arquitetura de implementação, reflexão computacional. A composição destas tecnologias resulta em um middleware orientado à segurança, voltado a aplicações desenvolvidas em Java. Estuda-se as tecnologias, seus relacionamentos com a área de segurança, seguido da proposta de uma arquitetura de referência, a partir da qual é extraído um protótipo do middleware de segurança. Este, por sua vez, provê mecanismos de segurança tão transparentes quanto possível para as aplicações que suporta. Com o objetivo de realizar a implementação do middleware de segurança, também são estudadas os mecanismos de segurança da plataforma Java, porém limitado ao escopo deste trabalho. Segue-se o estudo da base conceitual das tecnologias de Reflexão Computacional, o modelo de implementação, seguido de Programação Orientada a Aspectos, o modelo conceitual, e, por fim, têm-se os Padrões de Projeto, a arquitetura de referência. Integrando as três tecnologias apresentadas, propõe-se um modelo, que estabelece a composição de um Padrão Proxy, estruturado de acordo com a arquitetura reflexiva. Este modelo de arquitetura objetiva implementar o aspecto de segurança de acesso a componentes Java, de forma não intrusiva,. Baseado no modelo, descreve-se a implementação dos diversos elementos do middleware, estruturados de forma a ilustrar os conceitos propostos. Ao final, apresenta-se resultados obtidos durante a elaboração deste trabalho, bem como críticas e sugestões de trabalhos futuros.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Improvisação tem sido considerada uma característica importante para agentes que pretendem operar de maneira consistente com a situação do momento, exibindo um comportamento credível e interessante. A improvisação deve estar presente tanto nos agentes individuais quanto nas sociedades de agentes. Desta maneira, esta tese irá abordar estes dois aspectos da improvisação. Propomos a visão de que, agentes capazes de realizar improvisação, os agentes improvisacionais, são um tipo de agente deliberativo capaz de solucionar problemas por improvisação. Neste sentido, buscamos identificar dentro de uma arquitetura clássica de agentes deliberativos, a arquitetura BDI (belief-desire-intention), a existência e/ou a possibilidade da inclusão de componentes de improvisação nesta arquitetura. Para resolver problemas complexos, estes agentes precisam estar agrupados em sociedades e estas sociedades, por sua vez, precisam produzir comportamentos coerentes. A coordenação é a área da Inteligência Artificial responsável por este objetivo. Propomos que a coordenação de agentes que improvisam pode ser realizada por meio de um processo de direção improvisacional, no sentido usado no contexto do teatro improvisacional. Ao longo deste documento, iremos mostrar nosso entendimento sobre agentes improvisacionais como agentes deliberativos e coordenação como direção improvisacional. Com isto, defende-se nesta tese que o uso da improvisação em agentes improvisacionais possibilita que os agentes improvisem comportamentos interativos, de maneira coerente, melhorando seu desempenho como solucionadores de problemas, criando e mantendo uma ilusão de vida para os agentes interativos e contribuindo para o aperfeiçoamento dos sistemas multiagentes.

Relevância:

60.00% 60.00%

Publicador:

Resumo:

Esta tese propõe uma abordagem sistemática para gerenciar riscos em projetos de software, por meio da adaptação de processos. O objetivo da abordagem é permitir a elaboração de um processo específico para um dado projeto, visando minimizar a exposição do projeto aos riscos, identificados de acordo com o contexto do projeto. As atividades, possíveis de serem executadas em processos de projetos de uma organização, são estruturadas em um framework de processo (PRiMA-F), que inclui também os padrões de processo e organizacionais usados para descrever ações preventivas e corretivas aos riscos. A estruturação do framework básico, construído pela organização, poderá permitir distintas instanciações, como por exemplo, processos de acordo com o paradigma ágil ou planejado, ou em conformidade com normas de qualidade, como CMM e outras; além dos padrões organizacionais e de processo para gestão de riscos de projeto. PRiMA-F define o escopo maior do processo de software da organização e este é adaptado de acordo com os riscos identificados para o projeto e suas necessidades específicas, dando origem ao processo a ser usado no projeto. adaptação. Os guias descrevem como adaptar elementos de processo de acordo com o tamanho e o formalismo do projeto. Configurações de processo são modelos prédefinidos, visando atender projetos típicos ou modelos de qualidade. Prima-F pode ser estendida para novos riscos, padrões e processos, de acordo com as necessidades da organização. Utilizando o paradigma Goal/Question/Metric, no framework de processo (PRiMAF), são definidas métricas do processo de software, associadas aos riscos, para serem usadas para acompanhar o progresso dos fatores de risco, possibilitando ao gerente de projeto tomar ações corretivas, quando necessário e no momento adequado. As ações corretivas são descritas usando padrões organizacionais e de processo. Uma ferramenta de apoio à sistemática proposta (PRiMA-Tool) foi desenvolvida. Estudos de caso foram elaborados para validar a sistemática proposta