Analisador e Simulador de Redes de Petri
|
|
|
- Martim Wagner Pinhal
- 10 Há anos
- Visualizações:
Transcrição
1 Analisador e Simulador de Redes de Petri Felipe G. de Oliveira Lino 1, Alexandre Sztajnberg 1,2 1 Departamento de Informática e Estatística / Instituto de Matemática e Estatística 2 Programa de Pós-Graduação em Eletrônica / Faculdade de Engenharia Universidade do Estado do Rio de Janeiro (UERJ) [email protected], [email protected] Abstract. Petri Nets can be used on the modeling and verification of several operation system features such as concurrency and process synchronization, conflict verification, resource sharing, among others. This paper describes a tool, on-going development, which allows describing and verifying Petri Nets with the support of a graphical interface. This tool, based on the ARP, is being developed in Java and employs modern object oriented techniques and design patterns. In this way extensions to this tool, such as time constrains and the introduction of new verification strategies can be easily plugged. Resumo. As Redes de Petri têm aplicação na modelagem e verificação de várias características de sistemas operacionais como a concorrência e sincronização de processos, verificação de conflitos, compartilhamento de recursos, entre outros. Este artigo descreve uma ferramenta, em desenvolvimento, que permite a descrição e a verificação de Redes de Petri com o suporte de uma interface gráfica. Esta ferramenta, baseada no ARP, está sendo desenvolvida em Java e emprega técnicas modernas de orientação a objetos e design patterns. Desta forma extensões a ferramentas, tais como, restrições temporais e a introdução de novas estratégias de verificação, poderão ser plugadas com certa facilidade. 1. Introdução Neste artigo apresentamos uma ferramenta visual para a descrição, simulação e verificação de Redes de Petri desenvolvida em Java. O modelo básico da representação interna de uma rede e as verificações são inspiradas no Analisador de Redes de Petri (ARP) [Maz90]. Em nossa implementação o modelo de representação interna do ARP foi adaptado para beneficiar-se da orientação a objetos, e uma interface gráfica foi proposta para facilitar e aumentar a interatividade em todas as etapas de seu uso. Nas próximas seções destacamos os pontos importantes de nossa implementação, discutimos o modelo de objetos e os pontos possíveis de extensão. Ao longo do texto apresentamos também exemplos de alguns módulos da interface gráfica. 2. Redes de Petri Redes de Petri (RP, neste texto) são essencialmente grafos bipartite, compostos por três elementos principais: lugares, transições e arcos, que inicialmente teve sua aplicação no estudo de autômatos [Mar05]. Devido ao seu potencial de modelagem sua aplicação se estendeu para modelagem de sincronização de processos, concorrência, conflitos, compartilhamento de recursos, entre outros. As RPs modelam basicamente dois 898
2 aspectos de um sistema: eventos e condições, bem como as relações entre eles. Através dessas características é possível observar certas condições em cada estado do sistema. Estas por sua vez, podem possibilitar a ocorrência de eventos que podem alterar o estado do sistema. (Por uma questão de espaço não discutiremos detalhes sobre a mecânica de operação das RP) O formalismo matemático associado às RPs possibilita a verificação de propriedades dos sistemas modelados. Algumas propriedades são: 1. Uma rede é limitada se para todas as marcações acessíveis, a partir de uma marcação inicial, o número de fichas em qualquer lugar da rede não exceder K (inteiro). 2. Uma rede é segura se todos os seus lugares são seguros. Um lugar é seguro se seu número de fichas não exceder a K=1. Segurança é um caso especial da propriedade de limitação. 3. Uma rede é reinicializável ou própria se para todas as marcações possíveis da rede, existir uma seqüência de disparos que leve a rede a marcação inicial. 4. Uma rede é conservativa se o número total de fichas na rede se mantém. 5. Uma rede é viva quando todas as transições são vivas. Uma transição é viva se para toda marcação alcançável, existe uma seqüência de disparos, tal que a mesma tornese habilitada. 6. Ocorre um bloqueio na rede quando uma transição ou conjunto de transições não dispara. Um caso especial de bloqueio é o deadlock, quando nenhuma transição está habilitada para disparo. A capacidade de verificarem-se a presença ou ausência destas propriedades em uma rede permite a análise do sistema-alvo modelado. Em nossa ferramenta, além do suporte a edição gráfica de RPs, várias destas propriedades podem ser verificadas. 3. Trabalhos correlatos Em [PNW06] é mantido um repositório sobre Redes de Petri. Entre as informações, uma lista abrangente de ferramentas é disponibilizada, juntamente com uma análise das características relevantes de cada uma delas. A Tabela 1 compara algumas ferramentas com objetivos e características semelhantes à nossa, ou seja, construídas em Java que trabalham com RP clássicas. Tabela 1. Comparação de algumas ferramentas para Redes de Petri Atributos JARP PetriTool jpns Nosso trabalho Composição visual Simulação interativa Simulação automática Geração de árvore alcançabilidade Verificação de propriedades Resultados gráficos Persistir rede O Analisador de Redes de Petri (ARP) [Maziero 1990], desenvolvido em Pascal para o sistema operacional DOS 3.0 contém várias ferramentas para o uso de RP, como um editor textual, módulos de verificação, e módulos para o uso de temporização e com temporização estendida. A estrutura do ARP, algoritmos para verificação, e partes do seu código foram utilizadas como base para a nossa ferramenta. 899
3 Em nossa ferramenta procuramos aliar a interatividade, desde o editor até o token animation game, com a capacidade de simulação passo a passo, a geração da árvore de alcançabilidade, e a verificação de várias características. No estado atual, nossa ferramenta ainda não contempla a simulação e análise de RPs com características temporais (embora o arcabouço necessário esteja preparado, Seção 4.3), estocásticas ou de predicados no disparo de transições. Procuramos também facilitar a extensão através dos mecanismos de herança e reflexão estrutural de Java. As RP editadas são persistidas em XML, o que facilita também a interoperabilidade com outras ferramentas. 4. Implementação Nossa implementação é baseada na tecnologia de orientação a objetos fazendo uso de técnicas como herança, encapsulamento e polimorfismo, com o objetivo de prover reusabilidade e extensibilidade ao código do programa. Utilizamos a linguagem Java. A parte gráfica utiliza o pacote Swing e a API Forms fornecida pela JGoodies [JGoodies 2006]. Outra API, também open source, utilizada foi a XStream [XStream 2006], uma biblioteca simples para serializar objetos (no caso, os objetos representando a RP sendo editada) em XML, bem como para recompor os objetos a partir de sua representação flat em XML. Para nossa implementação criamos um pequeno framework para suporte multilíngüe, basicamente fazendo uso de arquivos properties, classes de interface e uma classe que liga esses elementos. Atualmente o programa possui como idiomas opcionais o português brasileiro e o inglês Arquitetura e Estrutura do Código A Figura 1 apresenta a arquitetura geral da ferramenta. A base da ferramenta é o modelo de objetos, que separa a parte gráfica e a análise. Através dessa separação é possível, por exemplo, reutilizar a engine de simulação e análise e adaptá-la a outra interface gráfica, ou utilizar a representação de uma RP com outras ferramentas de análise. O modelo de uma RP consiste de classes-base para representar os elementos lugar, transição, arco e Rede de Petri. Através de herança são criadas classes especializadas com atributos e métodos necessários para a interface gráfica. Este modelo é utilizado pelos outros módulos da ferramenta. Figura 1. Arquitetura da ferramenta 900
4 Na camada seguinte temos, então, os módulos que operam sobre o modelo de objetos da rede através da captura de eventos e emissão de notificações para os módulos de exibição. Assim, temos o Tratador da Área de Edição (PetriNetEditorCanvas), Tratador da Janela Principal (MenuActionListener, ButtonActionListener, PlaceActionListener, ArcActionListener e TransActionListener), Simulação (SimulationAction), Análise (AnalyzerAction). Na última camada temos os módulos de exibição: Janelas de Simulação e Resultados da Análise, que apresentam o resultado dos eventos de simulação e análise. Observa-se que as classes referentes à análise e simulação independem da interface gráfica e precisam apenas das informações contidas nos objetos-base do modelo de uma rede. A estrutura do código se divide em quatro tipos: (i) classes-base, usadas para trafegar informações entre a interface gráfica e a engine; (ii) classes da interface com usuário; (iii) classes da engine; e (iv) classes mediadoras. Na Figura 2, por exemplo, temos o diagrama de classes do caso da engine de simulação. As ações que dirigem a simulação são capturadas através da classe SimulationAction, que também notifica as ações para a interface gráfica, classe SimulationWindow, e para a classe que representa a rede estendida, PetriNetGraph (que contém informações de posicionamento, cor, etc. dos elementos básicos da rede). A simulação, propriamente dita é realizada pela classe ImplSimulator, que opera sobre a classe ImplPetriNetBase. Diagrama semelhante se aplica ao caso da análise. Detalhes sobre o código, pacotes Java e classes podem ser encontrados em [Lin07]. Figura 2. Separação entre a Simulação e o Modelo da Rede 4.2. Interface Gráfica A Figura 3 apresenta alguns exemplos de uso das ferramentas, destacando-se o editor gráfico. (a) apresenta detalhes da edição de arcos e transições. (b) e (c) apresentam a janela principal, com os menus de edição/ação, redes editadas e uma janela de simulação. (d) apresenta resultado de análise Extensões As classes que modelam o núcleo de uma Rede de Petri possuem atributos e métodos atualmente não utilizados pelo aplicativo já visando uma extensão. Por exemplo, o código já está preparado para Redes de Petri Temporizadas segundo o modelo de Merlin [Merlin 1976]. A classe TransitionBase possui os atributos: CurvaDensidade; StaticEarliestFiringTime e StaticLatestFiringTime, facilitando a configuração destas informações. 901
5 Novas análises podem ser adicionadas consultando-se a representação matricial da Rede de Petri, fornecida pelos métodos getinputmatrix, getoutputmatrix e getincidencematrix. Para mais verificações de propriedades, devem ser alteradas ou estendidas as classes PetriNetAnalyzer e PetriNetProperties. Todas as verificações feitas atualmente na rede, são executadas durante a construção da árvore de alcançabilidade, outras podem ser feitas após a construção da árvore o que exige que ela seja percorrida algumas vezes. Como as classes de simulação e análise da Rede foram construídas apenas usando-se a modelagem dos elementos básicos da rede, elas são completamente reutilizáveis. (a) (b) (c) Figura 3. Interface gráfica, exemplos de uso O formato do arquivo XML gerado para persistir uma rede editada assemelhase à estrutura da classe PetriNetGraph, uma vez que o arquivo persistido é espelho da classe. Contudo, pelas classes envolvidas na formação de uma RP possuírem apenas os atributos essenciais, o arquivo gerado torna-se parecido com outras representações de RP em XML, como PNML por exemplo [PNML 2005]. Assim sendo, é simples capturar os atributos principais de um arquivo em um formato qualquer e colocá-los na representação de XML de nossa implementação. O inverso também é possível, mas sempre dependerá da complexidade do formato do arquivo alvo. 5. Considerações finais A ferramenta apresentada está em desenvolvimento. O núcleo do código foi estruturado para facilitar a inclusão de novas características, tanto em relação ao modelo da rede, quanto às análises e a própria interface gráfica. Como exemplo, estamos trabalhando na inclusão de características temporais nas RP editadas. Como discutido, outras extensões como RP estocásticas ou redes coloridas podem ser adicionadas. (d) 902
6 A ferramenta desenvolvida está sendo utilizada no curso de Sistemas Operacionais no DICC/UERJ e no curso de Sistemas Concorrentes do PEL/UERJ. Através desta ferramenta os alunos simulam e verificam exemplos clássicos como produtores-cosumidores, leiores-escritores, ceia dos filósofos e outros programas concorrentes desenvolvidos ao longo do curso. A ferramenta também está sendo utilizada para simular protocolos de comunicação em que a expressividade das RPs clássicas é suficiente. Esperamos também atrair novos alunos para continuar o projeto. O código da ferramenta será aberto para a comunidade interessada em trabalhar em extensões e, obviamente a ferramenta será disponibilizada livremente. Na medida em que a ferramenta seja consolidada, iremos disponibilizar a mesma, e seu respectivo código, através de um sítio na Internet. Contribuições ao projeto serão bem-vindas. Agradecimentos. Gostaríamos de agradecer o Prof. Carlos Maziero (PUC-PR) pelo código fonte do ARP e sua documentação. Agradecemos o apoio parcial da Faperj (APQ1 E-26/ /2005). Referências Cardoso, J. e Valette, R. (1997). Redes de Petri, Editado na UFSC. de Souza Leão, J. L. (2004). Programação e Validação de Sistemas Multitarefa Capítulo 5 Redes de Petri, VI, 76 p, 29,7cm (Rio de Janeiro) COPPE/UFRJ, Gamma, E., Helm, R., Johnson, R. e Vlissides, J. (2003) Design Patterns Elements of Reusable Object-Oriented Software, Edited by Addison Wesley. Lino, F. G (2007). Implementação de uma ferramenta gráfica para Redes de Petri, Monografia de Graduação, DICC/IME UERJ. JGoodies (2006). Marranghello, N. (2005). Redes de Petri: Conceitos e Aplicações, Maziero, C. (1990). ARP - Analisador de Redes de Petri. Maziero, C. (1990). Um ambiente para a análise e simulação de sistemas modelados por redes de Petri, Tese de Mestrado, Universidade Federal de Santa Catarina.. Merlin, P.M. e Farber, D.J (1976). Recoverability of Communication Protocols Implication of a Theoretical Study. IEEE Transactions on Communications, págs Peterson, J. L. (1981). Petri Net Theory and the Modeling of Systems, Prentice-Hall,.J., 1981, ISBN: Petri Nets World (2006). TGI group at the University of Hamburg, Germany. PNML (2005). Software and Systems Engineering High-level Petri Nets, Part 2: Transfer Format. International Standard ISO/IEC Working Draft Version 0.9.0, June (Submitted for a ISO/IEC SC7 WD/CD registration and CD ballot). XStream (2006)
JSARP Simulador e Analisador de Redes de Petri
JSARP Simulador e Analisador de Redes de Petri Aluno: Felipe G. de Oliveira Lino Orientador: Alexandre Sztajnberg DICC / IME / UERJ Rio de Janeiro, RJ, Brasil felipelino44@gmail gmail.com, [email protected].
Seja uma rede de Petri definida pela tripla (L, T, A), e por sua marcação inicial M 0.
AULA 22 ESTUDO E APLICAÇÕES DAS REDES DE PETRI COMO MECANISMO DE DESCRIÇÃO DE SISTEMAS. 6. Propriedades das redes Seja uma rede de Petri definida pela tripla (L, T, A), e por sua marcação inicial M 0.
Apêndice A. Manual do Usuário JSARP
Apêndice A Manual do Usuário JSARP A.1. Introdução JSARP é um simulador e analisador de Redes de Petri. É um aplicativo que permite desenhar uma rede, fazer análises, verificar propriedades e simular sua
2 Teste baseado em modelo
2 Teste baseado em modelo O MBT tem-se tornado foco de estudos e experimentações práticas. Apesar das vantagens observadas, ainda há obstáculos para a adoção em grande escala de suas técnicas: Um deles
UML - Unified Modeling Language
UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril
Ferramentas de Modelação e Análise de Sistemas baseadas em Redes de Petri (RdP)
Ferramentas de Modelação e Análise de Sistemas baseadas em Redes de Petri (RdP) Existem inúmeras ferramentas (software) baseadas em RdP que permitem desenvolver modelar e analisar sistema de RdP. Algumas
3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio
32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio
Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena
Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto
Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto
Manual HPSim. 1 Introdução. 2 Instalação do Programa
Manual HPSim 1 Introdução O HPSim é um software para simulação de redes de Petri que apresenta uma interface intuitiva de fácil utilização. Entre suas vantagens está a possibilidade do acompanhamento da
Wilson Moraes Góes. Novatec
Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,
Introdução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Documento de Arquitetura
Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento
Sistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor
4 Um Exemplo de Implementação
4 Um Exemplo de Implementação Neste capítulo será discutida uma implementação baseada na arquitetura proposta. Para tanto, será explicado como a arquitetura proposta se casa com as necessidades da aplicação
Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: ([email protected]) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de
SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl
SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo
SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária
SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA
Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido
Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura
Engenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf ([email protected]) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA
Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos
Padrões. Projeto (Design) de Software
Padrões Projeto de Softwares Categorias de Padrões Processo de Tradução de modelos de análise (isentos de tecnologia, lógicos) para modelos de projeto (development-ready, físicos) Qual a Tecnologia Alvo
Especificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
3.1 Definições Uma classe é a descrição de um tipo de objeto.
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:
Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão
DCC / ICEx / UFMG Definição de Padrões Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para problemas recorrentes
Um Driver NDIS Para Interceptação de Datagramas IP
Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva [email protected] Sérgio Stringari [email protected] Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para
O Processo Unificado: Captura de requisitos
O Processo Unificado: Captura de requisitos Itana Gimenes Graduação em Informática 2008 Captura de Requisitos Modelagem do negócio: Visão de negócios Modelo de objetos de negócio de negócio Especificação
2 Diagrama de Caso de Uso
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:
BRAlarmExpert Software para Gerenciamento de Alarmes A TriSolutions conta com um produto diferenciado para gerenciamento de alarmes que é totalmente flexível e amigável. O software BRAlarmExpert é uma
Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso
Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso Lourival dos Santos Pires Júnior, Tony Carlos Bignardi dos Santos, Amaury Antônio de Castro Junior, Carlos Alberto da Silva, Leila Lisiane Rossi
CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE
CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma
Redes de Petri. Redes de Petri. Redes de Petri. Redes de Petri. Introdução. Lugares, transições e arcos. Lugares. Giovanni Cordeiro Barroso
Redes de Petri Redes de Petri Introdução Giovanni Cordeiro Barroso Ferramenta matemática e gráfica de uso geral, proposta por C. A. Petri (1962), permitindo: modelar o comportamento dos sistemas dinâmicos
Web Services: Metodologias de Desenvolvimento Carlos J. Feijó Lopes José Carlos Ramalho Fevereiro de 2004
Web Services: Metodologias de Desenvolvimento Carlos J. Feijó Lopes José Carlos Ramalho Fevereiro de 2004 1 Contextualização e arquitetura de funcionamento de um Web Service Os Web Services [PRV+01, Cer02]
Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto
Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha [email protected] http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento
Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki
Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável
2 Geração Dinâmica de Conteúdo e Templates de Composição
2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de
UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula
Programação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos
Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton
Aspectos técnicos do desenvolvimento baseado em componentes
Aspectos técnicos do desenvolvimento baseado em componentes Um novo processo de desenvolvimento O uso de componentes traz mudanças no processo de desenvolvimento Além de desenvolver um produto, queremos
Padrões de projeto 1
Padrões de projeto 1 Design Orientado Objeto Encapsulamento Herança Polimorfismo Design Patterns 2 Responsabilidades Booch e Rumbaugh Responsabilidade é um contrato ou obrigação de um tipo ou classe. Dois
Noções de. Microsoft SQL Server. Microsoft SQL Server
Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados
Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44
Armazenando Dados em Aplicações Java Parte 2 de 3: Apresentando as opções Hua Lin Chang Costa, [email protected], COPPE/UFRJ. Leonardo Gresta Paulino Murta, [email protected], IC/UFF. Vanessa Braganholo,
Estudo comparativo entre dois tradicionais algoritmos de roteamento: vetor distância e estado de enlace.
Estudo comparativo entre dois tradicionais algoritmos de roteamento: vetor distância e estado de enlace. Ederson Luis Posselt 1, Geovane Griesang 1 1 Instituto de Informática Universidade de Santa Cruz
DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3
DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil [email protected], [email protected] Resumo.
Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial
1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão
Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)
UML Felipe Denis M. de Oliveira Fonte: Alice e Carlos Rodrigo (Internet) 1 Programação O que é UML? Por quê UML? Benefícios Diagramas Use Case Class State Interaction Sequence Collaboration Activity Physical
6 Ferramenta de Apoio ao Processo de Desenvolvimento de Sistemas Multi-Agentes
6 Ferramenta de Apoio ao Processo de Desenvolvimento de Sistemas Multi-Agentes A ferramenta MAS-ML Tool surgiu com o objetivo de viabilizar o processo de desenvolvimento proposto na Seção anterior, implementando
Um Arcabouço open source em Python para DBC com
Um Arcabouço open source em Python para DBC com Suporte à Evolução Dinâmica não Antecipada Yguaratã C. Cavacanti 1, Hyggo Oliveira de Almeida 1, Evandro Costa 2 1 Instituto de Computação Universidade Federal
UFG - Instituto de Informática
UFG - Instituto de Informática Curso: Sistemas de Informação Arquitetura de Software Prof.: Fabrízzio A A M N Soares [email protected] Aula 3 Introdução à Arquitetura de Software (continuação)
Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER
Objetivo dessa aula é descrever as características e a simbologia dos diagramas UML e MER na modelagem de sistemas de informação de uma forma a permitir a comunicação entre técnicos e gestores. Modelagem
SOA - Service Oriented Architecture. Marcelo Canevello Ferreira
SOA - Service Oriented Architecture Marcelo Canevello Ferreira Índice Arquitetura baseada em componentes Introdução a SOA Principais conceitos de SOA SOA Framework Abordagem de integração Conclusões Evolução
Geração automática de suíte de teste para GUI a partir de Rede de Petri
Raquel Jauffret Guilhon Geração automática de suíte de teste para GUI a partir de Rede de Petri Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção do grau de Mestre pelo
IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR
IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR Jeferson J. S. Boesing 1 ; Manassés Ribeiro 2 1.Aluno do Curso
Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl
Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração
UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar
Usando o Arena em Simulação
Usando o Arena em Simulação o ARENA foi lançado pela empresa americana Systems Modeling em 1993 e é o sucessor de dois outros produtos de sucesso da mesma empresa: SIMAN (primeiro software de simulação
Engenharia de Requisitos Estudo de Caso
Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este
APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA
APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA Autores: Claudiléia Gaio BANDT; Tiago HEINECK; Patrick KOCHAN; Leila Lisiane ROSSI; Angela Maria Crotti da ROSA Identificação autores: Aluna do Curso
QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013
QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 Prezados Senhores da comissão de licitação da UENF, seguem alguns questionamentos acerca do edital de concorrência 01/2013 para esclarecimentos: 1. ANEXO
3 Serviços na Web (Web services)
3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem
Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9
Laboratório de Computação VI JAVA IDL Fabricio Aparecido Breve - 981648-9 O que é Java IDL? Java IDL é uma tecnologia para objetos distribuídos, ou seja, objetos em diferentes plataformas interagindo através
build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.
UNIP Sistemas de Informação Análise Essencial de Sistemas Prof.Marcelo Nogueira Análise Essencial de Sistemas 1 Introdução A produção de Software é uma atividade build and fix. Análise Essencial de Sistemas
ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br [email protected]
ANÁLISE E PROJETO ORIENTADO A OBJETOS Isac Aguiar isacaguiar.com.br [email protected] Análise Descrição do problema a ser implementado Descrição dos objetos e classes que fazem parte do problema, Descrição
Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:
Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código
ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.
ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página
Projeto Arquitetural do IEmbedded
Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Sistemas e Computação Disciplina: Projeto I Professora: Francilene Garcia Equipe: Carolina Nogueira de
Modelos de Sistema. 2007 by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.
Modelos de Sistema Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1 Objetivos Explicar por que o contexto de um sistema deve ser modelado como parte do processo de RE Descrever
UML Aula III Diagramas de Estado, Atividades, Componentes e Instalação
UML Aula III Diagramas de Estado, Atividades, Componentes e Instalação Ricardo Argenton Ramos Engenharia de Software II 2013.1 Diagrama de Estado Um diagrama de estados (statechart), também conhecido por
Manual dos Serviços de Interoperabilidade
MINISTÉRIO DO PLANEJAMENTO, ORÇAMENTO E GESTÃO Secretaria de Logística e Tecnologia da Informação Manual dos Serviços de Interoperabilidade Sumário Lista de Figuras...3 Lista de Tabelas...4 Introdução...5
Análise qualitativa do processo de workflow da ouvidoria do IFMG campus Bambuí: um estudo de caso
Análise qualitativa do processo de workflow da ouvidoria do IFMG campus Bambuí: um estudo de caso Estefânia Paula da SILVA¹; Lígia Maria SOARES PASSOS² ¹ Aluna do curso de Engenharia de Produção do IFMG
Capítulo 2 Introdução à ferramenta Flash
Capítulo 2 Introdução à ferramenta Flash Índice 1. O uso da ferramenta Flash no projeto RIVED.... 1 2. História do Flash... 4 1. O uso da ferramenta Flash no projeto RIVED. É importante, antes de iniciarmos
Governança de TI. ITIL v.2&3. parte 1
Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia [email protected] ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços
Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo
Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante
Sistemas Operacionais
Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno [email protected] http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura
MODELAGEM DE DADOS. Unidade II Arquiteturas do SGBD
MODELAGEM DE DADOS Unidade II Arquiteturas do SGBD 0 UNIDADE II: TÓPICOS: Tópico 1 - Arquitetura SGBD Tópico 2 - Etapas de um projeto de Banco de Dados Tópico 3 Modelagem Tópico 1 - Arquitetura SGBD A
Sistemas de Informação para Apoio à Decisão Gerencial
Sistemas de Informação para Apoio à Decisão Gerencial Sistemas de Apoio à decisão (DSS) Os sistemas de apoio à decisão (Decision Support System, ou DSS) são uma das principais categorias de sistemas de
Processamento de dados XML
Processamento de dados XML César Vittori [email protected] Outubro de 2000 Resumo Considerações no desenvolvimento de software para processar dados XML. Processamento de uma DTD para interpretar marcação
Microsoft.NET. Desenvolvimento Baseado em Componentes
Microsoft.NET Lirisnei Gomes de Sousa [email protected] Jair C Leite [email protected] Desenvolvimento Baseado em Componentes Resolução de problemas específicos, mas que podem ser re-utilizados em
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE
ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil [email protected]
Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)
Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo
Engenharia de software para desenvolvimento com LabVIEW: Validação
Engenharia de software para desenvolvimento com LabVIEW: Orientação a Objetos, Statechart e Validação André Pereira Engenheiro de Vendas (Grande São Paulo) Alexsander Loula Coordenador Suporte Técnico
2 Engenharia de Software
20 2 Engenharia de Software 2.1 Design de Sistemas Orientados a Objetos Os Sistemas Orientados a Objetos não são mais novidade hoje em dia já estando há muitos anos no mercado. A orientação a objetos permite
**Docentes do Centro Universitário Filadélfia- Unifil. computaçã[email protected]
COMPARATIVO DE PRODUTIVIDADE ENTRE UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE COM A ABORDAGEM DE LINHA DE PRODUTO DE SOFTWARE COM O PROCESSO DE DESENVOLVIMENTO DE SOFTWARE TRADICIONAL.(2011) **Docentes
Proposta de um método para auditoria de projetos de desenvolvimento de software iterativo e incremental
Proposta de um método para auditoria de projetos de desenvolvimento de software iterativo e incremental Francisco Xavier Freire Neto 1 ; Aristides Novelli Filho 2 Centro Estadual de Educação Tecnológica
Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre
Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS
Busca Estocástica Baseada em Planejamento para Maximizar Metas em Jogos de RTS Autor:Thiago França Naves 1, Orientador: Carlos Roberto Lopes 1 1 Programa de Pós-Graduação em Ciência da Computação Universidade
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Android Android é um sistema operacional para dispositivos móveis Kernel Linux, drivers e bibliotecas do
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Biblioteca 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e garantir
4 Estratégias para Implementação de Agentes
Estratégias para Implementação de Agentes 40 4 Estratégias para Implementação de Agentes As principais dúvidas do investidor humano nos dias de hoje são: quando comprar ações, quando vendê-las, quanto
Exemplo de aplicação Car Parking 1in1out
Animator Exemplo de aplicação Car Parking 1in1out Neste documento será apresentado um exemplo de aplicação de um parque de estacionamento com uma entrada, uma saída, e três lugares livres de estacionamento.
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena
INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Gestão Hoteleira 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e
Feature-Driven Development
FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por
Curva ABC. Tecinco Informática Ltda. Av. Brasil, 5256 3º Andar Centro Cascavel PR www.tecinco.com.br
Curva ABC Tecinco Informática Ltda. Av. Brasil, 5256 3º Andar Centro Cascavel PR www.tecinco.com.br Sumário Introdução... 3 Utilização no sistema TCar-Win... 3 Configuração da curva ABC... 4 Configuração
MANUAL DO USUÁRIO. AssetView FDT. AssetView FDT
MANUAL DO USUÁRIO AssetView FDT AssetView FDT A S T V W F D T M P www.smar.com.br Especificações e informações estão sujeitas a modificações sem prévia consulta. Informações atualizadas dos endereços estão
