Maringá PR, Março de 2.000

Tamanho: px
Começar a partir da página:

Download "Maringá PR, Março de 2.000"

Transcrição

1 1 UNIVERSIDADE ESTADUAL DE MARINGÁ PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA PIBIC/CNPq-UEM DEPARTAMENTO DE INFORMÁTICA ORIENTADORA: Dra. Itana Maria de Souza Gimenes Bolsista: Edson Alves de Oliveira Junior INTRODUÇÃO DE MÉTRICAS DE PRODUTOS DE SOFTWARE EM UMA FERRAMENTA DE WORKFLOW Maringá PR, Março de 2.000

2 2 UNIVERSIDADE ESTADUAL DE MARINGÁ PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO CIENTÍFICA PIBIC/CNPq-UEM DEPARTAMENTO DE INFORMÁTICA ORIENTADORA: Dra. Itana Maria de Souza Gimenes Bolsista: Edson Alves de Oliveira Junior INTRODUÇÃO DE MÉTRICAS DE PRODUTOS DE SOFTWARE EM UMA FERRAMENTA DE WORKFLOW Relatório semestral de projeto de iniciação científica Maringá PR, Março de 2.000

3 3 ÍNDICE ANALÍTICO 1. INTRODUÇÃO OBJETIVOS DESENVOLVIMENTO (MATERIAIS E MÉTODOS) GERENCIAMENTO DE PROJETOS DE SIMULAÇÃO ABORDAGENS ADOTADAS NA SIMULAÇÃO Abordagem baseada em eventos Simulação discreta baseada em eventos DESENVOLVIMENTO E COMPORTAMENTO DO P/PSIM Eventos Agenda de eventos (lista de eventos futuros) Rotinas dos eventos do P/pSim Método das três fases ALGORITMO DE SIMULAÇÃO RESULTADOS PARCIAIS E DISCUSSÃO LINGUAGEM DE IMPLEMENTAÇÃO X SIMULAÇÃO GRÁFICA CARACTERÍSTICAS DISPONÍVEIS DO P/PSIM CONCLUSÕES PARCIAIS REFERÊNCIAS BIBLIOGRÁFICAS Anexo I Documentação das classes implementadas no P/pSim.

4 4 1. Introdução Com o surgimento de novas tecnologias e o avanço das já existentes, a indústria de produção, de um modo geral, incluindo a informática, ou mais precisamente a área de engenharia de software, tomou novos rumos com relação ao processo de produção. A concorrência, empregada pelos vários setores da indústria de produção, influenciada pelos avanços tecnológicos e conseqüente aumento na produção para atender a demanda, trouxe à tona umas das mais complexas questões com relação à produção. Estamos falando da qualidade dos produtos. Quando consideramos a engenharia de software vimos que a questão de qualidade não se difere das demais áreas, devido à extrema importância que a área tem para a sociedade. A qualidade dos produtos de software tem sido muito enfocada, pois a cada dia descobrimos novas técnicas, novas abordagens e novos conceitos com relação à construção de software com qualidade. Essa mentalidade de valorizarmos a qualidade dos produtos não é recente. Atualmente passamos por um processo de transição no foco de produção, dando também uma grande ênfase a qualidade dos processos. Isto pois um processo de boa qualidade obviamente gera um produto de qualidade igual ou superior à um produto gerado por um processo onde não temos a preocupação de quantificarmos a sua qualidade. Em todos os setores da indústria de produção existem maneiras de medirmos a qualidade de seus produtos. Os produtos de software também precisam ter sua qualidade medida, porém, esta questão é um pouco mais complexa. Atualmente não existem métricas precisas para a medição de um software, o que existe na verdade são métricas ainda não bem definidas que auxiliam na medição. A simulação de processos juntamente com a modelagem de software e as técnicas de gerenciamento de workflow [Wfm95] podem nos auxiliar na obtenção de métricas de software mais precisas. Sistemas de Workflow, que já foi objeto de estudo em [Yan97, Yan98], caracteriza-se por ser de fácil implementação em qualquer ambiente, tornando um processo de negócios automatizado em um todo, ou em parte. No nosso caso, esse processo de negócios é o processo de engenharia de software. O presente relatório descreve as atividades desenvolvidas e os resultados parciais do projeto Introdução de Métricas de Produtos de Software em uma Ferramenta de Workflow durante o período de 01/08/1999 a 28/02/2000. Deste modo, o relatório

5 5 descreve as atividades até aqui realizadas, conceitos fundamentais da simulação de processos, utilizada nesta primeira parte do projeto, as classes implementadas na simulação, justificativas para utilização da abordagem de simulação discreta baseada em eventos, e expectativas com relação à segunda parte do projeto. O relatório está estruturado da seguinte maneira: a seção 2 apresenta os objetivos do projeto desenvolvido. A seção 3 apresenta a metodologia de desenvolvimento utilizada. Na seção 4 apresentam-se os resultados e avaliações consideradas durante o desenvolvimento deste. Finaliza-se com a discussão na seção 5, dos resultados parciais obtidos do projeto.

6 6 2. Objetivos O objetivo principal desta primeira parte deste projeto é desenvolver o módulo de simulação de processos (P/pSim) para a ferramenta de coleta e avaliação de métricas para processos de software baseada no modelo Produto/processo (P/pTool) [Kap94, Kap95, Yan99]. Apesar deste não ser o principal objetivo deste projeto, é de suma importância a conclusão desta etapa, pois a partir do módulo P/pSim construído é que poderemos definir melhor os processos (objetivo principal da ferramenta P/pTool). A simulação também auxiliará na introdução de métricas de produtos e definição de métricas de software. Desta maneira, os objetivos da primeira parte do projeto são: Estudar as técnicas de modelagem baseadas no modelo Produto/processo [Kap94, Kap95]; Avaliar o estudo das técnicas de simulação aplicadas ao sistemas de workflow em [Yan99]; Definir uma abordagem de implementação da simulação para o P/pSim; Desenvolver o módulo P/pSim; Avaliar os resultados obtidos.

7 7 3. Desenvolvimento (Materiais e Métodos) O primeiro passo deste projeto foi o estudo e avaliação da ferramenta desenvolvida por [Yan99], objetivando uma melhor compreensão sobre as técnicas utilizadas em seu desenvolvimento e o comportamento. A P/pTool é composta por três módulos: o módulo principal, onde os processos são derivados e manipulados através dos módulos de Coleta de dados sobre produtos e processos reais, e Análise de produtos e processos; o módulo de simulação de processos (P/pSim); e o módulo de assistência inteligente à derivação de processos (P/pDerive). Como o objetivo principal desta primeira parte do projeto é o desenvolvimento do módulo P/pSim, descreveremos alguns aspectos importantes com relação à simulação de sistemas como: a abordagem adotada, o gerenciamento de um projeto de simulação e as classes implementadas (documentação das classes vide Anexo I). Igualmente a [Yan99], o P/pSim está sendo desenvolvido na linguagem de programação Java (Java 2), devido à existência de uma API 1 própria para a manipulação de objetos gráficos (a Java 2D API), o que as outras linguagens não dispunham Gerenciamento de Projetos de Simulação A primeira etapa na construção de um ambiente de simulação é definir os passos para o projeto de simulação. Segundo [Ban98] existem alguns passos imprescindíveis para um projeto de simulação: 1. Definir explicitamente o problema o modelo P/p tem como característica própria a definição explícita de um processo, permitindo modelar as várias etapas do processo de software ou de processos genéricos 2. Como o objetivo principal da ferramenta é a obtenção de métricas de software, podemos definir claramente o problema como sendo a simulação do processo de software. 1 API Application Program Interface é uma interface para a programação de aplicações, muito usada para a manipulação gráfica. 2 Processos Genéricos: processos cuja estrutura não está de acordo com os padrões definidos pelo modelo P/p. Através da aplicação das regras definidas pelo modelo P/p sobre estes processos, obtém-se processos normalizados [Kap94, Kap95].

8 8 2. Entender o sistema que será simulado em conjunto com o item anterior, temos a definição por completo do sistema a ser simulado, uma vez que o modelo P/p baseiase essencialmente nos atributos de cada modelo para a derivação dos processos, e a simulação trabalhará com esses atributos, mudando o estado dos processos e produtos através de eventos. 3. Determinar as metas e objetivos o objetivo principal do P/pSim, como já citado anteriormente, é auxiliar na definição de métricas de software mais precisas, usando para isso os atributos dos modelos. 4. Aprender os conceitos fundamentais e abordagens de simulação os conceitos fundamentais de simulação foram estudados e descritos em [Yan99]. As abordagens adotadas foram a simulação baseada em eventos e a simulação discreta, que serão melhor descritas na seção Confirmar que a simulação é a técnica certa para o problema a simulação vem sendo muito usada como uma forma de analisar o comportamento de um sistema e como uma ferramenta de apoio à tomada de decisões. Dentro deste aspecto são apresentados alguns fatores que mostram que a simulação é o caminho certo para a solução do problema como: 5.1. Simulação é utilizada para resolver um problema específico, mais precisamente a definição de métricas de software através do processo de software, visto que este não é um problema comum Através da instrumentação estatística e relatórios podemos estudar o comportamento do processo através do tempo, onde processos atuam sobre produtos através de eventos, mudando seus estados e gerando informações sobre as várias situações a qual o sistema foi submetido. 6. Obter suporte do gerente de projetos de simulação o suporte está relacionado com o perfeito acompanhamento do projeto do P/pSim em todos os seus passos; 7. Aprender sobre software de simulação o P/pSim não está sendo desenvolvido em uma linguagem de simulação específica, mas em uma linguagem de programação de propósitos gerais, como já citado anteriormente; 8. Determinar os dados de entrada necessários e o que está disponível os dados de entrada são os dados necessários para que o ambiente de simulação possa ser iniciado. No caso do P/pSim, os dados de entrada são os atributos de produto e processo, onde a simulação atuará.

9 9 9. Desenvolver um conjunto de suposições relacionadas com o problema essas suposições relacionadas diretamente com o problema ajudam na definição de alguns aspectos como: propor as condições iniciais do ambiente de simulação, definir um algoritmo de controle de simulação eficiente. 10. Determinar as saídas necessárias para a solução do problema podemos entender saídas necessárias para a solução do problema como todas aquelas informações sobre o comportamento dos processos e produtos através do tempo, proporcionando uma base para a tomada de decisões, como por exemplo, a geração de relatórios e estatísticas sobre as transformações ao longo do tempo dos processos e produtos. Podemos observar que um projeto de simulação bem definido e que segue estes passos gerenciais pode prover um auxílio essencial com relação à solução do problema (no nosso caso a obtenção de métricas de software mais precisas). A simulação de um modo geral tem como característica a geração de relatórios e estatísticas que auxiliam na análise do comportamento dos modelos envolvidos na simulação gerando saídas modeladas de acordo com o propósito da simulação, por exemplo, dirigindo-nos às métricas mais reais de medida de software. 3.2 Abordagens adotadas na simulação Existem várias abordagens para simulação, que são: simulação baseada em eventos, simulação baseada em atividades e simulação baseada em processos [Car88]. Cada uma destas abordagens deriva duas outras abordagens que são: simulação discreta e simulação contínua. A seguir são descritos dois tipos de abordagens adotadas no P/pSim. Uma delas é a abordagem baseada em eventos e a outra é a abordagem de simulação discreta baseada em eventos. A segunda abordagem é uma abordagem derivada da primeira Abordagem baseada em eventos Segundo [Car88], eventos são instantes em que ocorrem mudanças em um determinado ponto e coincidem com o início e o fim de uma atividade. Na abordagem baseada em eventos, após inicializado o modelo, o executivo, também chamado monitor e

10 10 que tem a função de controlar o relógio da simulação e disparar as rotinas dos eventos, procura todos os tempos dos eventos bounds agendados e atualiza o relógio da simulação para o tempo do próximo evento a ocorrer. Seguindo um evento bound, eventos condicionais podem ou não ocorrer. Isso porque os eventos bounds se caracterizam por terminar uma atividade e mudar o estado atual do modelo, permitindo ou não que eventos condicionais ocorram, se as condições do modelo permitirem. As rotinas de eventos condicionais podem ser chamadas diretamente de cada rotina do evento, ou, em modelos mais simples, o código pode estar incorporado na própria rotina do evento. Alternativamente, o executivo pode chamar as rotinas de eventos condicionais. Um exemplo de diagrama de executivo para este tipo de abordagem é apresentado na figura 1: Figura 1: Diagrama de um executivo baseado em eventos [Car88].

11 Simulação discreta baseada em eventos A simulação discreta baseada em eventos caracteriza-se por: variáveis do sistema têm seus valores definidos apenas em instantes de tempo nos quais ocorrem eventos (tempos isolados); sistema é descrito por um conjunto de regras que determinam o o tempo do próximo evento (agendamento de eventos) o as alterações nos valores das variáveis. A simulação discreta não trabalha com variáveis cujos valores variam continuamente ao longo do tempo (uma das principais características da simulação contínua). O Intervalo de Tempo ( t) utilizado para o avanço do relógio, quando falamos de simulação contínua, é muito pequeno, não estando portanto de acordo com o intuito da construção do P/pSim. Além disso, o intervalo de tempo é definido de acordo com o tipo de equação do sistema. A simulação contínua é muito utilizada em sistemas que eventos ocorrem em um intervalo de tempo muito pequeno, sendo portanto, necessários para uma compreensão e análise rápida dos resultados obtidos. Como o sistema que pretendemos simular depende muito da análise eficiente e mais detalhada dos atributos dos modelos (produto e processo) para se obter estatísticas e melhorar a qualidade dos processos, uma análise em um intervalo de tempo pequeno (simulação contínua) seria pouco satisfatória ao objetivo deste trabalho. Isso sem citarmos que as variáveis do modelo (atributos dos modelos) não se modificam continuamente ao longo do tempo, mas sim quando ocorrem eventos em tempos isolados. Diante de todos estas características apresentadas acima, a abordagem adotada para o P/pSim foi a abordagem de simulação discreta baseada em eventos. 3.3 Desenvolvimento e comportamento do P/pSim A ferramenta P/pTool é constituída por um modelo com duas entidades principais: produtos e processos. Um processo atua sobre um produto de modo que cada processo gera um produto de saída diferente do produto de entrada, como visto na figura 2, conforme descrito em [Yan98a]. Dessa forma, a simulação de processos se concentra principalmente nos atributos de produto e processo.

12 12 Produto 1.1 t1 Produto 1 t1 c Produto 1.2 t1 Legenda: c d Produto 2.1 Produto 2 t2 t2 Processo 1 d Duração composição t1 decomposição Produto 2.2 t2 Processo 2 Processo 3 Duração t3 Produto n no tempo tn Processo p Duração t2 Produto 3.1 t3 Produto 3 t3 c Produto 3.2 t3 Figura 2: Exemplo de rede Produto/processo, segundo [Kap94, Kap95]. Geralmente a simulação discreta baseada em eventos de um sistema envolve entidades que transitam através de processos, filas de entidades, eventos de chegada e partida de uma entidade em um processo, agendamento de eventos e controle do fluxo de tempo através de um monitor. Na linguagem de simulação, um processo é chamado de atividade. O P/pSim possui todos estes elementos citados acima, mas se difere em apenas um aspecto. Normalmente, em simulação discreta, todas as entidades giram em torno de um único processo, por exemplo, uma fila de um banco onde todos os clientes (entidades) passam pelo processo atender o cliente em um guichê. Como a P/pTool gera vários processos que possuem atributos e características diferentes, podemos entender que cada processo possui a sua própria simulação, ou seja, cada processo possui uma fila de entidades (produtos) que passam por ele e que se modificam, e ainda podem servir aos outros processos. Porém, o conjunto de todos os processos do modelo está submetido a uma mesma agenda de eventos, já que o avanço do tempo é discreto e comum a todos os processos. No P/pSim uma atividade é entendida como a atuação de um processo sobre um produto. Foi implementada a classe Events para definir os eventos do P/pSim (vide Anexo I). Após a inicialização do sistema a ser simulado, o executivo, que é o algoritmo que faz o controle de simulação e será explicado na seção 3.4, busca os tempos em que cada evento foi agendado, na agenda de eventos futuros, e avança o relógio de simulação (clock) para o tempo em que o próximo evento ocorrerá. Então, chama-se a rotina que processará as mudanças no sistema como resultado daquele evento.

13 13 Existe uma rotina associada a cada evento. Estas rotinas foram implementadas na classe Monitor. Após a execução de um evento, as condições podem permitir que um ou mais eventos condicionais dependentes deste ocorram. A rotina para o evento condicional inclui os testes para determinar se as condições do sistema permitem que o evento ocorra. Em caso afirmativo, as ações da rotina são executadas. Estas ações incluem as mudanças resultantes do evento, que correspondem ao início de uma atividade, e o agendamento do próximo evento correspondente ao fim da atividade Eventos Um dos pontos mais caracterizantes no processo de simulação de um sistema é a capacidade de a todo instante estar ocorrendo eventos independentes. No P/pSim por exemplo, a chegada de um produto em um processo é um evento condicional ao processo e independente da chegada de um outro produto em um outro processo, uma vez que ocorrem entre entidades e processos diferentes, mas que compartilham a mesma agenda de eventos. Como foi adotada a abordagem de simulação discreta baseada em eventos, podemos notar que no P/pSim temos dois tipos de eventos: eventos condicionais e eventos bound. Eventos condicionais são aqueles eventos que dependem das condições do modelo (no caso o processo) para que sejam iniciados. No P/pSim este evento é a chegada de um produto em um processo. Exemplificando: temos um produto X chegando em um processo Y. O evento de chegada de X em Y depende dos atributos do processo Y como: O processo está livre (Status)?, O produto é conformante com o processo (parâmetro de conformância)? A figura 3 representa o evento condicional descrito acima:

14 14 Figura 3: evento condicional do P/pSim: chegada de um produto em um processo, segundo a descrição do evento condicional. Eventos bound são aqueles eventos que caracterizam o término de uma atividade. Esses eventos são independentes das condições do modelo. No P/pSim este evento é a saída de um produto de um processo. Este é o único tipo de evento que pode ser adicionado à agenda de eventos, uma vez que um evento condicional não precisa ser agendado e pode ocorrer a qualquer momento. Um evento bound depende da duração de um processo ( t) para ocorrer. Eventos são representados por estruturas de dados que devem incluir: tipo do evento; parâmetros; tempo de escalonamento (tempo de agendamento) Agenda de eventos (lista de eventos futuros) O mecanismo para avanço do tempo de simulação e garantia de que todos os eventos ocorrerão em ordem cronológica está baseado em uma lista de eventos futuros (Future Event List). Esta lista possui todos os eventos que deverão ocorrer em um tempo futuro. Agendar um evento futuro significa que em um dado instante uma atividade (processo) inicia, sua duração é computada e o evento que finaliza esta atividade é colocado na lista de eventos futuros (como já citado, somente eventos bound são

15 15 agendados). A lista de eventos é ordenada de acordo com a ordem cronológica de seus eventos. O algoritmo de avanço do tempo segue os seguintes passos: 1. remover o evento iminente da agenda (lista de eventos futuros); 2. avançar o Clock (relógio) para o tempo do evento iminente; 3. executar o evento iminente: atualizar o estado do sistema e mudar os atributos das entidades; 4. gerar eventos futuros, se necessário, e coloca-los na agenda ordenados pela ordem cronológica do tempo do evento; 5. atualizar estatísticas. A tabela 1 ilustra um possível tipo de agenda de eventos: Agenda de Eventos (Lista de Eventos Futuros) Tempo Tipo Parâmetros Descrição t1 5 x1, x2, x3 Evento do tipo 5, ocorrerá no tempo t1. t2 3 x2, x7 Evento do tipo 3, ocorrerá no tempo t2. t3 4 y3, y9 Evento do tipo 4, ocorrerá no tempo t3. Tabela 1: Exemplo de uma agenda de eventos. Cada linha desta tabela representa um evento agendado. Neste exemplo temos t1 < t2 < t3, mostrando que os eventos estão arranjados em uma ordem cronológica de tempo de agendamento; 5, 3, 4 são os tipos de eventos e x1, x2, x3, x7, y3, y9 são parâmetros dos eventos Rotinas dos eventos do P/pSim Como já foi descrito na seção 3.3.1, o P/pSim possui dois tipos de eventos: um condicional, representando a chegada de um produto em um processo, e um bound, representando a saída de um produto de um processo.

16 16 Cada um desses eventos possui uma rotina em particular que através dos atributos dos produtos e processos modifica o estado geral do modelo. Nesta seção será descrito o algoritmo dos eventos em PDL 3 [Pre95]. A rotina Chedada-do-Produto a ser apresentada é a chegada de um produto em um processo. Podemos notar que como este evento é condicional, é necessário que alguns requisitos sejam satisfeitos para que o produto possa ser aceito pelo processo em questão. Um destes requisitos, segundo [Kap94, Kap95], é que o produto candidato seja conformante com o domínio de produtos que o processo possui. O produto deve ser adequado para o processo, caso contrário o mesmo é rejeitado. Outra requisito importante é saber se o processo está ocupado ou disponível. Caso o processo esteja ocupado e o produto seja conformante com o processo, então este produto é colocado na fila de produtos que cada processo possui, caso contrário, o processo atua sobre este produto. Esta rotina é apresentada na tabela 2. rotina Chegada-do-Produto inicio se (Processo.Teste-Conformancia) E (Processo.Param-Status = Livre ) então inicio Processo.Param-Status <- Ocupado Calcular Processo.Duração Agendar Saída-do-Produto em Produto.Tempo-escalar + Processo.Duração Fim Senão se (Processo.Param-Status = Ocupado ) E ( Processo.Teste-Conformancia) Então Colocar Produto na Fila-do-Processo Senão Rejeitar Produto Agendar Chegada-de-Produto em Produto.Tempo-escalar + Tempo-entre-Produtos Fim Tabela 2: Rotina do evento condicional chegada de um produto em um processo. 3 PDL Program Design Language é uma linguagem utilizada em projetos de software, que representa um pseudo-algoritmo.

17 17 A rotina Saída-do-Produto a ser apresentada é a saída de um produto de um processo. Esta rotina é de fácil compreensão, uma vez que ela não depende das condições do processo envolvido. Primeiramente o tempo escalar do produto, um dos atributos fundamentais deste modelo, é atualizado para o tempo de saída. Logo em seguida é verificado se existe algum produto na fila do processo em questão. Caso a fila não esteja vazia, esse produto é então removido da fila e passa a fazer parte do processo. No caso da fila estar vazia, o parâmetro de status do processo, um dos atributos fundamentais deste modelo, é atualizado e o processo passa a ficar disponível para um outro produto. Esta rotina é apresentada na tabela 3. rotina Saída-do-Produto Inicio Produto.Tempo-escalar <- Produto.Tempo-escalar + Processo.Duração Se Fila-do-Processo não está vazia Então inicio Remover Produto da Fila Calcular Processo.Duração Agendar Saída-do-Produto Fim Senão Processo.Param-Status <- Livre Fim Tabela 3: Rotina do evento bound saída de um produto de um processo Método das três fases O método das três fases é uma estrutura de modelagem muito utilizada em simulação. O objetivo principal é o controle do fluxo do tempo em sistemas que adotam a simulação discreta baseada em eventos. O tempo é avançado até que haja uma mudança de estado do sistema. O sistema é examinado para determinar todas as atividades que devem ser finalizadas, eventos bound. Em seguida, são iniciadas as atividades, eventos condicionais, de acordo com as condições do modelo. As três fases de controle deste fluxo do tempo são:

18 18 Fase A: remover o evento iminente da lista de eventos futuros e avançar o relógio para o tempo deste evento (seguindo o algoritmo e avanço do tempo, descrito na seção 3.3.2). Fase B: executar todos os eventos bound que foram removidos da lista de eventos futuros. Fase C: iniciar quaisquer atividades que as condições do modelo permitam. De acordo com as atividades que cada fase executa, podemos resumi-las como: Fase A: avançar o relógio. Fase B: executar eventos bound. Fase C: iniciar eventos condicionais. O algoritmo de controle de simulação utilizado para gerenciar todo o processo de simulação do ambiente se baseia no método das três fases. O algoritmo está descrito na seção seguinte. 3.4 Algoritmo de simulação Uma dos fatores importantes para um ambiente de simulação é o seu comportamento que é representado pelo algoritmo de controle da simulação. De um modo geral, os algoritmos de controle de simulação são muito parecidos, salvo algumas diferenças mínimas dos diversos ambientes, mas na sua estrutura, a maioria destes algoritmos segue o mesmo caminho. O algoritmo de controle de simulação do P/pSim é apresentado na tabela 4 e descrito logo após:

19 19 Algoritmo-Controle-Simulação Inicio Inicializar o modelo Enquanto existir evento futuro faça Inicio Encontrar próximo evento futuro Atualizar o tempo do modelo Enquanto existir evento no tempo atual do modelo faça Inicio Identificar próximo evento no tempo atual Processar evento Atualizar o estado do modelo Coletar estatísticas Fim Fim Gerar relatórios Fim Tabela 4: Algoritmo de controle de simulação do P/pSim. Primeiramente, quando iniciamos o processo de simulação, precisamos definir o estado inicial do modelo. Inicializar o modelo: significa definir todas as condições necessárias para que o ambiente possa ser simulado, como por exemplo: zerar ou inicializar todas as variáveis com valores default ou apropriados. Em seguida precisamos identificar o próximo evento futuro. Isto significa encontrar o próximo evento na agenda de eventos. A seguir precisamos atualizar o tempo do modelo, que atualiza o clock de simulação, para isso, executando todos os passos do algoritmo de avanço do tempo, já descrito na seção Identificar próximo evento no tempo atual significa verificar se há mais algum evento à ocorrer no tempo atual do clock. Identificado o evento, é preciso processar este evento, atualizando o estado do modelo, ou seja, atualizar todas as variáveis dos modelos e em seguida coletar estatísticas em cima das modificações do estado do modelo. Feito isso, precisamos verificar se existe mais algum evento no tempo atual do clock. Em caso positivo, devemos retornar a etapa de identificar próximo evento no tempo atual, e em caso negativo é preciso saber se há mais algum evento futuro

20 20 agendado. Caso haja, então retornamos ao segundo passo do algoritmo de simulação que é identificar o próximo evento futuro, caso contrário gerar relatórios é a etapa a seguir. Como vemos na descrição acima e na tabela 4, o algoritmo de controle de simulação não é de difícil compreensão, mas exige um grande esforço na sua implementação, uma vez que precisamos trabalhar com várias estruturas de dados também implementadas, como: agenda de eventos, os eventos propriamente ditos, e as rotinas que cada evento executa quando necessárias.

21 21 4. Resultados Parciais e Discussão A simulação é a imitação de um processo do mundo real ou de um sistema através do tempo. Ela envolve a geração de uma situação artificial de um sistema e a observação desta situação para provermos inferências com respeito ao comportamento e características do sistema real que é representado [Ban98]. A simulação, então, é vista como uma metodologia indispensável para auxiliar na busca de uma solução para qualquer problema do mundo real. A maior utilização da simulação está relacionada à descrição e análise do comportamento de um sistema, questionando o seu desempenho, e apoiando na tomada de decisões com relação ao modelo. Tanto modelos existentes quanto os conceituais podem ser simulados. Um ponto de suma importância neste projeto é a capacidade de usarmos a simulação juntamente com as técnicas de gerenciamento de workflow modelando um processo de acordo com [Kap94, Kap95]. O objetivo final é provermos métricas de software mais precisas, porém, para tal é preciso definir precisamente o processo de produção de software. Esta discussão já se estende desde projetos anteriores [Yan98, Yan98a], e vem se concretizando com o estudo das técnicas simulação e o desenvolvimento do módulo de simulação de processos P/pSim. O módulo de simulação de processos (P/pSim) que está sendo desenvolvido tem fundamental papel na P/pTool, uma vez que ele atua sobre os atributos dos modelos fornecendo-nos estatísticas e relatórios sobre o comportamento do sistema como um todo. Uma das tarefas mais complexas da simulação é a sua ilustração gráfica. A representação gráfica dos modelos é um aspecto muito esperado pelos usuários, uma vez que a visualização do comportamento gráfico do sistema é importante para auxiliar na perfeita compreensão do problema. Nesta primeira parte do projeto não nos preocupamos muito com os detalhes gráficos do módulo de simulação, mas sim em implementar as classes essenciais para o funcionamento deste. Essas classes representam as várias estruturas fundamentais de simulação. As classes até aqui implementadas estão documentadas no anexo I deste relatório. São elas: classe dos eventos, classe que implementa a agenda de eventos, classe que representa a fila de produtos que cada processo possui, e a principal delas que serve

DEFINIÇÃO DE MÉTRICAS DE PRODUTOS DE SOFTWARE PARA UMA FERREMENTA DE WORKFLOW

DEFINIÇÃO DE MÉTRICAS DE PRODUTOS DE SOFTWARE PARA UMA FERREMENTA DE WORKFLOW DEFINIÇÃO DE MÉTRICAS DE PRODUTOS DE SOFTWARE PARA UMA FERREMENTA DE WORKFLOW RESUMO Para melhorar ou tornar os processos mais eficazes, precisamos de métodos mais efetivos para a modelagem dos mesmos.

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Pós Graduação Engenharia de Software

Pós Graduação Engenharia de Software Pós Graduação Engenharia de Software Ana Candida Natali COPPE/UFRJ Programa de Engenharia de Sistemas e Computação FAPEC / FAT Estrutura do Módulo Parte 1 QUALIDADE DE SOFTWARE PROCESSO Introdução: desenvolvimento

Leia mais

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

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, hualin@cos.ufrj.br, COPPE/UFRJ. Leonardo Gresta Paulino Murta, leomurta@ic.uff.br, IC/UFF. Vanessa Braganholo,

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Workflow: Adicionando Coordenação das Atividades. Fábio Bezerra fbezerra@ic.unicamp.br

Workflow: Adicionando Coordenação das Atividades. Fábio Bezerra fbezerra@ic.unicamp.br Workflow: Adicionando Coordenação das Atividades Fábio Bezerra fbezerra@ic.unicamp.br Agenda Introdução Workflow Sistema Gerenciador de Workflow WfMC Modelo e Instância Workflows ad hoc Referências O que

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE RESUMO Fazer um bom levantamento e especificação de requisitos é algo primordial para quem trabalha com desenvolvimento de sistemas. Esse levantamento

Leia mais

Feature-Driven Development

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

Leia mais

O Valor da TI. Introduzindo os conceitos do Val IT para mensuração do valor de Tecnologia da Informação. Conhecimento em Tecnologia da Informação

O Valor da TI. Introduzindo os conceitos do Val IT para mensuração do valor de Tecnologia da Informação. Conhecimento em Tecnologia da Informação Conhecimento em Tecnologia da Informação Conhecimento em Tecnologia da Informação O Valor da TI Introduzindo os conceitos do Val IT para mensuração do valor de Tecnologia da Informação 2010 Bridge Consulting

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI)

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI) ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI) APARECIDA DE GOIÂNIA 2014 LISTA DE TABELAS Tabela 1 Áreas de processo por

Leia mais

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 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

Leia mais

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO Capítulo 12 REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO 12.1 2003 by Prentice Hall OBJETIVOS De que forma o desenvolvimento de um novo sistema poderia mudar a maneira de uma organização trabalhar?

Leia mais

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software. Processos de Software Objetivos Apresentar os modelos de processo de software Conjunto coerente de atividades para especificar, projetar, implementar e testar s de software Descrever os diferentes modelos

Leia mais

Apostila de Gerenciamento e Administração de Redes

Apostila de Gerenciamento e Administração de Redes Apostila de Gerenciamento e Administração de Redes 1. Necessidades de Gerenciamento Por menor e mais simples que seja uma rede de computadores, precisa ser gerenciada, a fim de garantir, aos seus usuários,

Leia mais

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS Elicitação Ciclo de Vida Clássico ou Convencional O Modelo Cascata Análise Ana Paula Terra Bacelo Blois Implementação Material Adaptado do Prof. Marcelo Yamaguti

Leia mais

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS

PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS PROPOSTA DE SOFTWARE DE INSTALAÇÃO PARA UM AMBIENTE INTEGRADO DE GERÊNCIA DE PROJETOS E DE PROCESSOS DE NEGÓCIOS Élysson Mendes Rezende Bacharelando em Sistemas de Informação Bolsista de Iniciação Científica

Leia mais

José Benedito Lopes Junior ¹, Marcello Erick Bonfim 2

José Benedito Lopes Junior ¹, Marcello Erick Bonfim 2 ISBN 978-85-61091-05-7 Encontro Internacional de Produção Científica Cesumar 27 a 30 de outubro de 2009 Definição de uma tecnologia de implementação e do repositório de dados para a criação da ferramenta

Leia mais

FDQ-TOOL UMA FERRAMENTA PARA A ANÁLISE DA QUALIDADE DA MÉTRICA DE ESFORÇO DO PDS

FDQ-TOOL UMA FERRAMENTA PARA A ANÁLISE DA QUALIDADE DA MÉTRICA DE ESFORÇO DO PDS 25 a 28 de Outubro de 2011 ISBN 978-85-8084-055-1 FDQ-TOOL UMA FERRAMENTA PARA A ANÁLISE DA QUALIDADE DA MÉTRICA DE ESFORÇO DO PDS Marcos Mitsuo Ashihara 1, Nelson Tenório Jr 2, Rita Cristina Galarraga

Leia mais

DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho.

DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho. - DSI DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho. Preocupação: Problema técnicos Mudança na natureza e conteúdo do trabalho

Leia mais

Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow

Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow Uma Arquitetura de Linha de Produto Baseada em Componentes para Sistemas de Gerenciamento de Workflow Itana M. S. Gimenes 1 itana@din.uem.br Fabrício R. Lazilha 2 fabricio@cesumar.br Edson A. O. Junior

Leia mais

Fábrica de Software 29/04/2015

Fábrica de Software 29/04/2015 Fábrica de Software 29/04/2015 Crise do Software Fábrica de Software Analogias costumam ser usadas para tentar entender melhor algo ou alguma coisa. A idéia é simples: compara-se o conceito que não se

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

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

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Prof. José Honorato F.N. Prof. José Honorato F.N. honoratonunes@gmail.com Requisitos de Software Software é o conjunto dos programas e dos meios não materiais que possibilitam o

Leia mais

Estratégias de Pesquisa

Estratégias de Pesquisa Estratégias de Pesquisa Ricardo de Almeida Falbo Metodologia de Pesquisa Departamento de Informática Universidade Federal do Espírito Santo Agenda Survey Design e Criação Estudo de Caso Pesquisa Ação Experimento

Leia mais

Planejamento da disciplina: Modelagem de processos de negócio

Planejamento da disciplina: Modelagem de processos de negócio UNIVERSIDADE FEDERAL DE MINAS GERAIS / INSTITUTO DE CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Planejamento da disciplina: Modelagem de processos de negócio Professor: Clarindo Isaías Pereira

Leia mais

Automação de Bancada Pneumática

Automação de Bancada Pneumática Instituto Federal Sul-rio-grandense Campus Pelotas - Curso de Engenharia Elétrica Automação de Bancada Pneumática Disciplina: Projeto Integrador III Professor: Renato Allemand Equipe: Vinicius Obadowski,

Leia mais

Medindo a Produtividade do Desenvolvimento de Aplicativos

Medindo a Produtividade do Desenvolvimento de Aplicativos Medindo a Produtividade do Desenvolvimento de Aplicativos Por Allan J. Albrecht Proc. Joint SHARE/GUIDE/IBM Application Development Symposium (October, 1979), 83-92 IBM Corporation, White Plains, New York

Leia mais

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme

Leia mais

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Resumo. A fim de flexibilizar o fluxo de controle e o fluxo de dados em Sistemas Gerenciadores de Workflow (SGWf),

Leia mais

UML - Unified Modeling Language

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

Leia mais

EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS

EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS EXPSEE: UM AMBIENTE EXPERIMENTAL DE ENGENHARIA DE SOFTWARE ORIENTADO A PROCESSOS Edson Alves de Oliveira Junior (1) Igor Fábio Steinmacher (2) eaojunio@bol.com.br ifsteinm@din.uem.br Edna Tomie Takano

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

Engenharia de Software

Engenharia de Software CENTRO UNIVERSITÁRIO NOVE DE JULHO Profº. Edson T. França edson.franca@uninove.br Software Sistemas Conjunto de elementos, entre os quais haja alguma relação Disposição das partes ou dos elementos de um

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

Leia mais

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS RESUMO Este artigo apresenta a especificação de um sistema gerenciador de workflow, o ExPSEE, de acordo com a abordagem de desenvolvimento baseado

Leia mais

Aula 04 - Planejamento Estratégico

Aula 04 - Planejamento Estratégico Aula 04 - Planejamento Estratégico Objetivos da Aula: Os objetivos desta aula visam permitir com que você saiba definir o escopo do projeto. Para tal, serão apresentados elementos que ajudem a elaborar

Leia mais

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O PROJETO DE PESQUISA Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Escolher um tema de pesquisa Por onde começar? Ler para aprender Estrutura do Projeto de Pesquisa A Definição

Leia mais

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE

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

Leia mais

Como conduzir com sucesso um projeto de melhoria da qualidade

Como conduzir com sucesso um projeto de melhoria da qualidade Como conduzir com sucesso um projeto de melhoria da qualidade Maria Luiza Guerra de Toledo Coordenar e conduzir um projeto de melhoria da qualidade, seja ele baseado no Seis Sigma, Lean, ou outra metodologia

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Introdução aos Processos de Software: modelos e ciclo de vida de software Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão reservados

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS PDS - DATASUS Processo de Desenvolvimento de Software do DATASUS Coordenação Geral de Arquitetura e Engenharia Tecnológica Coordenação de Padronização e Qualidade de Software Gerência de Padrões e Software

Leia mais

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo 4 PROCESSOS Os primeiros sistemas operacionais permitiam que apenas um processo fosse executado por vez. Dessa maneira, este processo tinha todo o sistema computacional a sua disposição. Os atuais sistemas

Leia mais

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando

Leia mais

Atividades da Engenharia de Software GERENCIAMENTO DA CONFIGURAÇÃO DE SOFTWARE. Atividades da Engenharia de Software. Processo de Desenvolvimento de

Atividades da Engenharia de Software GERENCIAMENTO DA CONFIGURAÇÃO DE SOFTWARE. Atividades da Engenharia de Software. Processo de Desenvolvimento de SCE186-ENGENHARIA DE SOFTWARE Módulo 1 Atividades da Engenharia de GERENCIAMENTO DA CONFIGURAÇÃO DE SOFTWARE Profª Rosely Sanches rsanches@icmc.usp.br 2003 DEFINIÇÃO CONSTRUÇÃO SOFTWARE PRODUTO MANUTENÇÃO

Leia mais

Capítulo 1 - Introdução 14

Capítulo 1 - Introdução 14 1 Introdução Em seu livro Pressman [22] define processo de software como um arcabouço para as tarefas que são necessárias para construir software de alta qualidade. Assim, é-se levado a inferir que o sucesso

Leia mais

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil Profª Esp.: Maysa de Moura Gonzaga 2º Semestre / 2011 O Processo Unificado dos autores Ivar Jacobson, Grady Booch e James

Leia mais

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0 O que é BABok? O BABok 2.0, Corpo de Conhecimento de Análise de Negócios, é considerado como um Guia Referência de Práticas de Análise de Negócio. Este guia é publicado e mantido pelo IIBA. O guia BABok

Leia mais

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO 1 OBJETIVOS 1. De que forma o desenvolvimento de um novo sistema poderia mudar a maneira de uma organização trabalhar? 2. Como uma empresa pode certificar-se

Leia mais

18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB

18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB 18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB Autor(es) HARLEI MIGUEL DE ARRUDA LEITE Orientador(es) PLÍNIO ROBERTO SOUZA VILELA Apoio Financeiro PIBIC/CNPQ

Leia mais

3 Multi-Agent System for Stock Exchange Simulation

3 Multi-Agent System for Stock Exchange Simulation Multi-Agent System for Stock Exchange Simulation 29 3 Multi-Agent System for Stock Exchange Simulation A participação na competição Agent Reputation Trust (ART) Testbed [10] motivou o estudo do domínio

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Especial Online RESUMO DOS TRABALHOS DE CONCLUSÃO DE CURSO. Sistemas de Informação 2011-2 ISSN 1982-1816. www.unifoa.edu.br/cadernos/especiais.

Especial Online RESUMO DOS TRABALHOS DE CONCLUSÃO DE CURSO. Sistemas de Informação 2011-2 ISSN 1982-1816. www.unifoa.edu.br/cadernos/especiais. Especial Online ISSN 1982-1816 www.unifoa.edu.br/cadernos/especiais.html DOS TRABALHOS DE CONCLUSÃO DE CURSO Sistemas de Informação 2011-2 SISTEMA DE GERENCIAMENTO DE MANUTENÇÃO AUTOMOTIVA Alunos: WERNECK,

Leia mais

2 Engenharia de Software

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

Leia mais

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 QUALIDADE DE SOFTWARE Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 Objetivos Apresentar o processo de gerenciamento de qualidade e as atividades centrais da garantia de

Leia mais

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA

Leia mais

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Engenharia de Software: Introdução Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. UML 3. O Processo Unificado 1. Captura de requisitos 2.

Leia mais

Metodologia de Desenvolvimento de Sistemas

Metodologia de Desenvolvimento de Sistemas Metodologia de Desenvolvimento de Sistemas Aula 1 Ementa Fases do Ciclo de Vida do Desenvolvimento de Software, apresentando como os métodos, ferramentas e procedimentos da engenharia de software, podem

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

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

Leia mais

Engenharia de Software-2003

Engenharia de Software-2003 Engenharia de Software-2003 Mestrado em Ciência da Computação Departamento de Informática - UEM Profa. Dra. Elisa H. M. Huzita eng. de software-2003 Elisa Huzita Produto de Software Conceitos Software

Leia mais

ORIENTAÇÃO PARA A REALIZAÇÃO DE AUDITORIA INTERNA E ANÁLISE CRÍTICA EM LABORATÓRIOS DE CALIBRAÇÃO E DE ENSAIO. Documento de caráter orientativo

ORIENTAÇÃO PARA A REALIZAÇÃO DE AUDITORIA INTERNA E ANÁLISE CRÍTICA EM LABORATÓRIOS DE CALIBRAÇÃO E DE ENSAIO. Documento de caráter orientativo Coordenação Geral de Acreditação ORIENTAÇÃO PARA A REALIZAÇÃO DE AUDITORIA INTERNA E ANÁLISE CRÍTICA EM LABORATÓRIOS DE CALIBRAÇÃO E DE ENSAIO Documento de caráter orientativo DOQ-CGCRE-002 Revisão 03

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software O que é a engenharia de software É um conjunto integrado de métodos e ferramentas utilizadas para especificar, projetar, implementar e manter um sistema. Método É uma prescrição

Leia mais

Ser sincero em sua crença de que todos devem ir para casa todos os dias com segurança e saúde - demonstre que você se importa.

Ser sincero em sua crença de que todos devem ir para casa todos os dias com segurança e saúde - demonstre que você se importa. A Liderança Faz a Diferença Guia de Gerenciamento de Riscos Fatais Introdução 2 A prevenção de doenças e acidentes ocupacionais ocorre em duas esferas de controle distintas, mas concomitantes: uma que

Leia mais

Curso Superior de Tecnologia em Redes de Computadores. Trabalho Interdisciplinar Semestral. 3º semestre - 2012.1

Curso Superior de Tecnologia em Redes de Computadores. Trabalho Interdisciplinar Semestral. 3º semestre - 2012.1 Curso Superior de Tecnologia em Redes de Computadores Trabalho Interdisciplinar Semestral 3º semestre - 2012.1 Trabalho Semestral 3º Semestre Curso Superior de Tecnologia em Redes de Computadores Apresentação

Leia mais

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS Emanuel M. Godoy 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil godoymanel@gmail.com,

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II RELATÓRIO TÉCNICO ADORILSON BEZERRA DE ARAÚJO ANDRÉ GUSTAVO

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO Santa Maria, 27 de Setembro de 2013. Revisão aula anterior Desenvolvimento Ágil de Software Desenvolvimento e entrega

Leia mais

Introdução! 1. Modelos de Domínio! 1. Identificação de classes conceituais! 2. Estratégia para identificar classes conceituais! 2

Introdução! 1. Modelos de Domínio! 1. Identificação de classes conceituais! 2. Estratégia para identificar classes conceituais! 2 Modelo de domínio Introdução! 1 Modelos de Domínio! 1 Identificação de classes conceituais! 2 Estratégia para identificar classes conceituais! 2 Passos para a elaboração do modelo de domínio! 2 Passo 1

Leia mais

Documento de Requisitos

Documento de Requisitos UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO Documento de Requisitos Sistema Gerenciador de Atendimento de Chamados Técnicos Grupo: Luiz Augusto Zelaquett

Leia mais

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico

Leia mais

Introdução ao OpenUP (Open Unified Process)

Introdução ao OpenUP (Open Unified Process) Introdução ao OpenUP (Open Unified Process) Diferentes projetos têm diferentes necessidades de processos. Fatores típicos ditam as necessidades de um processo mais formal ou ágil, como o tamanho da equipe

Leia mais

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 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

Leia mais

Prof. Dr. Ivanir Costa. Unidade III QUALIDADE DE SOFTWARE

Prof. Dr. Ivanir Costa. Unidade III QUALIDADE DE SOFTWARE Prof. Dr. Ivanir Costa Unidade III QUALIDADE DE SOFTWARE Normas de qualidade de software - introdução Encontra-se no site da ABNT (Associação Brasileira de Normas Técnicas) as seguintes definições: Normalização

Leia mais

Sugestão de Roteiro para Elaboração de Monografia de TCC

Sugestão de Roteiro para Elaboração de Monografia de TCC Sugestão de Roteiro para Elaboração de Monografia de TCC Sugerimos, para elaborar a monografia de TCC (Trabalho de Conclusão de Curso), que o aluno leia atentamente essas instruções. Fundamentalmente,

Leia mais

INOVANDO UM PROCESSO DE SERVIÇOS DE TI COM AS BOAS PRÁTICAS DO ITIL E USO DE BPMS

INOVANDO UM PROCESSO DE SERVIÇOS DE TI COM AS BOAS PRÁTICAS DO ITIL E USO DE BPMS INOVANDO UM PROCESSO DE SERVIÇOS DE TI COM AS BOAS PRÁTICAS DO ITIL E USO DE BPMS Cilene Loisa Assmann (UNISC) cilenea@unisc.br Este estudo de caso tem como objetivo trazer a experiência de implantação

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Usando o Arena em Simulação

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

Leia mais

SISTEMAS DE INFORMAÇÕES GERENCIAIS

SISTEMAS DE INFORMAÇÕES GERENCIAIS 1 SISTEMAS DE INFORMAÇÕES GERENCIAIS John F. Eichstaedt, Toni Édio Degenhardt Professora: Eliana V. Jaeger RESUMO: Este artigo mostra o que é um SIG (Sistema de Informação gerencial) em uma aplicação prática

Leia mais

CCE 876 - Engenharia de Software. Introdução à Engenharia de Software

CCE 876 - Engenharia de Software. Introdução à Engenharia de Software CCE 876 - Engenharia de Software Introdução à Engenharia de Software Objetivos Introduzir a Engenharia de Software e explicar sua importância. Introduzir os conceitos principais relacionados à Engenharia

Leia mais

Módulo I - Aula 3 Tipos de Sistemas

Módulo I - Aula 3 Tipos de Sistemas Módulo I - Aula 3 Tipos de Sistemas Agora que você já conheceu algumas características dos Sistemas de Informação, nesta aula você vai aprender um pouco sobre tipos de sistemas. Você conhecerá a integração

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Fabiana Pacheco Lopes 1 1 Universidade Presidente Antônio Carlos (UNIPAC) fabipl_21@yahoo.com.br Resumo.Este

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Atitude Empreendedora: Uma competência estratégica ao profissional de treinamento e desenvolvimento.

Atitude Empreendedora: Uma competência estratégica ao profissional de treinamento e desenvolvimento. Atitude Empreendedora: Uma competência estratégica ao profissional de treinamento e desenvolvimento. Por PAULA FRANCO Diante de um cenário empresarial extremamente acirrado, possuir a competência atitude

Leia mais

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com Engenharia de Software: conceitos e aplicações Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com 1 Objetivos da aula Apresentar os conceitos de Engenharia de Software e explicar a sua importância.

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Apresentar os conceitos de requisitos de usuário e de sistema Descrever requisitos funcionais

Leia mais

Integração dos Modelos de Gestão de TI

Integração dos Modelos de Gestão de TI Integração dos Modelos de Gestão de TI Olá servidores!! (Acredite você será!). Temos agora uma bateria com a integração dos modelos de gestão de TI, vamos rever o que vem sendo pedido? Ajeite-se na cadeira,

Leia mais

Especialização em Engenharia de Software com Ênfase em Software Livre ESL2/2008. Projeto Agenda Saúde Requisitos e Modelagem UML

Especialização em Engenharia de Software com Ênfase em Software Livre ESL2/2008. Projeto Agenda Saúde Requisitos e Modelagem UML Projeto Agenda Saúde Requisitos e Modelagem UML Histórico de Revisão Versão 0.1 Data 01/06/09 Revisor Descrição Versão inicial Sumário 1. Introdução...4 1.1 Visão geral deste documento...4 1.2 Módulos

Leia mais